@pagopa/io-react-native-wallet 1.1.1 → 1.2.2
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/04-complete-user-authorization.js +3 -1
- package/lib/commonjs/credential/issuance/04-complete-user-authorization.js.map +1 -1
- package/lib/commonjs/credential/presentation/01-start-flow.js +7 -5
- package/lib/commonjs/credential/presentation/01-start-flow.js.map +1 -1
- package/lib/commonjs/credential/presentation/03-get-request-object.js +47 -0
- package/lib/commonjs/credential/presentation/03-get-request-object.js.map +1 -0
- package/lib/commonjs/credential/presentation/04-retrieve-rp-jwks.js +82 -0
- package/lib/commonjs/credential/presentation/04-retrieve-rp-jwks.js.map +1 -0
- package/lib/commonjs/credential/presentation/05-verify-request-object.js +35 -0
- package/lib/commonjs/credential/presentation/05-verify-request-object.js.map +1 -0
- package/lib/commonjs/credential/presentation/06-fetch-presentation-definition.js +63 -0
- package/lib/commonjs/credential/presentation/06-fetch-presentation-definition.js.map +1 -0
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js +169 -0
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js.map +1 -0
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js +202 -0
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js.map +1 -0
- package/lib/commonjs/credential/presentation/README.md +43 -4
- package/lib/commonjs/credential/presentation/errors.js +52 -1
- package/lib/commonjs/credential/presentation/errors.js.map +1 -1
- package/lib/commonjs/credential/presentation/index.js +27 -6
- package/lib/commonjs/credential/presentation/index.js.map +1 -1
- package/lib/commonjs/credential/presentation/types.js +69 -4
- package/lib/commonjs/credential/presentation/types.js.map +1 -1
- package/lib/commonjs/entity/trust/types.js +4 -1
- package/lib/commonjs/entity/trust/types.js.map +1 -1
- package/lib/module/credential/issuance/04-complete-user-authorization.js +3 -1
- package/lib/module/credential/issuance/04-complete-user-authorization.js.map +1 -1
- package/lib/module/credential/presentation/01-start-flow.js +8 -6
- package/lib/module/credential/presentation/01-start-flow.js.map +1 -1
- package/lib/module/credential/presentation/03-get-request-object.js +39 -0
- package/lib/module/credential/presentation/03-get-request-object.js.map +1 -0
- package/lib/module/credential/presentation/04-retrieve-rp-jwks.js +75 -0
- package/lib/module/credential/presentation/04-retrieve-rp-jwks.js.map +1 -0
- package/lib/module/credential/presentation/05-verify-request-object.js +28 -0
- package/lib/module/credential/presentation/05-verify-request-object.js.map +1 -0
- package/lib/module/credential/presentation/06-fetch-presentation-definition.js +56 -0
- package/lib/module/credential/presentation/06-fetch-presentation-definition.js.map +1 -0
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js +161 -0
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js.map +1 -0
- package/lib/module/credential/presentation/08-send-authorization-response.js +188 -0
- package/lib/module/credential/presentation/08-send-authorization-response.js.map +1 -0
- package/lib/module/credential/presentation/README.md +43 -4
- package/lib/module/credential/presentation/errors.js +48 -0
- package/lib/module/credential/presentation/errors.js.map +1 -1
- package/lib/module/credential/presentation/index.js +7 -4
- package/lib/module/credential/presentation/index.js.map +1 -1
- package/lib/module/credential/presentation/types.js +67 -3
- package/lib/module/credential/presentation/types.js.map +1 -1
- package/lib/module/entity/trust/types.js +4 -1
- package/lib/module/entity/trust/types.js.map +1 -1
- package/lib/typescript/credential/issuance/04-complete-user-authorization.d.ts +1 -1
- package/lib/typescript/credential/issuance/04-complete-user-authorization.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/01-start-flow.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/{04-get-request-object.d.ts → 03-get-request-object.d.ts} +3 -5
- package/lib/typescript/credential/presentation/03-get-request-object.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/{03-retrieve-jwks.d.ts → 04-retrieve-rp-jwks.d.ts} +5 -4
- package/lib/typescript/credential/presentation/04-retrieve-rp-jwks.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/05-verify-request-object.d.ts +8 -0
- package/lib/typescript/credential/presentation/05-verify-request-object.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/06-fetch-presentation-definition.d.ts +26 -0
- package/lib/typescript/credential/presentation/06-fetch-presentation-definition.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/07-evaluate-input-descriptor.d.ts +27 -0
- package/lib/typescript/credential/presentation/07-evaluate-input-descriptor.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/08-send-authorization-response.d.ts +99 -0
- package/lib/typescript/credential/presentation/08-send-authorization-response.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/errors.d.ts +33 -0
- package/lib/typescript/credential/presentation/errors.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/index.d.ts +8 -5
- package/lib/typescript/credential/presentation/index.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/types.d.ts +612 -9
- package/lib/typescript/credential/presentation/types.d.ts.map +1 -1
- package/lib/typescript/entity/trust/index.d.ts +152 -0
- package/lib/typescript/entity/trust/index.d.ts.map +1 -1
- package/lib/typescript/entity/trust/types.d.ts +2088 -0
- package/lib/typescript/entity/trust/types.d.ts.map +1 -1
- package/package.json +5 -1
- package/src/credential/issuance/04-complete-user-authorization.ts +2 -2
- package/src/credential/presentation/01-start-flow.ts +10 -6
- package/src/credential/presentation/{04-get-request-object.ts → 03-get-request-object.ts} +6 -51
- package/src/credential/presentation/{03-retrieve-jwks.ts → 04-retrieve-rp-jwks.ts} +39 -24
- package/src/credential/presentation/05-verify-request-object.ts +35 -0
- package/src/credential/presentation/06-fetch-presentation-definition.ts +78 -0
- package/src/credential/presentation/07-evaluate-input-descriptor.ts +204 -0
- package/src/credential/presentation/08-send-authorization-response.ts +251 -0
- package/src/credential/presentation/README.md +43 -4
- package/src/credential/presentation/errors.ts +48 -0
- package/src/credential/presentation/index.ts +27 -9
- package/src/credential/presentation/types.ts +59 -3
- package/src/entity/trust/types.ts +3 -0
- package/lib/commonjs/credential/presentation/03-retrieve-jwks.js +0 -68
- package/lib/commonjs/credential/presentation/03-retrieve-jwks.js.map +0 -1
- package/lib/commonjs/credential/presentation/04-get-request-object.js +0 -82
- package/lib/commonjs/credential/presentation/04-get-request-object.js.map +0 -1
- package/lib/commonjs/credential/presentation/05-send-authorization-response.js +0 -139
- package/lib/commonjs/credential/presentation/05-send-authorization-response.js.map +0 -1
- package/lib/module/credential/presentation/03-retrieve-jwks.js +0 -61
- package/lib/module/credential/presentation/03-retrieve-jwks.js.map +0 -1
- package/lib/module/credential/presentation/04-get-request-object.js +0 -74
- package/lib/module/credential/presentation/04-get-request-object.js.map +0 -1
- package/lib/module/credential/presentation/05-send-authorization-response.js +0 -128
- package/lib/module/credential/presentation/05-send-authorization-response.js.map +0 -1
- package/lib/typescript/credential/presentation/03-retrieve-jwks.d.ts.map +0 -1
- package/lib/typescript/credential/presentation/04-get-request-object.d.ts.map +0 -1
- package/lib/typescript/credential/presentation/05-send-authorization-response.d.ts +0 -34
- package/lib/typescript/credential/presentation/05-send-authorization-response.d.ts.map +0 -1
- package/src/credential/presentation/05-send-authorization-response.ts +0 -168
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { EncryptJwe, SignJWT, sha256ToBase64 } from "@pagopa/io-react-native-jwt";
|
|
2
|
+
import uuid from "react-native-uuid";
|
|
3
|
+
import { NoSuitableKeysFoundInEntityConfiguration } from "./errors";
|
|
4
|
+
import { hasStatusOrThrow } from "../../utils/misc";
|
|
5
|
+
import { disclose } from "../../sd-jwt";
|
|
6
|
+
import * as z from "zod";
|
|
7
|
+
export const AuthorizationResponse = z.object({
|
|
8
|
+
status: z.string().optional(),
|
|
9
|
+
response_code: z.string() /**
|
|
10
|
+
FIXME: [SIW-627] we expect this value from every RP implementation
|
|
11
|
+
Actually some RP does not return the value
|
|
12
|
+
We make it optional to not break the flow.
|
|
13
|
+
*/.optional(),
|
|
14
|
+
redirect_uri: z.string().optional()
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Selects an RSA public key (with `use = enc` and `kty = RSA`) from the set of JWK keys
|
|
19
|
+
* offered by the Relying Party (RP) for encryption.
|
|
20
|
+
*
|
|
21
|
+
* @param rpJwkKeys - The array of JWKs retrieved from the RP entity configuration.
|
|
22
|
+
* @returns The first suitable RSA public key found in the list.
|
|
23
|
+
* @throws {NoSuitableKeysFoundInEntityConfiguration} If no suitable RSA encryption key is found.
|
|
24
|
+
*/
|
|
25
|
+
export const chooseRSAPublicKeyToEncrypt = rpJwkKeys => {
|
|
26
|
+
const [rsaEncKey] = rpJwkKeys.filter(jwk => jwk.use === "enc" && jwk.kty === "RSA");
|
|
27
|
+
if (rsaEncKey) {
|
|
28
|
+
return rsaEncKey;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// No suitable key found
|
|
32
|
+
throw new NoSuitableKeysFoundInEntityConfiguration("No suitable RSA public key found for encryption.");
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Prepares a Verified Presentation (VP) token to be sent as part of an
|
|
37
|
+
* authorization response in an OpenID 4 Verifiable Presentations flow.
|
|
38
|
+
*
|
|
39
|
+
* @param requestObject - The request object containing the nonce, response URI, and other necessary info.
|
|
40
|
+
* @param presentationTuple - A tuple containing a verifiable credential, the claims to disclose,
|
|
41
|
+
* and a cryptographic context for signing.
|
|
42
|
+
* @returns An object containing the signed VP token (`vp_token`) and a `presentation_submission` object.
|
|
43
|
+
* @param presentationDefinition - Definition outlining presentation requirements.
|
|
44
|
+
* @param presentationTuple - Tuple containing:
|
|
45
|
+
* - A verifiable credential.
|
|
46
|
+
* - Claims that should be disclosed.
|
|
47
|
+
* - Cryptographic context for signing.
|
|
48
|
+
* @returns An object with:
|
|
49
|
+
* - `vp_token`: The signed VP token.
|
|
50
|
+
* - `presentation_submission`: Object mapping disclosed credentials to the request.
|
|
51
|
+
*
|
|
52
|
+
* @remarks
|
|
53
|
+
* 1. The `disclose()` function is used to produce a token with only the requested claims.
|
|
54
|
+
* 2. A new JWT is then signed, including the VP, `jti`, `iss`, `nonce`, audience, and expiration.
|
|
55
|
+
* 3. The `presentation_submission` object follows the OpenID 4 VP specification for describing
|
|
56
|
+
* how the disclosed credentials map to the request.
|
|
57
|
+
*
|
|
58
|
+
* @todo [SIW-353] Support multiple verifiable credentials in a single request.
|
|
59
|
+
*/
|
|
60
|
+
export const prepareVpToken = async (requestObject, presentationDefinition, _ref) => {
|
|
61
|
+
var _presentationDefiniti;
|
|
62
|
+
let [verifiableCredential, requestedClaims, cryptoContext] = _ref;
|
|
63
|
+
// Produce a VP token with only requested claims from the verifiable credential
|
|
64
|
+
const {
|
|
65
|
+
token: vp
|
|
66
|
+
} = await disclose(verifiableCredential, requestedClaims);
|
|
67
|
+
|
|
68
|
+
// <Issuer-signed JWT>~<Disclosure 1>~<Disclosure N>~
|
|
69
|
+
const sd_hash = await sha256ToBase64(`${vp}~`);
|
|
70
|
+
const kbJwt = await new SignJWT(cryptoContext).setProtectedHeader({
|
|
71
|
+
typ: "kb+jwt",
|
|
72
|
+
alg: "ES256"
|
|
73
|
+
}).setPayload({
|
|
74
|
+
sd_hash,
|
|
75
|
+
nonce: requestObject.nonce
|
|
76
|
+
}).setAudience(requestObject.client_id).setIssuedAt().sign();
|
|
77
|
+
|
|
78
|
+
// <Issuer-signed JWT>~<Disclosure 1>~...~<Disclosure N>~<KB-JWT>
|
|
79
|
+
const vp_token = [vp, kbJwt].join("~");
|
|
80
|
+
|
|
81
|
+
// Determine the descriptor ID to use for mapping. Fallback to first input descriptor ID if not specified
|
|
82
|
+
// We support only one credential for now, so we get first input_descriptor and create just one descriptor_map
|
|
83
|
+
const presentation_submission = {
|
|
84
|
+
id: uuid.v4(),
|
|
85
|
+
definition_id: presentationDefinition.id,
|
|
86
|
+
descriptor_map: [{
|
|
87
|
+
id: presentationDefinition === null || presentationDefinition === void 0 || (_presentationDefiniti = presentationDefinition.input_descriptors[0]) === null || _presentationDefiniti === void 0 ? void 0 : _presentationDefiniti.id,
|
|
88
|
+
path: `$`,
|
|
89
|
+
format: "vc+sd-jwt"
|
|
90
|
+
}]
|
|
91
|
+
};
|
|
92
|
+
return {
|
|
93
|
+
vp_token,
|
|
94
|
+
presentation_submission
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Builds a URL-encoded form body for a direct POST response without encryption.
|
|
100
|
+
*
|
|
101
|
+
* @param requestObject - Contains state, nonce, and other relevant info.
|
|
102
|
+
* @param vpToken - The signed VP token to include.
|
|
103
|
+
* @param presentationSubmission - Object mapping credential disclosures.
|
|
104
|
+
* @returns A URL-encoded string suitable for an `application/x-www-form-urlencoded` POST body.
|
|
105
|
+
*/
|
|
106
|
+
export const buildDirectPostBody = async (requestObject, vpToken, presentationSubmission) => {
|
|
107
|
+
const formUrlEncodedBody = new URLSearchParams({
|
|
108
|
+
state: requestObject.state,
|
|
109
|
+
presentation_submission: JSON.stringify(presentationSubmission),
|
|
110
|
+
vp_token: vpToken
|
|
111
|
+
});
|
|
112
|
+
return formUrlEncodedBody.toString();
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Builds a URL-encoded form body for a direct POST response using JWT encryption.
|
|
117
|
+
*
|
|
118
|
+
* @param jwkKeys - Array of JWKs from the Relying Party for encryption.
|
|
119
|
+
* @param requestObject - Contains state, nonce, and other relevant info.
|
|
120
|
+
* @param vpToken - The signed VP token to encrypt.
|
|
121
|
+
* @param presentationSubmission - Object mapping credential disclosures.
|
|
122
|
+
* @returns A URL-encoded string for an `application/x-www-form-urlencoded` POST body,
|
|
123
|
+
* where `response` contains the encrypted JWE.
|
|
124
|
+
*/
|
|
125
|
+
export const buildDirectPostJwtBody = async (jwkKeys, requestObject, vpToken, presentationSubmission) => {
|
|
126
|
+
// Prepare the authorization response payload to be encrypted
|
|
127
|
+
const authzResponsePayload = JSON.stringify({
|
|
128
|
+
state: requestObject.state,
|
|
129
|
+
presentation_submission: presentationSubmission,
|
|
130
|
+
vp_token: vpToken
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
// Choose a suitable RSA public key for encryption
|
|
134
|
+
const rsaPublicJwk = chooseRSAPublicKeyToEncrypt(jwkKeys);
|
|
135
|
+
|
|
136
|
+
// Encrypt the authorization payload
|
|
137
|
+
const encryptedResponse = await new EncryptJwe(authzResponsePayload, {
|
|
138
|
+
alg: "RSA-OAEP-256",
|
|
139
|
+
enc: "A256CBC-HS512",
|
|
140
|
+
kid: rsaPublicJwk.kid
|
|
141
|
+
}).encrypt(rsaPublicJwk);
|
|
142
|
+
|
|
143
|
+
// Build the x-www-form-urlencoded form body
|
|
144
|
+
const formBody = new URLSearchParams({
|
|
145
|
+
response: encryptedResponse
|
|
146
|
+
});
|
|
147
|
+
return formBody.toString();
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Type definition for the function that sends the authorization response
|
|
152
|
+
* to the Relying Party, completing the presentation flow.
|
|
153
|
+
*/
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Sends the authorization response to the Relying Party (RP) using the specified `response_mode`.
|
|
157
|
+
* This function completes the presentation flow in an OpenID 4 Verifiable Presentations scenario.
|
|
158
|
+
*
|
|
159
|
+
* @param requestObject - The request details, including presentation requirements.
|
|
160
|
+
* @param presentationDefinition - The definition of the expected presentation.
|
|
161
|
+
* @param jwkKeys - Array of JWKs from the Relying Party for optional encryption.
|
|
162
|
+
* @param presentation - Tuple with verifiable credential, claims, and crypto context.
|
|
163
|
+
* @param context - Contains optional custom fetch implementation.
|
|
164
|
+
* @returns Parsed and validated authorization response from the Relying Party.
|
|
165
|
+
*/
|
|
166
|
+
export const sendAuthorizationResponse = async (requestObject, presentationDefinition, jwkKeys, presentation, _ref2) => {
|
|
167
|
+
let {
|
|
168
|
+
appFetch = fetch
|
|
169
|
+
} = _ref2;
|
|
170
|
+
// 1. Create the VP token and associated submission mapping
|
|
171
|
+
const {
|
|
172
|
+
vp_token,
|
|
173
|
+
presentation_submission
|
|
174
|
+
} = await prepareVpToken(requestObject, presentationDefinition, presentation);
|
|
175
|
+
|
|
176
|
+
// 2. Choose the appropriate request body builder based on response mode
|
|
177
|
+
const requestBody = requestObject.response_mode === "direct_post.jwt" ? await buildDirectPostJwtBody(jwkKeys, requestObject, vp_token, presentation_submission) : await buildDirectPostBody(requestObject, vp_token, presentation_submission);
|
|
178
|
+
|
|
179
|
+
// 3. Send the authorization response via HTTP POST and validate the response
|
|
180
|
+
return await appFetch(requestObject.response_uri, {
|
|
181
|
+
method: "POST",
|
|
182
|
+
headers: {
|
|
183
|
+
"Content-Type": "application/x-www-form-urlencoded"
|
|
184
|
+
},
|
|
185
|
+
body: requestBody
|
|
186
|
+
}).then(hasStatusOrThrow(200)).then(res => res.json()).then(AuthorizationResponse.parse);
|
|
187
|
+
};
|
|
188
|
+
//# sourceMappingURL=08-send-authorization-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["EncryptJwe","SignJWT","sha256ToBase64","uuid","NoSuitableKeysFoundInEntityConfiguration","hasStatusOrThrow","disclose","z","AuthorizationResponse","object","status","string","optional","response_code","redirect_uri","chooseRSAPublicKeyToEncrypt","rpJwkKeys","rsaEncKey","filter","jwk","use","kty","prepareVpToken","requestObject","presentationDefinition","_ref","_presentationDefiniti","verifiableCredential","requestedClaims","cryptoContext","token","vp","sd_hash","kbJwt","setProtectedHeader","typ","alg","setPayload","nonce","setAudience","client_id","setIssuedAt","sign","vp_token","join","presentation_submission","id","v4","definition_id","descriptor_map","input_descriptors","path","format","buildDirectPostBody","vpToken","presentationSubmission","formUrlEncodedBody","URLSearchParams","state","JSON","stringify","toString","buildDirectPostJwtBody","jwkKeys","authzResponsePayload","rsaPublicJwk","encryptedResponse","enc","kid","encrypt","formBody","response","sendAuthorizationResponse","presentation","_ref2","appFetch","fetch","requestBody","response_mode","response_uri","method","headers","body","then","res","json","parse"],"sourceRoot":"../../../../src","sources":["credential/presentation/08-send-authorization-response.ts"],"mappings":"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"}
|
|
@@ -60,15 +60,54 @@ const { requestURI, clientId } = Credential.Presentation.startFlowFromQR(qrcode)
|
|
|
60
60
|
// If use trust federation: Evaluate issuer trust
|
|
61
61
|
const { rpConf } = await Credential.Presentation.evaluateRelyingPartyTrust(clientId);
|
|
62
62
|
|
|
63
|
+
const { requestObjectEncodedJwt } =
|
|
64
|
+
await Credential.Presentation.getRequestObject(requestURI, {
|
|
65
|
+
wiaCryptoContext: wiaCryptoContext,
|
|
66
|
+
appFetch: appFetch,
|
|
67
|
+
walletInstanceAttestation: walletInstanceAttestation,
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
// Retrieve RP JWK
|
|
63
71
|
// If use trust federation: Fetch Jwks from rpConf
|
|
64
72
|
const jwks = await Credential.Presentation.fetchJwksFromConfig(rpConf);
|
|
65
73
|
|
|
66
|
-
// If not use trust: Fetch Jwks from
|
|
67
|
-
const jwks = await Credential.Presentation.
|
|
68
|
-
|
|
69
|
-
appFetch
|
|
74
|
+
// If not use trust: Fetch Jwks from request object
|
|
75
|
+
const jwks = await Credential.Presentation.fetchJwksFromRequestObject(
|
|
76
|
+
requestObjectEncodedJwt,
|
|
77
|
+
{ context: { appFetch } }
|
|
70
78
|
);
|
|
71
79
|
|
|
80
|
+
// Verify signature Request Object
|
|
81
|
+
const { requestObject } =
|
|
82
|
+
await Credential.Presentation.verifyRequestObjectSignature(
|
|
83
|
+
requestObjectEncodedJwt,
|
|
84
|
+
jwks.keys
|
|
85
|
+
);
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
const { presentationDefinition } = await Credential.Presentation.fetchPresentDefinition(
|
|
89
|
+
requestObject,
|
|
90
|
+
{
|
|
91
|
+
appFetch: appFetch,
|
|
92
|
+
},
|
|
93
|
+
rpConf // If trust federation is used
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
// For each credential, find it and evaluate input descriptor and disclosures
|
|
97
|
+
const { requiredDisclosures } = Credential.Presentation.evaluateInputDescriptionForSdJwt4VC(
|
|
98
|
+
inputDescriptor,
|
|
99
|
+
credential.payload,
|
|
100
|
+
disclosures
|
|
101
|
+
);
|
|
102
|
+
|
|
103
|
+
// After confirm disclosures in app
|
|
104
|
+
const authResponse = Credential.Presentation.sendAuthorizationResponse(
|
|
105
|
+
requestObject,
|
|
106
|
+
presentationDefinition,
|
|
107
|
+
jwks,
|
|
108
|
+
[credential, disclosuresRequested, { appFetch: appFetch }]
|
|
109
|
+
);
|
|
110
|
+
|
|
72
111
|
|
|
73
112
|
```
|
|
74
113
|
|
|
@@ -39,4 +39,52 @@ export class NoSuitableKeysFoundInEntityConfiguration extends IoWalletError {
|
|
|
39
39
|
super(message);
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* When a QR code is not valid.
|
|
45
|
+
*
|
|
46
|
+
*/
|
|
47
|
+
export class InvalidQRCodeError extends IoWalletError {
|
|
48
|
+
code = "ERR_INVALID_QR_CODE";
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @param detail A description of why the QR code is considered invalid.
|
|
52
|
+
*/
|
|
53
|
+
constructor(detail) {
|
|
54
|
+
const message = `QR code is not valid: ${detail}.`;
|
|
55
|
+
super(message);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* When the entity is unverified because the Relying Party is not trusted.
|
|
61
|
+
*
|
|
62
|
+
*/
|
|
63
|
+
export class UnverifiedEntityError extends IoWalletError {
|
|
64
|
+
code = "ERR_UNVERIFIED_RP_ENTITY";
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* @param reason A description of why the entity cannot be verified.
|
|
68
|
+
*/
|
|
69
|
+
constructor(reason) {
|
|
70
|
+
const message = `Unverified entity: ${reason}.`;
|
|
71
|
+
super(message);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* When some required data is missing to continue because certain attributes are not contained inside the wallet.
|
|
77
|
+
*
|
|
78
|
+
*/
|
|
79
|
+
export class MissingDataError extends IoWalletError {
|
|
80
|
+
code = "ERR_MISSING_DATA";
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* @param missingAttributes An array or description of the attributes that are missing.
|
|
84
|
+
*/
|
|
85
|
+
constructor(missingAttributes) {
|
|
86
|
+
const message = `Some required data is missing: ${missingAttributes}.`;
|
|
87
|
+
super(message);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
42
90
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["IoWalletError","serializeAttrs","AuthRequestDecodeError","code","constructor","message","claim","arguments","length","undefined","reason","NoSuitableKeysFoundInEntityConfiguration","scenario"],"sourceRoot":"../../../../src","sources":["credential/presentation/errors.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,cAAc,QAAQ,oBAAoB;;AAElE;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,SAASF,aAAa,CAAC;EACxDG,IAAI,GAAG,oDAAoD;;EAE3D;;EAGA;;EAGAC,WAAWA,CACTC,OAAe,EAGf;IAAA,IAFAC,KAAa,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,aAAa;IAAA,IAC7BG,MAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,aAAa;IAE9B,KAAK,CAACN,cAAc,CAAC;MAAEI,OAAO;MAAEC,KAAK;MAAEI;IAAO,CAAC,CAAC,CAAC;IACjD,IAAI,CAACJ,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACI,MAAM,GAAGA,MAAM;EACtB;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wCAAwC,SAASX,aAAa,CAAC;EAC1EG,IAAI,GAAG,gCAAgC;;EAEvC;AACF;AACA;EACEC,WAAWA,CAACQ,QAAgB,EAAE;IAC5B,MAAMP,OAAO,GAAI,0DAAyDO,QAAS,IAAG;IACtF,KAAK,CAACP,OAAO,CAAC;EAChB;AACF"}
|
|
1
|
+
{"version":3,"names":["IoWalletError","serializeAttrs","AuthRequestDecodeError","code","constructor","message","claim","arguments","length","undefined","reason","NoSuitableKeysFoundInEntityConfiguration","scenario","InvalidQRCodeError","detail","UnverifiedEntityError","MissingDataError","missingAttributes"],"sourceRoot":"../../../../src","sources":["credential/presentation/errors.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,cAAc,QAAQ,oBAAoB;;AAElE;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,SAASF,aAAa,CAAC;EACxDG,IAAI,GAAG,oDAAoD;;EAE3D;;EAGA;;EAGAC,WAAWA,CACTC,OAAe,EAGf;IAAA,IAFAC,KAAa,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,aAAa;IAAA,IAC7BG,MAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,aAAa;IAE9B,KAAK,CAACN,cAAc,CAAC;MAAEI,OAAO;MAAEC,KAAK;MAAEI;IAAO,CAAC,CAAC,CAAC;IACjD,IAAI,CAACJ,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACI,MAAM,GAAGA,MAAM;EACtB;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wCAAwC,SAASX,aAAa,CAAC;EAC1EG,IAAI,GAAG,gCAAgC;;EAEvC;AACF;AACA;EACEC,WAAWA,CAACQ,QAAgB,EAAE;IAC5B,MAAMP,OAAO,GAAI,0DAAyDO,QAAS,IAAG;IACtF,KAAK,CAACP,OAAO,CAAC;EAChB;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,kBAAkB,SAASb,aAAa,CAAC;EACpDG,IAAI,GAAG,qBAAqB;;EAE5B;AACF;AACA;EACEC,WAAWA,CAACU,MAAc,EAAE;IAC1B,MAAMT,OAAO,GAAI,yBAAwBS,MAAO,GAAE;IAClD,KAAK,CAACT,OAAO,CAAC;EAChB;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMU,qBAAqB,SAASf,aAAa,CAAC;EACvDG,IAAI,GAAG,0BAA0B;;EAEjC;AACF;AACA;EACEC,WAAWA,CAACM,MAAc,EAAE;IAC1B,MAAML,OAAO,GAAI,sBAAqBK,MAAO,GAAE;IAC/C,KAAK,CAACL,OAAO,CAAC;EAChB;AACF;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMW,gBAAgB,SAAShB,aAAa,CAAC;EAClDG,IAAI,GAAG,kBAAkB;;EAEzB;AACF;AACA;EACEC,WAAWA,CAACa,iBAAyB,EAAE;IACrC,MAAMZ,OAAO,GAAI,kCAAiCY,iBAAkB,GAAE;IACtE,KAAK,CAACZ,OAAO,CAAC;EAChB;AACF"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { startFlowFromQR } from "./01-start-flow";
|
|
2
2
|
import { evaluateRelyingPartyTrust } from "./02-evaluate-rp-trust";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { getRequestObject } from "./03-get-request-object";
|
|
4
|
+
import { fetchJwksFromRequestObject, fetchJwksFromConfig } from "./04-retrieve-rp-jwks";
|
|
5
|
+
import { verifyRequestObjectSignature } from "./05-verify-request-object";
|
|
6
|
+
import { fetchPresentDefinition } from "./06-fetch-presentation-definition";
|
|
7
|
+
import { evaluateInputDescriptorForSdJwt4VC } from "./07-evaluate-input-descriptor";
|
|
8
|
+
import { sendAuthorizationResponse } from "./08-send-authorization-response";
|
|
6
9
|
import * as Errors from "./errors";
|
|
7
|
-
export { startFlowFromQR, evaluateRelyingPartyTrust,
|
|
10
|
+
export { startFlowFromQR, evaluateRelyingPartyTrust, getRequestObject, fetchJwksFromRequestObject, fetchJwksFromConfig, verifyRequestObjectSignature, fetchPresentDefinition, evaluateInputDescriptorForSdJwt4VC, sendAuthorizationResponse, Errors };
|
|
8
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["startFlowFromQR","evaluateRelyingPartyTrust","
|
|
1
|
+
{"version":3,"names":["startFlowFromQR","evaluateRelyingPartyTrust","getRequestObject","fetchJwksFromRequestObject","fetchJwksFromConfig","verifyRequestObjectSignature","fetchPresentDefinition","evaluateInputDescriptorForSdJwt4VC","sendAuthorizationResponse","Errors"],"sourceRoot":"../../../../src","sources":["credential/presentation/index.ts"],"mappings":"AAAA,SAASA,eAAe,QAAwB,iBAAiB;AACjE,SACEC,yBAAyB,QAEpB,wBAAwB;AAC/B,SACEC,gBAAgB,QAEX,yBAAyB;AAChC,SACEC,0BAA0B,EAC1BC,mBAAmB,QAEd,uBAAuB;AAC9B,SACEC,4BAA4B,QAEvB,4BAA4B;AACnC,SACEC,sBAAsB,QAEjB,oCAAoC;AAC3C,SACEC,kCAAkC,QAE7B,gCAAgC;AACvC,SACEC,yBAAyB,QAEpB,kCAAkC;AACzC,OAAO,KAAKC,MAAM,MAAM,UAAU;AAElC,SACET,eAAe,EACfC,yBAAyB,EACzBC,gBAAgB,EAChBC,0BAA0B,EAC1BC,mBAAmB,EACnBC,4BAA4B,EAC5BC,sBAAsB,EACtBC,kCAAkC,EAClCC,yBAAyB,EACzBC,MAAM"}
|
|
@@ -5,19 +5,83 @@ import * as z from "zod";
|
|
|
5
5
|
* A pair that associate a tokenized Verified Credential with the claims presented or requested to present.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
const Fields = z.object({
|
|
9
|
+
path: z.array(z.string().min(1)),
|
|
10
|
+
// Array of JSONPath string expressions
|
|
11
|
+
id: z.string().optional(),
|
|
12
|
+
// Unique string ID
|
|
13
|
+
purpose: z.string().optional(),
|
|
14
|
+
// Purpose of the field
|
|
15
|
+
name: z.string().optional(),
|
|
16
|
+
// Human-friendly name
|
|
17
|
+
filter: z.any().optional(),
|
|
18
|
+
// JSON Schema descriptor for filtering
|
|
19
|
+
optional: z.boolean().optional(),
|
|
20
|
+
// Boolean indicating if the field is optional
|
|
21
|
+
intent_to_retain: z.boolean().optional() // Boolean indicating that the Verifier intends to retain the Claim's data being requested
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
// Define the Constraints Object Schema
|
|
25
|
+
const Constraints = z.object({
|
|
26
|
+
fields: z.array(Fields).optional(),
|
|
27
|
+
// Array of Field Objects
|
|
28
|
+
limit_disclosure: z.enum(["required", "preferred"]).optional() // Limit disclosure property
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
// Define the Input Descriptor Object Schema
|
|
32
|
+
|
|
33
|
+
export const InputDescriptor = z.object({
|
|
34
|
+
id: z.string().min(1),
|
|
35
|
+
// Mandatory unique string ID
|
|
36
|
+
name: z.string().optional(),
|
|
37
|
+
// Human-friendly name
|
|
38
|
+
purpose: z.string().optional(),
|
|
39
|
+
// Purpose of the schema
|
|
40
|
+
format: z.record(z.string(), z.any()).optional(),
|
|
41
|
+
// Object with Claim Format Designations
|
|
42
|
+
constraints: Constraints,
|
|
43
|
+
// Constraints Object (mandatory)
|
|
44
|
+
group: z.string().optional() // Match one of the grouping strings listed in the "from" values of a Submission Requirement Rule
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
const SubmissionRequirement = z.object({
|
|
48
|
+
name: z.string().optional(),
|
|
49
|
+
purpose: z.string().optional(),
|
|
50
|
+
rule: z.string(),
|
|
51
|
+
// "all": all group's rules must be present, or "pick": at least group's "count" rules must be present
|
|
52
|
+
from: z.string().optional(),
|
|
53
|
+
// MUST contain either a "from" or "from_nested" property
|
|
54
|
+
from_nested: z.array(z.object({
|
|
55
|
+
name: z.string().optional(),
|
|
56
|
+
purpose: z.string().optional(),
|
|
57
|
+
rule: z.string(),
|
|
58
|
+
from: z.string()
|
|
59
|
+
})).optional(),
|
|
60
|
+
count: z.number().optional()
|
|
61
|
+
//"count", "min", and "max" may be present with a "pick" rule
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
export const PresentationDefinition = z.object({
|
|
65
|
+
id: z.string(),
|
|
66
|
+
name: z.string().optional(),
|
|
67
|
+
purpose: z.string().optional(),
|
|
68
|
+
input_descriptors: z.array(InputDescriptor),
|
|
69
|
+
submission_requirements: z.array(SubmissionRequirement).optional()
|
|
70
|
+
});
|
|
8
71
|
export const RequestObject = z.object({
|
|
9
72
|
iss: z.string().optional(),
|
|
10
73
|
//optional by RFC 7519, mandatory for Potential
|
|
11
|
-
iat: UnixTime,
|
|
74
|
+
iat: UnixTime.optional(),
|
|
12
75
|
exp: UnixTime.optional(),
|
|
13
76
|
state: z.string(),
|
|
14
77
|
nonce: z.string(),
|
|
15
78
|
response_uri: z.string(),
|
|
16
79
|
response_type: z.literal("vp_token"),
|
|
17
|
-
response_mode: z.
|
|
80
|
+
response_mode: z.enum(["direct_post.jwt", "direct_post"]),
|
|
18
81
|
client_id: z.string(),
|
|
19
82
|
client_id_scheme: z.string(),
|
|
20
83
|
// previous z.literal("entity_id"),
|
|
21
|
-
scope: z.string()
|
|
84
|
+
scope: z.string().optional(),
|
|
85
|
+
presentation_definition: PresentationDefinition.optional()
|
|
22
86
|
});
|
|
23
87
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["UnixTime","z","
|
|
1
|
+
{"version":3,"names":["UnixTime","z","Fields","object","path","array","string","min","id","optional","purpose","name","filter","any","boolean","intent_to_retain","Constraints","fields","limit_disclosure","enum","InputDescriptor","format","record","constraints","group","SubmissionRequirement","rule","from","from_nested","count","number","PresentationDefinition","input_descriptors","submission_requirements","RequestObject","iss","iat","exp","state","nonce","response_uri","response_type","literal","response_mode","client_id","client_id_scheme","scope","presentation_definition"],"sourceRoot":"../../../../src","sources":["credential/presentation/types.ts"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { UnixTime } from "../../sd-jwt/types";
|
|
2
2
|
import { JWK } from "../../utils/jwk";
|
|
3
3
|
import * as z from "zod";
|
|
4
|
+
import { PresentationDefinition } from "../../credential/presentation/types";
|
|
4
5
|
export const TrustMark = z.object({
|
|
5
6
|
id: z.string(),
|
|
6
7
|
trust_mark: z.string()
|
|
@@ -12,7 +13,9 @@ const RelyingPartyMetadata = z.object({
|
|
|
12
13
|
jwks: z.object({
|
|
13
14
|
keys: z.array(JWK)
|
|
14
15
|
}),
|
|
15
|
-
contacts: z.array(z.string()).optional()
|
|
16
|
+
contacts: z.array(z.string()).optional(),
|
|
17
|
+
presentation_definition: PresentationDefinition.optional(),
|
|
18
|
+
presentation_definition_uri: z.string().optional()
|
|
16
19
|
});
|
|
17
20
|
//.passthrough();
|
|
18
21
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["UnixTime","JWK","z","TrustMark","object","id","string","trust_mark","RelyingPartyMetadata","application_type","optional","client_id","client_name","jwks","keys","array","contacts","CredentialDisplayMetadata","name","locale","logo","url","alt_text","background_color","text_color","CredentialIssuerDisplayMetadata","ClaimsMetadata","record","value_type","display","IssuanceErrorSupported","title","description","SupportedCredentialMetadata","format","union","literal","scope","claims","cryptographic_binding_methods_supported","credential_signing_alg_values_supported","authentic_source","issuance_errors_supported","EntityStatement","header","typ","alg","kid","payload","iss","sub","trust_marks","iat","number","exp","EntityConfigurationHeader","FederationEntityMetadata","federation_fetch_endpoint","federation_list_endpoint","federation_resolve_endpoint","federation_trust_mark_status_endpoint","federation_trust_mark_list_endpoint","organization_name","homepage_uri","policy_uri","logo_uri","passthrough","BaseEntityConfiguration","authority_hints","metadata","federation_entity","TrustAnchorEntityConfiguration","CredentialIssuerEntityConfiguration","and","openid_credential_issuer","credential_issuer","credential_endpoint","revocation_endpoint","status_attestation_endpoint","credential_configurations_supported","oauth_authorization_server","authorization_endpoint","pushed_authorization_request_endpoint","dpop_signing_alg_values_supported","token_endpoint","introspection_endpoint","client_registration_types_supported","code_challenge_methods_supported","authorization_details_types_supported","acr_values_supported","grant_types_supported","issuer","scopes_supported","request_parameter_supported","boolean","request_uri_parameter_supported","response_types_supported","response_modes_supported","subject_types_supported","token_endpoint_auth_methods_supported","token_endpoint_auth_signing_alg_values_supported","request_object_signing_alg_values_supported","wallet_relying_party","RelyingPartyEntityConfiguration","WalletProviderEntityConfiguration","wallet_provider","aal_values_supported","EntityConfiguration"],"sourceRoot":"../../../../src","sources":["entity/trust/types.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["UnixTime","JWK","z","PresentationDefinition","TrustMark","object","id","string","trust_mark","RelyingPartyMetadata","application_type","optional","client_id","client_name","jwks","keys","array","contacts","presentation_definition","presentation_definition_uri","CredentialDisplayMetadata","name","locale","logo","url","alt_text","background_color","text_color","CredentialIssuerDisplayMetadata","ClaimsMetadata","record","value_type","display","IssuanceErrorSupported","title","description","SupportedCredentialMetadata","format","union","literal","scope","claims","cryptographic_binding_methods_supported","credential_signing_alg_values_supported","authentic_source","issuance_errors_supported","EntityStatement","header","typ","alg","kid","payload","iss","sub","trust_marks","iat","number","exp","EntityConfigurationHeader","FederationEntityMetadata","federation_fetch_endpoint","federation_list_endpoint","federation_resolve_endpoint","federation_trust_mark_status_endpoint","federation_trust_mark_list_endpoint","organization_name","homepage_uri","policy_uri","logo_uri","passthrough","BaseEntityConfiguration","authority_hints","metadata","federation_entity","TrustAnchorEntityConfiguration","CredentialIssuerEntityConfiguration","and","openid_credential_issuer","credential_issuer","credential_endpoint","revocation_endpoint","status_attestation_endpoint","credential_configurations_supported","oauth_authorization_server","authorization_endpoint","pushed_authorization_request_endpoint","dpop_signing_alg_values_supported","token_endpoint","introspection_endpoint","client_registration_types_supported","code_challenge_methods_supported","authorization_details_types_supported","acr_values_supported","grant_types_supported","issuer","scopes_supported","request_parameter_supported","boolean","request_uri_parameter_supported","response_types_supported","response_modes_supported","subject_types_supported","token_endpoint_auth_methods_supported","token_endpoint_auth_signing_alg_values_supported","request_object_signing_alg_values_supported","wallet_relying_party","RelyingPartyEntityConfiguration","WalletProviderEntityConfiguration","wallet_provider","aal_values_supported","EntityConfiguration"],"sourceRoot":"../../../../src","sources":["entity/trust/types.ts"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export type CompleteUserAuthorizationWithFormPostJwtMode = (requestObject: Out<G
|
|
|
16
16
|
appFetch?: GlobalFetch["fetch"];
|
|
17
17
|
}) => Promise<AuthorizationResult>;
|
|
18
18
|
export type GetRequestedCredentialToBePresented = (issuerRequestUri: Out<StartUserAuthorization>["issuerRequestUri"], clientId: Out<StartUserAuthorization>["clientId"], issuerConf: Out<GetIssuerConfig>["issuerConf"], appFetch?: GlobalFetch["fetch"]) => Promise<RequestObject>;
|
|
19
|
-
export type BuildAuthorizationUrl = (issuerRequestUri: Out<StartUserAuthorization>["issuerRequestUri"], clientId: Out<StartUserAuthorization>["clientId"], issuerConf: Out<GetIssuerConfig>["issuerConf"], idpHint
|
|
19
|
+
export type BuildAuthorizationUrl = (issuerRequestUri: Out<StartUserAuthorization>["issuerRequestUri"], clientId: Out<StartUserAuthorization>["clientId"], issuerConf: Out<GetIssuerConfig>["issuerConf"], idpHint?: string) => Promise<{
|
|
20
20
|
authUrl: string;
|
|
21
21
|
}>;
|
|
22
22
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"04-complete-user-authorization.d.ts","sourceRoot":"","sources":["../../../../src/credential/issuance/04-complete-user-authorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAoB,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAG5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAMtD;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG,CACnD,eAAe,EAAE,MAAM,KACpB,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC,MAAM,MAAM,4CAA4C,GAAG,CACzD,aAAa,EAAE,GAAG,CAAC,mCAAmC,CAAC,EACvD,OAAO,EAAE;IACP,gBAAgB,EAAE,aAAa,CAAC;IAChC,gBAAgB,EAAE,aAAa,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,yBAAyB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACjC,KACE,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC,MAAM,MAAM,mCAAmC,GAAG,CAChD,gBAAgB,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,EACjE,QAAQ,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,UAAU,CAAC,EACjD,UAAU,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAC9C,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,MAAM,qBAAqB,GAAG,CAClC,gBAAgB,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,EACjE,QAAQ,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,UAAU,CAAC,EACjD,UAAU,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAC9C,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"04-complete-user-authorization.d.ts","sourceRoot":"","sources":["../../../../src/credential/issuance/04-complete-user-authorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAoB,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAG5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAMtD;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG,CACnD,eAAe,EAAE,MAAM,KACpB,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC,MAAM,MAAM,4CAA4C,GAAG,CACzD,aAAa,EAAE,GAAG,CAAC,mCAAmC,CAAC,EACvD,OAAO,EAAE;IACP,gBAAgB,EAAE,aAAa,CAAC;IAChC,gBAAgB,EAAE,aAAa,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,yBAAyB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACjC,KACE,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC,MAAM,MAAM,mCAAmC,GAAG,CAChD,gBAAgB,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,EACjE,QAAQ,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,UAAU,CAAC,EACjD,UAAU,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAC9C,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,KAC5B,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,MAAM,qBAAqB,GAAG,CAClC,gBAAgB,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,EACjE,QAAQ,EAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC,UAAU,CAAC,EACjD,UAAU,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAC9C,OAAO,CAAC,EAAE,MAAM,KACb,OAAO,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,EAAE,qBAiBnC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC,EAAE,sCAKlD,CAAC;AAEJ;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mCAAmC,EAAE,mCAwB/C,CAAC;AAEJ;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,4CAA4C,EAAE,4CAuGxD,CAAC;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,YAC5B,OAAO,KACf,mBAaF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"01-start-flow.d.ts","sourceRoot":"","sources":["../../../../src/credential/presentation/01-start-flow.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"01-start-flow.d.ts","sourceRoot":"","sources":["../../../../src/credential/presentation/01-start-flow.ts"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CA+B/C,CAAC"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { type CryptoContext } from "@pagopa/io-react-native-jwt";
|
|
2
|
-
import type { FetchJwks } from "./03-retrieve-jwks";
|
|
3
2
|
import { type Out } from "../../utils/misc";
|
|
4
3
|
import type { StartFlow } from "./01-start-flow";
|
|
5
|
-
import { RequestObject } from "./types";
|
|
6
4
|
export type GetRequestObject = (requestUri: Out<StartFlow>["requestURI"], context: {
|
|
7
5
|
wiaCryptoContext: CryptoContext;
|
|
8
6
|
appFetch?: GlobalFetch["fetch"];
|
|
9
7
|
walletInstanceAttestation: string;
|
|
10
|
-
}
|
|
11
|
-
|
|
8
|
+
}) => Promise<{
|
|
9
|
+
requestObjectEncodedJwt: string;
|
|
12
10
|
}>;
|
|
13
11
|
/**
|
|
14
12
|
* Obtain the Request Object for RP authentication
|
|
@@ -22,4 +20,4 @@ export type GetRequestObject = (requestUri: Out<StartFlow>["requestURI"], contex
|
|
|
22
20
|
* @returns The Request Object that describes the presentation
|
|
23
21
|
*/
|
|
24
22
|
export declare const getRequestObject: GetRequestObject;
|
|
25
|
-
//# sourceMappingURL=
|
|
23
|
+
//# sourceMappingURL=03-get-request-object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"03-get-request-object.d.ts","sourceRoot":"","sources":["../../../../src/credential/presentation/03-get-request-object.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAoB,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,MAAM,gBAAgB,GAAG,CAC7B,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EACxC,OAAO,EAAE;IACP,gBAAgB,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAChC,yBAAyB,EAAE,MAAM,CAAC;CACnC,KACE,OAAO,CAAC;IAAE,uBAAuB,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAElD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBA2B9B,CAAC"}
|
package/lib/typescript/credential/presentation/{03-retrieve-jwks.d.ts → 04-retrieve-rp-jwks.d.ts}
RENAMED
|
@@ -12,15 +12,16 @@ export type FetchJwks<T extends Array<unknown> = []> = (...args: T) => Promise<{
|
|
|
12
12
|
}>;
|
|
13
13
|
/**
|
|
14
14
|
* Retrieves the JSON Web Key Set (JWKS) from the specified client's well-known endpoint.
|
|
15
|
+
* It is formed using `{issUrl.base}/.well-known/jar-issuer${issUrl.pah}` as explained in SD-JWT VC issuer metadata section
|
|
15
16
|
*
|
|
16
|
-
* @param
|
|
17
|
+
* @param requestObjectEncodedJwt - Request Object in JWT format.
|
|
17
18
|
* @param options - Optional context containing a custom fetch implementation.
|
|
18
19
|
* @param options.context - Optional context object.
|
|
19
20
|
* @param options.context.appFetch - Optional custom fetch function to use instead of the global `fetch`.
|
|
20
21
|
* @returns A promise resolving to an object containing an array of JWKs.
|
|
21
22
|
* @throws Will throw an error if the JWKS retrieval fails.
|
|
22
23
|
*/
|
|
23
|
-
export declare const
|
|
24
|
+
export declare const fetchJwksFromRequestObject: FetchJwks<[
|
|
24
25
|
string,
|
|
25
26
|
{
|
|
26
27
|
context?: {
|
|
@@ -36,6 +37,6 @@ export declare const fetchJwksFromUri: FetchJwks<[
|
|
|
36
37
|
* @throws Will throw an error if the configuration is invalid or if JWKS is not found.
|
|
37
38
|
*/
|
|
38
39
|
export declare const fetchJwksFromConfig: FetchJwks<[
|
|
39
|
-
RelyingPartyEntityConfiguration
|
|
40
|
+
RelyingPartyEntityConfiguration["payload"]["metadata"]
|
|
40
41
|
]>;
|
|
41
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=04-retrieve-rp-jwks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"04-retrieve-rp-jwks.d.ts","sourceRoot":"","sources":["../../../../src/credential/presentation/04-retrieve-rp-jwks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAI3E;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC;IAC7E,IAAI,EAAE,GAAG,EAAE,CAAC;CACb,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,CAChD;IAAC,MAAM;IAAE;QAAE,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE;CAAC,CAqC5D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,CACzC;IAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC;CAAC,CAWzD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RequestObject } from "./types";
|
|
2
|
+
import type { FetchJwks } from "./04-retrieve-rp-jwks";
|
|
3
|
+
import { type Out } from "../../utils/misc";
|
|
4
|
+
export type VerifyRequestObjectSignature = (requestObjectEncodedJwt: string, jwkKeys?: Out<FetchJwks>["keys"]) => Promise<{
|
|
5
|
+
requestObject: RequestObject;
|
|
6
|
+
}>;
|
|
7
|
+
export declare const verifyRequestObjectSignature: VerifyRequestObjectSignature;
|
|
8
|
+
//# sourceMappingURL=05-verify-request-object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"05-verify-request-object.d.ts","sourceRoot":"","sources":["../../../../src/credential/presentation/05-verify-request-object.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,MAAM,4BAA4B,GAAG,CACzC,uBAAuB,EAAE,MAAM,EAC/B,OAAO,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAC7B,OAAO,CAAC;IAAE,aAAa,EAAE,aAAa,CAAA;CAAE,CAAC,CAAC;AAE/C,eAAO,MAAM,4BAA4B,EAAE,4BAsBxC,CAAC"}
|