@proof.com/proof-vc-common 0.1.3 → 0.1.4
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/dist/index.node.d.ts +1 -0
- package/dist/index.node.d.ts.map +1 -1
- package/dist/index.node.js +1 -0
- package/dist/index.node.js.map +1 -1
- package/dist/presentation/node_client.d.ts +4 -2
- package/dist/presentation/node_client.d.ts.map +1 -1
- package/dist/presentation/node_client.js +9 -2
- package/dist/presentation/node_client.js.map +1 -1
- package/package.json +1 -1
package/dist/index.node.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type * from "./types.ts";
|
|
2
2
|
export type { TransactionData, WireInstructionsTransactionData, PaymentMandateTransactionData, PaymentItemizedTransactionData, SessionDataTransactionData, WireInstructionsPayload, PaymentMandatePayload, PaymentItemizedPayload, PaymentItemizedItem, SessionDataPayload, } from "./transaction_data.ts";
|
|
3
3
|
export { TX_DATA_TYPE, transactionData } from "./transaction_data.ts";
|
|
4
|
+
export { ProofCredentialV1 } from "./proof_credentials.ts";
|
|
4
5
|
export { init, getAuthorizationRequestURL, verify, verifyVPToken, } from "./vc_presentation.node.ts";
|
|
5
6
|
//# sourceMappingURL=index.node.d.ts.map
|
package/dist/index.node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../src/index.node.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAC;AAChC,YAAY,EACV,eAAe,EACf,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,MAAM,EACN,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../src/index.node.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAC;AAChC,YAAY,EACV,eAAe,EACf,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,MAAM,EACN,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
package/dist/index.node.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { TX_DATA_TYPE, transactionData } from "./transaction_data.js";
|
|
2
|
+
export { ProofCredentialV1 } from "./proof_credentials.js";
|
|
2
3
|
export { init, getAuthorizationRequestURL, verify, verifyVPToken, } from "./vc_presentation.node.js";
|
|
3
4
|
//# sourceMappingURL=index.node.js.map
|
package/dist/index.node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.node.js","sourceRoot":"","sources":["../src/index.node.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,MAAM,EACN,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.node.js","sourceRoot":"","sources":["../src/index.node.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,MAAM,EACN,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
|
@@ -3,13 +3,15 @@ import { VCPresentationClient } from "./base_client.ts";
|
|
|
3
3
|
export type VerifyParams = {
|
|
4
4
|
encodedSDJWT: string;
|
|
5
5
|
nonce?: string;
|
|
6
|
+
aud?: string;
|
|
6
7
|
};
|
|
7
8
|
export type VerifyVPTokenParams = {
|
|
8
9
|
encodedVPToken: string;
|
|
9
10
|
nonce?: string;
|
|
11
|
+
aud?: string;
|
|
10
12
|
};
|
|
11
13
|
export declare class NodeVCPresentationClient extends VCPresentationClient {
|
|
12
|
-
verify({ encodedSDJWT, nonce, }: VerifyParams): Promise<ProofCredential>;
|
|
13
|
-
verifyVPToken({ encodedVPToken, nonce, }: VerifyVPTokenParams): Promise<VPToken>;
|
|
14
|
+
verify({ encodedSDJWT, nonce, aud, }: VerifyParams): Promise<ProofCredential>;
|
|
15
|
+
verifyVPToken({ encodedVPToken, nonce, aud, }: VerifyVPTokenParams): Promise<VPToken>;
|
|
14
16
|
}
|
|
15
17
|
//# sourceMappingURL=node_client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node_client.d.ts","sourceRoot":"","sources":["../../src/presentation/node_client.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"node_client.d.ts","sourceRoot":"","sources":["../../src/presentation/node_client.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAiCF,qBAAa,wBAAyB,SAAQ,oBAAoB;IACnD,MAAM,CAAC,EAClB,YAAY,EACZ,KAAK,EACL,GAAG,GACJ,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;IAoD7B,aAAa,CAAC,EACzB,cAAc,EACd,KAAK,EACL,GAAG,GACJ,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAqB1C"}
|
|
@@ -31,7 +31,7 @@ function kbVerifierFor(kbAlg) {
|
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
33
|
export class NodeVCPresentationClient extends VCPresentationClient {
|
|
34
|
-
async verify({ encodedSDJWT, nonce, }) {
|
|
34
|
+
async verify({ encodedSDJWT, nonce, aud, }) {
|
|
35
35
|
const decoded = await new SDJwtVcInstance({ hasher }).decode(encodedSDJWT);
|
|
36
36
|
const alg = decoded.jwt?.header?.["alg"];
|
|
37
37
|
const x5c = decoded.jwt?.header?.["x5c"];
|
|
@@ -50,8 +50,14 @@ export class NodeVCPresentationClient extends VCPresentationClient {
|
|
|
50
50
|
if (!isSupportedAlg(kbAlg)) {
|
|
51
51
|
throw `Unsupported or missing KB JWT alg: ${kbAlg}`;
|
|
52
52
|
}
|
|
53
|
+
if (aud !== undefined && decoded.kbJwt.payload?.aud !== aud) {
|
|
54
|
+
throw `KB JWT aud ${decoded.kbJwt.payload?.aud} does not match expected aud ${aud}`;
|
|
55
|
+
}
|
|
53
56
|
kbVerifier = kbVerifierFor(kbAlg);
|
|
54
57
|
}
|
|
58
|
+
else if (aud !== undefined) {
|
|
59
|
+
throw "aud was supplied for verification but the SD-JWT-VC contains no KB JWT";
|
|
60
|
+
}
|
|
55
61
|
const chain = x5c.map((b64) => new X509Certificate(Buffer.from(b64, "base64")));
|
|
56
62
|
verifyChain(chain, getTrustRoot(this.environment));
|
|
57
63
|
const leafJwk = chain[0].publicKey.export({ format: "jwk" });
|
|
@@ -69,7 +75,7 @@ export class NodeVCPresentationClient extends VCPresentationClient {
|
|
|
69
75
|
});
|
|
70
76
|
return getProofCredential(decoded);
|
|
71
77
|
}
|
|
72
|
-
async verifyVPToken({ encodedVPToken, nonce, }) {
|
|
78
|
+
async verifyVPToken({ encodedVPToken, nonce, aud, }) {
|
|
73
79
|
const records = JSON.parse(base64urlDecode(encodedVPToken));
|
|
74
80
|
const vpToken = {};
|
|
75
81
|
for (const [key, encodedSDJWTs] of Object.entries(records)) {
|
|
@@ -79,6 +85,7 @@ export class NodeVCPresentationClient extends VCPresentationClient {
|
|
|
79
85
|
const credential = await this.verify({
|
|
80
86
|
encodedSDJWT,
|
|
81
87
|
...(nonce !== undefined && { nonce }),
|
|
88
|
+
...(aud !== undefined && { aud }),
|
|
82
89
|
});
|
|
83
90
|
vpToken[credentialId].push(credential);
|
|
84
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node_client.js","sourceRoot":"","sources":["../../src/presentation/node_client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"node_client.js","sourceRoot":"","sources":["../../src/presentation/node_client.ts"],"names":[],"mappings":"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"}
|