@pagopa/io-react-native-wallet 3.2.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js +4 -3
- package/lib/commonjs/credential/issuance/common/02-start-user-authorization.js.map +1 -1
- package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +37 -8
- package/lib/commonjs/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
- package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js +46 -38
- package/lib/commonjs/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
- package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -51
- package/lib/commonjs/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
- package/lib/commonjs/credential/issuance/mrtd-pop/index.js +21 -5
- package/lib/commonjs/credential/issuance/mrtd-pop/index.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js +3 -3
- package/lib/commonjs/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.0.0/index.js +1 -1
- package/lib/commonjs/credential/issuance/v1.0.0/index.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.0.0/mappers.js +1 -1
- package/lib/commonjs/credential/issuance/v1.0.0/mappers.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
- package/lib/commonjs/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
- package/lib/commonjs/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js +20 -19
- package/lib/commonjs/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js +4 -6
- package/lib/commonjs/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
- package/lib/commonjs/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/index.js +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/index.js.map +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/mappers.js +1 -1
- package/lib/commonjs/credential/issuance/v1.3.3/mappers.js.map +1 -1
- package/lib/commonjs/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
- package/lib/commonjs/credential/presentation/common/utils/mdoc.js.map +1 -0
- package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -2
- package/lib/commonjs/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
- package/lib/commonjs/credential/status/README.md +3 -2
- package/lib/commonjs/credential/status/v1.3.3/01-status-list.js +27 -5
- package/lib/commonjs/credential/status/v1.3.3/01-status-list.js.map +1 -1
- package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
- package/lib/commonjs/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
- package/lib/commonjs/mdoc/index.js +3 -24
- package/lib/commonjs/mdoc/index.js.map +1 -1
- package/lib/commonjs/sd-jwt/__test__/types.test.js +2 -14
- package/lib/commonjs/sd-jwt/__test__/types.test.js.map +1 -1
- package/lib/commonjs/sd-jwt/__test__/utils.test.js +0 -12
- package/lib/commonjs/sd-jwt/__test__/utils.test.js.map +1 -1
- package/lib/commonjs/sd-jwt/types.js +1 -14
- package/lib/commonjs/sd-jwt/types.js.map +1 -1
- package/lib/commonjs/utils/callbacks.js +20 -1
- package/lib/commonjs/utils/callbacks.js.map +1 -1
- package/lib/commonjs/utils/x509.js +34 -0
- package/lib/commonjs/utils/x509.js.map +1 -0
- package/lib/commonjs/wallet-instance-attestation/api/types.js +0 -2
- package/lib/commonjs/wallet-instance-attestation/api/types.js.map +1 -1
- package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
- package/lib/commonjs/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
- package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js +2 -7
- package/lib/commonjs/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
- package/lib/commonjs/wallet-unit-attestation/api/types.js +0 -11
- package/lib/commonjs/wallet-unit-attestation/api/types.js.map +1 -1
- package/lib/module/credential/issuance/common/02-start-user-authorization.js +4 -3
- package/lib/module/credential/issuance/common/02-start-user-authorization.js.map +1 -1
- package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js +39 -10
- package/lib/module/credential/issuance/common/06-verify-and-parse-credential.sdjwt.js.map +1 -1
- package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js +47 -34
- package/lib/module/credential/issuance/mrtd-pop/02-init-challenge.js.map +1 -1
- package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js +58 -47
- package/lib/module/credential/issuance/mrtd-pop/03-validate-challenge.js.map +1 -1
- package/lib/module/credential/issuance/mrtd-pop/index.js +20 -5
- package/lib/module/credential/issuance/mrtd-pop/index.js.map +1 -1
- package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js +1 -1
- package/lib/module/credential/issuance/v1.0.0/02-start-user-authorization.js.map +1 -1
- package/lib/module/credential/issuance/v1.0.0/index.js +2 -2
- package/lib/module/credential/issuance/v1.0.0/index.js.map +1 -1
- package/lib/module/credential/issuance/v1.0.0/mappers.js +1 -1
- package/lib/module/credential/issuance/v1.0.0/mappers.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js +0 -2
- package/lib/module/credential/issuance/v1.3.3/01-evaluate-issuer-trust.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js +20 -16
- package/lib/module/credential/issuance/v1.3.3/02-start-user-authorization.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js +22 -19
- package/lib/module/credential/issuance/v1.3.3/04-authorize-access.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js +5 -7
- package/lib/module/credential/issuance/v1.3.3/05-obtain-credential.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js +4 -1
- package/lib/module/credential/issuance/v1.3.3/06-verify-and-parse-credential.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/index.js +2 -2
- package/lib/module/credential/issuance/v1.3.3/index.js.map +1 -1
- package/lib/module/credential/issuance/v1.3.3/mappers.js +1 -1
- package/lib/module/credential/issuance/v1.3.3/mappers.js.map +1 -1
- package/lib/module/credential/presentation/{v1.3.3/utils.mdoc.js → common/utils/mdoc.js} +2 -2
- package/lib/module/credential/presentation/common/utils/mdoc.js.map +1 -0
- package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js +2 -3
- package/lib/module/credential/presentation/v1.3.3/06-evaluate-dcql-query.js.map +1 -1
- package/lib/module/credential/status/README.md +3 -2
- package/lib/module/credential/status/v1.3.3/01-status-list.js +27 -5
- package/lib/module/credential/status/v1.3.3/01-status-list.js.map +1 -1
- package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js +17 -6
- package/lib/module/credential/status/v1.3.3/02-verify-and-parse-status-list.js.map +1 -1
- package/lib/module/mdoc/index.js +3 -24
- package/lib/module/mdoc/index.js.map +1 -1
- package/lib/module/sd-jwt/__test__/types.test.js +2 -14
- package/lib/module/sd-jwt/__test__/types.test.js.map +1 -1
- package/lib/module/sd-jwt/__test__/utils.test.js +0 -12
- package/lib/module/sd-jwt/__test__/utils.test.js.map +1 -1
- package/lib/module/sd-jwt/types.js +1 -14
- package/lib/module/sd-jwt/types.js.map +1 -1
- package/lib/module/utils/callbacks.js +19 -1
- package/lib/module/utils/callbacks.js.map +1 -1
- package/lib/module/utils/x509.js +28 -0
- package/lib/module/utils/x509.js.map +1 -0
- package/lib/module/wallet-instance-attestation/api/types.js +0 -2
- package/lib/module/wallet-instance-attestation/api/types.js.map +1 -1
- package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js +1 -14
- package/lib/module/wallet-instance-attestation/v1.3.3/mappers.js.map +1 -1
- package/lib/module/wallet-instance-attestation/v1.3.3/types.js +2 -7
- package/lib/module/wallet-instance-attestation/v1.3.3/types.js.map +1 -1
- package/lib/module/wallet-unit-attestation/api/types.js +0 -11
- package/lib/module/wallet-unit-attestation/api/types.js.map +1 -1
- package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts +4 -0
- package/lib/typescript/credential/issuance/api/06-verify-and-parse-credential.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/common/02-start-user-authorization.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/common/06-verify-and-parse-credential.sdjwt.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts +12 -1
- package/lib/typescript/credential/issuance/mrtd-pop/02-init-challenge.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts +12 -1
- package/lib/typescript/credential/issuance/mrtd-pop/03-validate-challenge.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts +2 -1
- package/lib/typescript/credential/issuance/mrtd-pop/index.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.0.0/mappers.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/01-evaluate-issuer-trust.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/02-start-user-authorization.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/04-authorize-access.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/05-obtain-credential.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/06-verify-and-parse-credential.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/v1.3.3/mappers.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/{v1.3.3/utils.mdoc.d.ts → common/utils/mdoc.d.ts} +2 -2
- package/lib/typescript/credential/presentation/common/utils/mdoc.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/v1.3.3/06-evaluate-dcql-query.d.ts.map +1 -1
- package/lib/typescript/credential/status/api/status-list.d.ts +8 -4
- package/lib/typescript/credential/status/api/status-list.d.ts.map +1 -1
- package/lib/typescript/credential/status/v1.3.3/01-status-list.d.ts.map +1 -1
- package/lib/typescript/credential/status/v1.3.3/02-verify-and-parse-status-list.d.ts.map +1 -1
- package/lib/typescript/mdoc/index.d.ts +1 -1
- package/lib/typescript/mdoc/index.d.ts.map +1 -1
- package/lib/typescript/mdoc/utils.d.ts +0 -24
- package/lib/typescript/mdoc/utils.d.ts.map +1 -1
- package/lib/typescript/sd-jwt/types.d.ts +0 -12
- package/lib/typescript/sd-jwt/types.d.ts.map +1 -1
- package/lib/typescript/utils/callbacks.d.ts +7 -0
- package/lib/typescript/utils/callbacks.d.ts.map +1 -1
- package/lib/typescript/utils/x509.d.ts +10 -0
- package/lib/typescript/utils/x509.d.ts.map +1 -0
- package/lib/typescript/wallet-instance-attestation/api/types.d.ts +0 -2
- package/lib/typescript/wallet-instance-attestation/api/types.d.ts.map +1 -1
- package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts +0 -2
- package/lib/typescript/wallet-instance-attestation/v1.0.0/mappers.d.ts.map +1 -1
- package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts +2 -9
- package/lib/typescript/wallet-instance-attestation/v1.3.3/mappers.d.ts.map +1 -1
- package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts +2 -7
- package/lib/typescript/wallet-instance-attestation/v1.3.3/types.d.ts.map +1 -1
- package/lib/typescript/wallet-unit-attestation/api/types.d.ts +0 -11
- package/lib/typescript/wallet-unit-attestation/api/types.d.ts.map +1 -1
- package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts +0 -22
- package/lib/typescript/wallet-unit-attestation/v1.3.3/mappers.d.ts.map +1 -1
- package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts +0 -11
- package/lib/typescript/wallet-unit-attestation/v1.3.3/types.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/credential/issuance/api/06-verify-and-parse-credential.ts +4 -0
- package/src/credential/issuance/common/02-start-user-authorization.ts +6 -3
- package/src/credential/issuance/common/06-verify-and-parse-credential.sdjwt.ts +42 -9
- package/src/credential/issuance/mrtd-pop/02-init-challenge.ts +69 -45
- package/src/credential/issuance/mrtd-pop/03-validate-challenge.ts +84 -62
- package/src/credential/issuance/mrtd-pop/index.ts +13 -5
- package/src/credential/issuance/v1.0.0/02-start-user-authorization.ts +1 -1
- package/src/credential/issuance/v1.0.0/index.ts +2 -2
- package/src/credential/issuance/v1.0.0/mappers.ts +4 -1
- package/src/credential/issuance/v1.3.3/01-evaluate-issuer-trust.ts +0 -2
- package/src/credential/issuance/v1.3.3/02-start-user-authorization.ts +24 -20
- package/src/credential/issuance/v1.3.3/04-authorize-access.ts +28 -23
- package/src/credential/issuance/v1.3.3/05-obtain-credential.ts +8 -8
- package/src/credential/issuance/v1.3.3/06-verify-and-parse-credential.ts +2 -1
- package/src/credential/issuance/v1.3.3/index.ts +2 -2
- package/src/credential/issuance/v1.3.3/mappers.ts +4 -1
- package/src/credential/presentation/{v1.3.3/utils.mdoc.ts → common/utils/mdoc.ts} +2 -2
- package/src/credential/presentation/v1.3.3/06-evaluate-dcql-query.ts +3 -3
- package/src/credential/status/README.md +3 -2
- package/src/credential/status/api/status-list.ts +10 -7
- package/src/credential/status/v1.3.3/01-status-list.ts +21 -7
- package/src/credential/status/v1.3.3/02-verify-and-parse-status-list.ts +19 -5
- package/src/mdoc/index.ts +5 -41
- package/src/sd-jwt/__test__/types.test.ts +1 -13
- package/src/sd-jwt/__test__/utils.test.ts +0 -12
- package/src/sd-jwt/types.ts +0 -13
- package/src/utils/callbacks.ts +28 -1
- package/src/utils/x509.ts +43 -0
- package/src/wallet-instance-attestation/api/types.ts +0 -2
- package/src/wallet-instance-attestation/v1.3.3/mappers.ts +3 -11
- package/src/wallet-instance-attestation/v1.3.3/types.ts +2 -7
- package/src/wallet-unit-attestation/api/types.ts +0 -11
- package/lib/commonjs/credential/issuance/common/authorization.js +0 -56
- package/lib/commonjs/credential/issuance/common/authorization.js.map +0 -1
- package/lib/commonjs/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
- package/lib/module/credential/issuance/common/authorization.js +0 -48
- package/lib/module/credential/issuance/common/authorization.js.map +0 -1
- package/lib/module/credential/presentation/v1.3.3/utils.mdoc.js.map +0 -1
- package/lib/typescript/credential/issuance/common/authorization.d.ts +0 -21
- package/lib/typescript/credential/issuance/common/authorization.d.ts.map +0 -1
- package/lib/typescript/credential/presentation/v1.3.3/utils.mdoc.d.ts.map +0 -1
- package/src/credential/issuance/common/authorization.ts +0 -89
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAWzB;;;GAGG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,4BAA4B,CACpC,CAAC;AACF,eAAO,MAAM,4BAA4B
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/api/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAWzB;;;GAGG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,4BAA4B,CACpC,CAAC;AACF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQvC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC"}
|
|
@@ -41,17 +41,6 @@ export declare const mapToDecodedWalletUnitAttestation: (input: {
|
|
|
41
41
|
uri: string;
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
|
-
eudi_wallet_info: {
|
|
45
|
-
general_info: {
|
|
46
|
-
wallet_provider_name: string;
|
|
47
|
-
wallet_solution_id: string;
|
|
48
|
-
wallet_solution_version: string;
|
|
49
|
-
};
|
|
50
|
-
key_storage_info: {
|
|
51
|
-
keys_exportable: boolean;
|
|
52
|
-
storage_type: string;
|
|
53
|
-
};
|
|
54
|
-
};
|
|
55
44
|
iss: string;
|
|
56
45
|
iat: number;
|
|
57
46
|
exp: number;
|
|
@@ -89,17 +78,6 @@ export declare const mapToDecodedWalletUnitAttestation: (input: {
|
|
|
89
78
|
uri: string;
|
|
90
79
|
};
|
|
91
80
|
};
|
|
92
|
-
eudi_wallet_info: {
|
|
93
|
-
general_info: {
|
|
94
|
-
wallet_provider_name: string;
|
|
95
|
-
wallet_solution_id: string;
|
|
96
|
-
wallet_solution_version: string;
|
|
97
|
-
};
|
|
98
|
-
key_storage_info: {
|
|
99
|
-
keys_exportable: boolean;
|
|
100
|
-
storage_type: string;
|
|
101
|
-
};
|
|
102
|
-
};
|
|
103
81
|
iss: string;
|
|
104
82
|
iat: number;
|
|
105
83
|
exp: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/v1.3.3/mappers.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iCAAiC
|
|
1
|
+
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/v1.3.3/mappers.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK5C,CAAC"}
|
|
@@ -46,17 +46,6 @@ export declare const WalletUnitAttestationJwt: z.ZodObject<{
|
|
|
46
46
|
uri: z.ZodString;
|
|
47
47
|
}, z.core.$strip>;
|
|
48
48
|
}, z.core.$strip>;
|
|
49
|
-
eudi_wallet_info: z.ZodObject<{
|
|
50
|
-
general_info: z.ZodObject<{
|
|
51
|
-
wallet_provider_name: z.ZodString;
|
|
52
|
-
wallet_solution_id: z.ZodString;
|
|
53
|
-
wallet_solution_version: z.ZodString;
|
|
54
|
-
}, z.core.$strip>;
|
|
55
|
-
key_storage_info: z.ZodObject<{
|
|
56
|
-
keys_exportable: z.ZodBoolean;
|
|
57
|
-
storage_type: z.ZodString;
|
|
58
|
-
}, z.core.$strip>;
|
|
59
|
-
}, z.core.$strip>;
|
|
60
49
|
iss: z.ZodString;
|
|
61
50
|
iat: z.ZodNumber;
|
|
62
51
|
exp: z.ZodNumber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/v1.3.3/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAChF,eAAO,MAAM,wBAAwB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/wallet-unit-attestation/v1.3.3/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAIzB,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAChF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQnC,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,6BAA6B,CACrC,CAAC;AACF,eAAO,MAAM,6BAA6B;;iBAExC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pagopa/io-react-native-wallet",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.3.0",
|
|
4
4
|
"description": "Provide data structures, helpers and API for IO Wallet",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -140,11 +140,11 @@
|
|
|
140
140
|
]
|
|
141
141
|
},
|
|
142
142
|
"dependencies": {
|
|
143
|
-
"@pagopa/io-wallet-oauth2": "1.
|
|
144
|
-
"@pagopa/io-wallet-oid4vci": "1.
|
|
145
|
-
"@pagopa/io-wallet-oid4vp": "1.
|
|
146
|
-
"@pagopa/io-wallet-oid-federation": "1.
|
|
147
|
-
"@pagopa/io-wallet-utils": "1.
|
|
143
|
+
"@pagopa/io-wallet-oauth2": "1.4.0",
|
|
144
|
+
"@pagopa/io-wallet-oid4vci": "1.4.0",
|
|
145
|
+
"@pagopa/io-wallet-oid4vp": "1.4.0",
|
|
146
|
+
"@pagopa/io-wallet-oid-federation": "1.4.0",
|
|
147
|
+
"@pagopa/io-wallet-utils": "1.4.0",
|
|
148
148
|
"@sd-jwt/core": "^0.19.0",
|
|
149
149
|
"@sd-jwt/crypto-nodejs": "^0.19.0",
|
|
150
150
|
"@sd-jwt/jwt-status-list": "^0.19.0",
|
|
@@ -32,6 +32,10 @@ export interface VerifyAndParseCredentialApi {
|
|
|
32
32
|
* Include attributes that are not explicitly mapped in the issuer configuration.
|
|
33
33
|
*/
|
|
34
34
|
includeUndefinedAttributes?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Validate the certificate chain of the credential against the provided `x509CertRoot`.
|
|
37
|
+
*/
|
|
38
|
+
validateCertificateChain?: boolean;
|
|
35
39
|
},
|
|
36
40
|
x509CertRoot?: string
|
|
37
41
|
): Promise<{
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IoWalletError } from "../../../utils/errors";
|
|
1
2
|
import { LogLevel, Logger } from "../../../utils/logging";
|
|
2
3
|
import { AuthorizationDetail } from "../../../utils/par";
|
|
3
4
|
import type { IssuerConfig } from "../api";
|
|
@@ -30,7 +31,7 @@ export const selectCredentialDefinition = (
|
|
|
30
31
|
LogLevel.ERROR,
|
|
31
32
|
`Requested credential ${credentialId} is not supported by the issuer according to its configuration ${JSON.stringify(credential_configurations_supported)}`
|
|
32
33
|
);
|
|
33
|
-
throw new
|
|
34
|
+
throw new IoWalletError(`No credential support the type '${credentialId}'`);
|
|
34
35
|
}
|
|
35
36
|
return result;
|
|
36
37
|
};
|
|
@@ -61,7 +62,7 @@ export const selectResponseMode = (
|
|
|
61
62
|
LogLevel.ERROR,
|
|
62
63
|
`${credentialIds} have incompatible response_mode: ${[...responseModeSet.values()]}`
|
|
63
64
|
);
|
|
64
|
-
throw new
|
|
65
|
+
throw new IoWalletError(
|
|
65
66
|
"Requested credentials have incompatible response_mode and cannot be requested with the same PAR request"
|
|
66
67
|
);
|
|
67
68
|
}
|
|
@@ -79,7 +80,9 @@ export const selectResponseMode = (
|
|
|
79
80
|
LogLevel.ERROR,
|
|
80
81
|
`Requested response mode ${responseMode} is not supported by the issuer according to its configuration ${JSON.stringify(responseModeSupported)}`
|
|
81
82
|
);
|
|
82
|
-
throw new
|
|
83
|
+
throw new IoWalletError(
|
|
84
|
+
`No response mode support for IDs '${credentialIds}'`
|
|
85
|
+
);
|
|
83
86
|
}
|
|
84
87
|
|
|
85
88
|
return responseMode!;
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
|
-
getJwkFromHeader,
|
|
3
2
|
type CryptoContext,
|
|
4
|
-
|
|
3
|
+
verify as verifyJwt,
|
|
5
4
|
} from "@pagopa/io-react-native-jwt";
|
|
6
5
|
import { type SDJwt, SDJwtInstance } from "@sd-jwt/core";
|
|
7
|
-
import { digest
|
|
6
|
+
import { digest } from "@sd-jwt/crypto-nodejs";
|
|
7
|
+
import type { Verifier } from "@sd-jwt/types";
|
|
8
8
|
import { isPathEqual, isPrefixOf } from "../../../utils/parser";
|
|
9
9
|
import { IoWalletError } from "../../../utils/errors";
|
|
10
10
|
import { LogLevel, Logger } from "../../../utils/logging";
|
|
11
11
|
import { isSameThumbprint, type JWK } from "../../../utils/jwk";
|
|
12
12
|
import type { SdJwt4VCBase } from "../../../sd-jwt/types";
|
|
13
13
|
import { fixLegacyCredentialSdJwt } from "../../../utils/credentials";
|
|
14
|
+
import { verifyX509Chain } from "../../../utils/x509";
|
|
15
|
+
import { MissingX509CertsError } from "../../../trust/common/errors";
|
|
14
16
|
import type { IssuanceApi, IssuerConfig, ParsedCredential } from "../api";
|
|
15
17
|
|
|
16
18
|
type CredentialConf =
|
|
@@ -151,6 +153,27 @@ const parseCredentialSdJwt = (
|
|
|
151
153
|
return processLevel(parsedCredentialRaw, []) as ParsedCredential;
|
|
152
154
|
};
|
|
153
155
|
|
|
156
|
+
/**
|
|
157
|
+
* JWT verifier implementing the interface expected by the SD-JWT library.
|
|
158
|
+
* Verification is delegated to `io-react-native-jwt` to leverage its support for multiple algorithms.
|
|
159
|
+
* @returns Boolean indicating whether the verification succeeded or not
|
|
160
|
+
*/
|
|
161
|
+
const sdJwtInstanceVerifier: Verifier<{ issuerKeys: JWK[] }> = async (
|
|
162
|
+
data,
|
|
163
|
+
signature,
|
|
164
|
+
options
|
|
165
|
+
) => {
|
|
166
|
+
if (!options?.issuerKeys) {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
try {
|
|
170
|
+
await verifyJwt(`${data}.${signature}`, options.issuerKeys);
|
|
171
|
+
return true;
|
|
172
|
+
} catch {
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
|
|
154
177
|
/**
|
|
155
178
|
* Given a credential, verify it's in the supported format
|
|
156
179
|
* and the credential is correctly signed
|
|
@@ -171,16 +194,13 @@ async function verifyCredentialSdJwt(
|
|
|
171
194
|
issuerKeys: JWK[],
|
|
172
195
|
holderBindingContext: CryptoContext
|
|
173
196
|
): Promise<SDJwt> {
|
|
174
|
-
const { protectedHeader } = decode(rawCredential);
|
|
175
|
-
const verifierJwk = getJwkFromHeader(protectedHeader, issuerKeys);
|
|
176
|
-
|
|
177
197
|
const sdJwtInstance = new SDJwtInstance({
|
|
178
198
|
hasher: digest,
|
|
179
|
-
verifier:
|
|
199
|
+
verifier: sdJwtInstanceVerifier,
|
|
180
200
|
});
|
|
181
201
|
|
|
182
202
|
const [verifiedCredential, holderBindingKey] = await Promise.all([
|
|
183
|
-
sdJwtInstance.verify(rawCredential),
|
|
203
|
+
sdJwtInstance.verify(rawCredential, { issuerKeys }),
|
|
184
204
|
holderBindingContext.getPublicKey(),
|
|
185
205
|
]);
|
|
186
206
|
|
|
@@ -203,7 +223,9 @@ export const verifyAndParseCredentialSdJwt: IssuanceApi["verifyAndParseCredentia
|
|
|
203
223
|
credentialCryptoContext,
|
|
204
224
|
ignoreMissingAttributes,
|
|
205
225
|
includeUndefinedAttributes,
|
|
206
|
-
|
|
226
|
+
validateCertificateChain,
|
|
227
|
+
},
|
|
228
|
+
x509CertRoot
|
|
207
229
|
) => {
|
|
208
230
|
const decoded = await verifyCredentialSdJwt(
|
|
209
231
|
credential,
|
|
@@ -216,6 +238,17 @@ export const verifyAndParseCredentialSdJwt: IssuanceApi["verifyAndParseCredentia
|
|
|
216
238
|
`Decoded credential: ${JSON.stringify(decoded)}`
|
|
217
239
|
);
|
|
218
240
|
|
|
241
|
+
if (validateCertificateChain) {
|
|
242
|
+
if (!x509CertRoot) {
|
|
243
|
+
throw new IoWalletError("Missing x509CertRoot");
|
|
244
|
+
}
|
|
245
|
+
const x5c = decoded.jwt?.header?.x5c as string[] | undefined;
|
|
246
|
+
if (!x5c || !Array.isArray(x5c) || x5c.length === 0) {
|
|
247
|
+
throw new MissingX509CertsError("Missing x509 certificates");
|
|
248
|
+
}
|
|
249
|
+
await verifyX509Chain(x5c, x509CertRoot);
|
|
250
|
+
}
|
|
251
|
+
|
|
219
252
|
const credentialConfig =
|
|
220
253
|
issuerConf.credential_configurations_supported[credentialConfigurationId];
|
|
221
254
|
|
|
@@ -1,61 +1,85 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import {
|
|
2
|
+
createClientAttestationPopJwt,
|
|
3
|
+
fetchMrtdPopInit,
|
|
4
|
+
} from "@pagopa/io-wallet-oauth2";
|
|
5
|
+
import {
|
|
6
|
+
IoWalletSdkConfig,
|
|
7
|
+
UnexpectedStatusCodeError as SdkUnexpectedStatusCodeError,
|
|
8
|
+
} from "@pagopa/io-wallet-utils";
|
|
5
9
|
import { Logger, LogLevel } from "../../../utils/logging";
|
|
6
|
-
import * as WalletInstanceAttestation from "../../../wallet-instance-attestation/v1.0.0/utils"; // TODO: decouple from version 1.0.0
|
|
7
10
|
import {
|
|
8
11
|
IssuerResponseError,
|
|
9
12
|
IssuerResponseErrorCodes,
|
|
10
13
|
ResponseErrorBuilder,
|
|
11
14
|
} from "../../../utils/errors";
|
|
12
15
|
import type { MRTDPoPApi } from "../api/mrtd-pop";
|
|
13
|
-
import {
|
|
16
|
+
import {
|
|
17
|
+
createSignJwtFromCryptoContext,
|
|
18
|
+
createVerifyJwtFromJwks,
|
|
19
|
+
partialCallbacks,
|
|
20
|
+
} from "../../../utils/callbacks";
|
|
14
21
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
mrtd_auth_session,
|
|
19
|
-
mrtd_pop_jwt_nonce,
|
|
20
|
-
context
|
|
21
|
-
) => {
|
|
22
|
-
const {
|
|
23
|
-
appFetch = fetch,
|
|
24
|
-
walletInstanceAttestation,
|
|
25
|
-
wiaCryptoContext,
|
|
26
|
-
} = context;
|
|
22
|
+
type Config = {
|
|
23
|
+
sdkConfig: IoWalletSdkConfig;
|
|
24
|
+
};
|
|
27
25
|
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
/**
|
|
27
|
+
* Factory function to create `initChallenge` for MRTD PoP flow.
|
|
28
|
+
* The factory is needed to inject version specific SDK configuration.
|
|
29
|
+
* @param config Configuration object containing the IO Wallet SDK configuration
|
|
30
|
+
* @returns `initChallenge` function compliant with the public API
|
|
31
|
+
*/
|
|
32
|
+
export function createInitChallenge(
|
|
33
|
+
config: Config
|
|
34
|
+
): MRTDPoPApi["initChallenge"] {
|
|
35
|
+
return async function initChallenge(
|
|
36
|
+
issuerConf,
|
|
37
|
+
initUrl,
|
|
38
|
+
mrtd_auth_session,
|
|
39
|
+
mrtd_pop_jwt_nonce,
|
|
40
|
+
context
|
|
41
|
+
) {
|
|
42
|
+
const {
|
|
43
|
+
appFetch = fetch,
|
|
44
|
+
walletInstanceAttestation,
|
|
45
|
+
wiaCryptoContext,
|
|
46
|
+
} = context;
|
|
30
47
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
48
|
+
const clientAttestationDPoP = await createClientAttestationPopJwt({
|
|
49
|
+
config: config.sdkConfig,
|
|
50
|
+
callbacks: {
|
|
51
|
+
generateRandom: partialCallbacks.generateRandom,
|
|
52
|
+
signJwt: createSignJwtFromCryptoContext(wiaCryptoContext),
|
|
53
|
+
},
|
|
54
|
+
clientAttestation: walletInstanceAttestation,
|
|
55
|
+
authorizationServer: issuerConf.credential_issuer,
|
|
56
|
+
signer: {
|
|
57
|
+
method: "jwk",
|
|
58
|
+
alg: "ES256",
|
|
59
|
+
publicJwk: await wiaCryptoContext.getPublicKey(),
|
|
60
|
+
},
|
|
61
|
+
});
|
|
39
62
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
63
|
+
const initResult = await fetchMrtdPopInit({
|
|
64
|
+
popInitEndpoint: initUrl,
|
|
65
|
+
mrtdAuthSession: mrtd_auth_session,
|
|
66
|
+
mrtdPopJwtNonce: mrtd_pop_jwt_nonce,
|
|
67
|
+
walletAttestation: walletInstanceAttestation,
|
|
68
|
+
clientAttestationDPoP,
|
|
69
|
+
callbacks: {
|
|
70
|
+
verifyJwt: createVerifyJwtFromJwks(issuerConf.keys),
|
|
71
|
+
fetch: appFetch,
|
|
72
|
+
},
|
|
73
|
+
}).catch(handleInitChallengeError);
|
|
51
74
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
75
|
+
return {
|
|
76
|
+
challenge: initResult.challenge,
|
|
77
|
+
mrtd_pop_nonce: initResult.mrtdPopNonce,
|
|
78
|
+
pop_verify_endpoint: initResult.popVerifyEndpoint,
|
|
79
|
+
mrz: initResult.mrz,
|
|
80
|
+
};
|
|
57
81
|
};
|
|
58
|
-
}
|
|
82
|
+
}
|
|
59
83
|
|
|
60
84
|
const handleInitChallengeError = (e: unknown) => {
|
|
61
85
|
Logger.log(LogLevel.ERROR, `Failed to get MRTD challenge: ${e}`);
|
|
@@ -1,76 +1,98 @@
|
|
|
1
1
|
import { SignJWT } from "@pagopa/io-react-native-jwt";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import {
|
|
3
|
+
createClientAttestationPopJwt,
|
|
4
|
+
fetchMrtdPopVerify,
|
|
5
|
+
} from "@pagopa/io-wallet-oauth2";
|
|
6
|
+
import type { IoWalletSdkConfig } from "@pagopa/io-wallet-utils";
|
|
6
7
|
import { sdkUnexpectedStatusCodeToIssuerError } from "../../../utils/errors";
|
|
7
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
createSignJwtFromCryptoContext,
|
|
10
|
+
partialCallbacks,
|
|
11
|
+
} from "../../../utils/callbacks";
|
|
8
12
|
import type { MRTDPoPApi } from "../api/mrtd-pop";
|
|
9
13
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
14
|
+
type Config = {
|
|
15
|
+
sdkConfig: IoWalletSdkConfig;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Factory function to create `validateChallenge` for MRTD PoP flow.
|
|
20
|
+
* The factory is needed to inject version specific SDK configuration.
|
|
21
|
+
* @param config Configuration object containing the IO Wallet SDK configuration
|
|
22
|
+
* @returns `validateChallenge` function compliant with the public API
|
|
23
|
+
*/
|
|
24
|
+
export function createValidateChallenge(
|
|
25
|
+
config: Config
|
|
26
|
+
): MRTDPoPApi["validateChallenge"] {
|
|
27
|
+
return async function validateChallenge(
|
|
28
|
+
issuerConf,
|
|
29
|
+
verifyUrl,
|
|
30
|
+
mrtd_auth_session,
|
|
31
|
+
mrtd_pop_nonce,
|
|
32
|
+
mrtd,
|
|
33
|
+
ias,
|
|
34
|
+
context
|
|
35
|
+
) {
|
|
36
|
+
const {
|
|
37
|
+
appFetch = fetch,
|
|
38
|
+
walletInstanceAttestation,
|
|
39
|
+
wiaCryptoContext,
|
|
40
|
+
} = context;
|
|
24
41
|
|
|
25
|
-
|
|
26
|
-
const iss = WalletInstanceAttestation.decode(walletInstanceAttestation)
|
|
27
|
-
.payload.cnf.jwk.kid;
|
|
42
|
+
const aud = issuerConf.credential_issuer;
|
|
28
43
|
|
|
29
|
-
|
|
30
|
-
{
|
|
31
|
-
jti: uuidv4(),
|
|
32
|
-
aud,
|
|
33
|
-
iss,
|
|
34
|
-
},
|
|
35
|
-
wiaCryptoContext
|
|
36
|
-
);
|
|
44
|
+
const wiaPublicJwk = await wiaCryptoContext.getPublicKey();
|
|
37
45
|
|
|
38
|
-
|
|
46
|
+
const clientAttestationDPoP = await createClientAttestationPopJwt({
|
|
47
|
+
config: config.sdkConfig,
|
|
48
|
+
callbacks: {
|
|
49
|
+
generateRandom: partialCallbacks.generateRandom,
|
|
50
|
+
signJwt: createSignJwtFromCryptoContext(wiaCryptoContext),
|
|
51
|
+
},
|
|
52
|
+
clientAttestation: walletInstanceAttestation,
|
|
53
|
+
authorizationServer: aud,
|
|
54
|
+
signer: {
|
|
55
|
+
method: "jwk",
|
|
56
|
+
alg: "ES256",
|
|
57
|
+
publicJwk: wiaPublicJwk,
|
|
58
|
+
},
|
|
59
|
+
});
|
|
39
60
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
61
|
+
const mrtdValidationJwt = await new SignJWT(wiaCryptoContext)
|
|
62
|
+
.setProtectedHeader({
|
|
63
|
+
typ: "mrtd-ias+jwt",
|
|
64
|
+
kid: wiaPublicJwk.kid,
|
|
65
|
+
})
|
|
66
|
+
.setPayload({
|
|
67
|
+
iss: wiaPublicJwk.kid,
|
|
68
|
+
aud,
|
|
69
|
+
document_type: "cie",
|
|
70
|
+
mrtd,
|
|
71
|
+
ias,
|
|
72
|
+
})
|
|
73
|
+
.setIssuedAt()
|
|
74
|
+
.setExpirationTime("5m")
|
|
75
|
+
.sign();
|
|
55
76
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
77
|
+
const verifyResult = await fetchMrtdPopVerify({
|
|
78
|
+
popVerifyEndpoint: verifyUrl,
|
|
79
|
+
mrtdAuthSession: mrtd_auth_session,
|
|
80
|
+
mrtdPopNonce: mrtd_pop_nonce,
|
|
81
|
+
clientAttestationDPoP,
|
|
82
|
+
mrtdValidationJwt,
|
|
83
|
+
walletAttestation: walletInstanceAttestation,
|
|
84
|
+
callbacks: {
|
|
85
|
+
fetch: appFetch,
|
|
86
|
+
...partialCallbacks,
|
|
87
|
+
},
|
|
88
|
+
}).catch(sdkUnexpectedStatusCodeToIssuerError);
|
|
68
89
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
90
|
+
return {
|
|
91
|
+
redirect_uri: verifyResult.redirectUri,
|
|
92
|
+
mrtd_val_pop_nonce: verifyResult.mrtdValPopNonce,
|
|
93
|
+
};
|
|
72
94
|
};
|
|
73
|
-
}
|
|
95
|
+
}
|
|
74
96
|
|
|
75
97
|
export const buildChallengeCallbackUrl: MRTDPoPApi["buildChallengeCallbackUrl"] =
|
|
76
98
|
async (redirectUri, valPopNonce, authSession) => {
|
|
@@ -1,14 +1,22 @@
|
|
|
1
|
+
import { sdkConfigV1_0, sdkConfigV1_3 } from "../../../utils/config";
|
|
1
2
|
import type { MRTDPoPApi } from "../api/mrtd-pop";
|
|
2
3
|
import { verifyAndParseChallengeInfo } from "./01-verify-and-parse-challenge-info";
|
|
3
|
-
import {
|
|
4
|
+
import { createInitChallenge } from "./02-init-challenge";
|
|
4
5
|
import {
|
|
5
|
-
|
|
6
|
+
createValidateChallenge,
|
|
6
7
|
buildChallengeCallbackUrl,
|
|
7
8
|
} from "./03-validate-challenge";
|
|
8
9
|
|
|
9
|
-
export const
|
|
10
|
+
export const MRTDPoPv1_0: MRTDPoPApi = {
|
|
10
11
|
verifyAndParseChallengeInfo,
|
|
11
|
-
initChallenge,
|
|
12
|
-
validateChallenge,
|
|
12
|
+
initChallenge: createInitChallenge({ sdkConfig: sdkConfigV1_0 }),
|
|
13
|
+
validateChallenge: createValidateChallenge({ sdkConfig: sdkConfigV1_0 }),
|
|
14
|
+
buildChallengeCallbackUrl,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const MRTDPoPv1_3: MRTDPoPApi = {
|
|
18
|
+
verifyAndParseChallengeInfo,
|
|
19
|
+
initChallenge: createInitChallenge({ sdkConfig: sdkConfigV1_3 }),
|
|
20
|
+
validateChallenge: createValidateChallenge({ sdkConfig: sdkConfigV1_3 }),
|
|
13
21
|
buildChallengeCallbackUrl,
|
|
14
22
|
};
|
|
@@ -6,7 +6,7 @@ import type { IssuanceApi } from "../api";
|
|
|
6
6
|
import {
|
|
7
7
|
selectCredentialDefinition,
|
|
8
8
|
selectResponseMode,
|
|
9
|
-
} from "../common/authorization";
|
|
9
|
+
} from "../common/02-start-user-authorization";
|
|
10
10
|
|
|
11
11
|
export const startUserAuthorization: IssuanceApi["startUserAuthorization"] =
|
|
12
12
|
async (issuerConf, credentialIds, proof, ctx) => {
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
obtainCredentialsBatch,
|
|
15
15
|
} from "./05-obtain-credential";
|
|
16
16
|
import { verifyAndParseCredential } from "./06-verify-and-parse-credential";
|
|
17
|
-
import {
|
|
17
|
+
import { MRTDPoPv1_0 } from "../mrtd-pop";
|
|
18
18
|
|
|
19
19
|
export const Issuance: IssuanceApi = {
|
|
20
20
|
evaluateIssuerTrust,
|
|
@@ -28,5 +28,5 @@ export const Issuance: IssuanceApi = {
|
|
|
28
28
|
obtainCredential,
|
|
29
29
|
obtainCredentialsBatch,
|
|
30
30
|
verifyAndParseCredential,
|
|
31
|
-
MRTDPoP,
|
|
31
|
+
MRTDPoP: MRTDPoPv1_0,
|
|
32
32
|
};
|
|
@@ -17,7 +17,10 @@ export const mapToIssuerConfig = createMapper<
|
|
|
17
17
|
credential_issuer: openid_credential_issuer.credential_issuer,
|
|
18
18
|
credential_configurations_supported:
|
|
19
19
|
openid_credential_issuer.credential_configurations_supported,
|
|
20
|
-
keys:
|
|
20
|
+
keys: [
|
|
21
|
+
...openid_credential_issuer.jwks.keys,
|
|
22
|
+
...oauth_authorization_server.jwks.keys,
|
|
23
|
+
],
|
|
21
24
|
pushed_authorization_request_endpoint:
|
|
22
25
|
oauth_authorization_server.pushed_authorization_request_endpoint,
|
|
23
26
|
token_endpoint: oauth_authorization_server.token_endpoint,
|
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
fetchMetadata,
|
|
3
3
|
type MetadataResponseV1_3,
|
|
4
4
|
} from "@pagopa/io-wallet-oid4vci";
|
|
5
|
-
import { partialCallbacks } from "../../../utils/callbacks";
|
|
6
5
|
import { sdkConfigV1_3 } from "../../../utils/config";
|
|
7
6
|
import type { IssuanceApi } from "../api";
|
|
8
7
|
import { mapToIssuerConfig } from "./mappers";
|
|
@@ -15,7 +14,6 @@ export const evaluateIssuerTrust: IssuanceApi["evaluateIssuerTrust"] = async (
|
|
|
15
14
|
config: sdkConfigV1_3,
|
|
16
15
|
credentialIssuerUrl: issuerUrl,
|
|
17
16
|
callbacks: {
|
|
18
|
-
...partialCallbacks,
|
|
19
17
|
fetch: context.appFetch,
|
|
20
18
|
},
|
|
21
19
|
})) as MetadataResponseV1_3;
|