mirror of
https://github.com/selfxyz/self.git
synced 2026-01-10 07:08:10 -05:00
add common sdk (#537)
* add common sdk * remove sdk backend api * remove registry * regenerate sha256 rsa dsc each time * download ski-pem dynamically on staging, refactor initpassportDataParsing * add state machine for button on prove screen, improve ux on splash screen * fetch ski-pem in production * fix linter issues * fix prove screen button bugs * update podfile.lock and yarn.lock * run linter in circuits repo * bump build * bump version for sentry debugging * bump ios to version 118 --------- Co-authored-by: Justin Hernandez <transphorm@gmail.com>
This commit is contained in:
committed by
GitHub
parent
5163761a52
commit
cc169061bd
@@ -1,25 +1,25 @@
|
||||
import { describe } from 'mocha';
|
||||
import { assert, expect } from 'chai';
|
||||
import path from 'path';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import {
|
||||
attributeToPosition,
|
||||
PASSPORT_ATTESTATION_ID,
|
||||
} from '../../../common/src/constants/constants';
|
||||
import { poseidon1, poseidon2 } from 'poseidon-lite';
|
||||
import { LeanIMT } from '@openpassport/zk-kit-lean-imt';
|
||||
import { generateCircuitInputsVCandDisclose } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import crypto from 'crypto';
|
||||
import { genMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { SMT } from '@openpassport/zk-kit-smt';
|
||||
import { assert, expect } from 'chai';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import crypto from 'crypto';
|
||||
import { describe } from 'mocha';
|
||||
import path from 'path';
|
||||
import { poseidon1, poseidon2 } from 'poseidon-lite';
|
||||
import nameAndDobjson from '../../../common/ofacdata/outputs/nameAndDobSMT.json';
|
||||
import nameAndYobjson from '../../../common/ofacdata/outputs/nameAndYobSMT.json';
|
||||
import passportNojson from '../../../common/ofacdata/outputs/passportNoAndNationalitySMT.json';
|
||||
import {
|
||||
formatAndUnpackReveal,
|
||||
attributeToPosition,
|
||||
PASSPORT_ATTESTATION_ID,
|
||||
} from '../../../common/src/constants/constants';
|
||||
import {
|
||||
formatAndUnpackForbiddenCountriesList,
|
||||
formatAndUnpackReveal,
|
||||
getAttributeFromUnpackedReveal,
|
||||
} from '../../../common/src/utils/circuits/formatOutputs';
|
||||
import { generateCircuitInputsVCandDisclose } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { genAndInitMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { generateCommitment } from '../../../common/src/utils/passports/passport';
|
||||
import { hashEndpointWithScope } from '../../../common/src/utils/scope';
|
||||
|
||||
@@ -28,7 +28,7 @@ describe('Disclose', function () {
|
||||
let inputs: any;
|
||||
let circuit: any;
|
||||
let w: any;
|
||||
const passportData = genMockPassportData(
|
||||
const passportData = genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -247,7 +247,7 @@ describe('Disclose', function () {
|
||||
const testCases = [
|
||||
{
|
||||
desc: 'No details match',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -262,7 +262,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'Only passport number matches',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -277,7 +277,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'Only nationality matches',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -292,7 +292,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'Only passport number and nationality matches',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -307,7 +307,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'Name and DOB matches (so YOB matches too)',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -322,7 +322,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'Only name and YOB match',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -337,7 +337,7 @@ describe('Disclose', function () {
|
||||
},
|
||||
{
|
||||
desc: 'All details match',
|
||||
data: genMockPassportData(
|
||||
data: genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
|
||||
@@ -1,23 +1,22 @@
|
||||
import dotenv from 'dotenv';
|
||||
import { assert, expect } from 'chai';
|
||||
import path from 'path';
|
||||
import { expect } from 'chai';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import { generateCircuitInputsDSC } from '../../../common/src/utils/circuits/generateInputs';
|
||||
|
||||
import { fullSigAlgs, sigAlgs } from './test_cases';
|
||||
import { genMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { SignatureAlgorithm } from '../../../common/src/utils/types';
|
||||
import { getCircuitNameFromPassportData } from '../../../common/src/utils/circuits/circuitsName';
|
||||
import { getLeafDscTreeFromParsedDsc } from '../../../common/src/utils/trees';
|
||||
import { parseCertificateSimple } from '../../../common/src/utils/certificate_parsing/parseCertificateSimple';
|
||||
import { parseDscCertificateData } from '../../../common/src/utils/passports/passport_parsing/parseDscCertificateData';
|
||||
import dotenv from 'dotenv';
|
||||
import path from 'path';
|
||||
import serialized_csca_tree from '../../../common/pubkeys/serialized_csca_tree.json';
|
||||
import { parseCertificateSimple } from '../../../common/src/utils/certificate_parsing/parseCertificateSimple';
|
||||
import { getCircuitNameFromPassportData } from '../../../common/src/utils/circuits/circuitsName';
|
||||
import { generateCircuitInputsDSC } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { genAndInitMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { parseDscCertificateData } from '../../../common/src/utils/passports/passport_parsing/parseDscCertificateData';
|
||||
import { getLeafDscTreeFromParsedDsc } from '../../../common/src/utils/trees';
|
||||
import { SignatureAlgorithm } from '../../../common/src/utils/types';
|
||||
import { fullSigAlgs, sigAlgs } from './test_cases';
|
||||
dotenv.config();
|
||||
|
||||
const testSuite = process.env.FULL_TEST_SUITE === 'true' ? fullSigAlgs : sigAlgs;
|
||||
|
||||
testSuite.forEach(({ sigAlg, hashFunction, domainParameter, keyLength }) => {
|
||||
const passportData = genMockPassportData(
|
||||
const passportData = genAndInitMockPassportData(
|
||||
hashFunction,
|
||||
hashFunction,
|
||||
`${sigAlg}_${hashFunction}_${domainParameter}_${keyLength}` as SignatureAlgorithm,
|
||||
@@ -33,7 +32,7 @@ testSuite.forEach(({ sigAlg, hashFunction, domainParameter, keyLength }) => {
|
||||
this.timeout(0); // Disable timeout
|
||||
let circuit;
|
||||
|
||||
const inputs = generateCircuitInputsDSC(passportData.dsc, serialized_csca_tree);
|
||||
const inputs = generateCircuitInputsDSC(passportData, serialized_csca_tree);
|
||||
|
||||
before(async () => {
|
||||
circuit = await wasm_tester(
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
import { expect } from 'chai';
|
||||
import path from 'path';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import { generateCircuitInputsOfac } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { SMT } from '@openpassport/zk-kit-smt';
|
||||
import { expect } from 'chai';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import path from 'path';
|
||||
import { poseidon2 } from 'poseidon-lite';
|
||||
import passportNoAndNationalityjson from '../../../common/ofacdata/outputs/passportNoAndNationalitySMT.json';
|
||||
import nameAndDobjson from '../../../common/ofacdata/outputs/nameAndDobSMT.json';
|
||||
import nameAndYobjson from '../../../common/ofacdata/outputs/nameAndYobSMT.json';
|
||||
import { genMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import passportNoAndNationalityjson from '../../../common/ofacdata/outputs/passportNoAndNationalitySMT.json';
|
||||
import { generateCircuitInputsOfac } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { genAndInitMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
|
||||
let circuit: any;
|
||||
|
||||
// Mock passport not added in ofac list
|
||||
const passportData = genMockPassportData(
|
||||
const passportData = genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
@@ -21,7 +21,7 @@ const passportData = genMockPassportData(
|
||||
'300101'
|
||||
);
|
||||
// Mock passport in ofac list
|
||||
const passportDataInOfac = genMockPassportData(
|
||||
const passportDataInOfac = genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
import { expect } from 'chai';
|
||||
import { X509Certificate } from 'crypto';
|
||||
import path from 'path';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import { genMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { formatInput } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { formatMrz } from '../../../common/src/utils/passports/format';
|
||||
import path from 'path';
|
||||
import { formatCountriesList } from '../../../common/src/utils/circuits/formatInputs';
|
||||
import { formatAndUnpackForbiddenCountriesList } from '../../../common/src/utils/circuits/formatOutputs';
|
||||
import { formatInput } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { formatMrz } from '../../../common/src/utils/passports/format';
|
||||
import { genAndInitMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
|
||||
describe('ProveCountryIsNotInList', function () {
|
||||
this.timeout(0);
|
||||
@@ -27,7 +26,7 @@ describe('ProveCountryIsNotInList', function () {
|
||||
});
|
||||
|
||||
describe('ProveCountryIsNotInList', async () => {
|
||||
const passportData = genMockPassportData(
|
||||
const passportData = genAndInitMockPassportData(
|
||||
'sha256',
|
||||
'sha256',
|
||||
'rsa_sha256_65537_2048',
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
import { expect } from 'chai';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import dotenv from 'dotenv';
|
||||
import { describe } from 'mocha';
|
||||
import { expect } from 'chai';
|
||||
import path from 'path';
|
||||
import { wasm as wasm_tester } from 'circom_tester';
|
||||
import { generateCircuitInputsRegister } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { genMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import { SignatureAlgorithm } from '../../../common/src/utils/types';
|
||||
import { poseidon6 } from 'poseidon-lite';
|
||||
import serialized_dsc_tree from '../../../common/pubkeys/serialized_dsc_tree.json';
|
||||
import { PASSPORT_ATTESTATION_ID } from '../../../common/src/constants/constants';
|
||||
import { parseCertificateSimple } from '../../../common/src/utils/certificate_parsing/parseCertificateSimple';
|
||||
import { getCircuitNameFromPassportData } from '../../../common/src/utils/circuits/circuitsName';
|
||||
import { sigAlgs, fullSigAlgs } from './test_cases';
|
||||
import { generateCircuitInputsRegister } from '../../../common/src/utils/circuits/generateInputs';
|
||||
import { genAndInitMockPassportData } from '../../../common/src/utils/passports/genMockPassportData';
|
||||
import {
|
||||
generateCommitment,
|
||||
generateNullifier,
|
||||
} from '../../../common/src/utils/passports/passport';
|
||||
import { poseidon6 } from 'poseidon-lite';
|
||||
import { PASSPORT_ATTESTATION_ID } from '../../../common/src/constants/constants';
|
||||
import { parseCertificateSimple } from '../../../common/src/utils/certificate_parsing/parseCertificateSimple';
|
||||
import serialized_dsc_tree from '../../../common/pubkeys/serialized_dsc_tree.json';
|
||||
import { SignatureAlgorithm } from '../../../common/src/utils/types';
|
||||
import { fullSigAlgs, sigAlgs } from './test_cases';
|
||||
dotenv.config();
|
||||
|
||||
const testSuite = process.env.FULL_TEST_SUITE === 'true' ? fullSigAlgs : sigAlgs;
|
||||
@@ -36,7 +36,7 @@ testSuite.forEach(
|
||||
this.timeout(0);
|
||||
let circuit: any;
|
||||
|
||||
const passportData = genMockPassportData(
|
||||
const passportData = genAndInitMockPassportData(
|
||||
dgHashAlgo,
|
||||
eContentHashAlgo,
|
||||
`${sigAlg}_${hashFunction}_${domainParameter}_${keyLength}${saltLength ? `_${saltLength}` : ''}` as SignatureAlgorithm,
|
||||
|
||||
Reference in New Issue
Block a user