@credo-ts/core 0.6.0-pr-2094-20241120112909 → 0.6.0-pr-2094-20241120130052
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/build/modules/dif-presentation-exchange/DifPresentationExchangeService.d.ts +1 -1
- package/build/modules/dif-presentation-exchange/utils/transform.d.ts +1 -1
- package/build/modules/sd-jwt-vc/SdJwtVcOptions.d.ts +6 -0
- package/build/modules/sd-jwt-vc/SdJwtVcService.d.ts +4 -3
- package/build/modules/sd-jwt-vc/SdJwtVcService.js +55 -38
- package/build/modules/sd-jwt-vc/SdJwtVcService.js.map +1 -1
- package/build/modules/sd-jwt-vc/decodeSdJwtVc.d.ts +10 -0
- package/build/modules/sd-jwt-vc/decodeSdJwtVc.js +22 -0
- package/build/modules/sd-jwt-vc/decodeSdJwtVc.js.map +1 -0
- package/build/modules/sd-jwt-vc/index.d.ts +1 -0
- package/build/modules/sd-jwt-vc/index.js +1 -0
- package/build/modules/sd-jwt-vc/index.js.map +1 -1
- package/build/modules/sd-jwt-vc/repository/SdJwtVcRecord.d.ts +5 -0
- package/build/modules/sd-jwt-vc/repository/SdJwtVcRecord.js +5 -2
- package/build/modules/sd-jwt-vc/repository/SdJwtVcRecord.js.map +1 -1
- package/build/modules/sd-jwt-vc/typeMetadata.d.ts +52 -0
- package/build/modules/sd-jwt-vc/typeMetadata.js +3 -0
- package/build/modules/sd-jwt-vc/typeMetadata.js.map +1 -0
- package/package.json +3 -2
|
@@ -33,7 +33,7 @@ export declare class DifPresentationExchangeService {
|
|
|
33
33
|
domain?: string;
|
|
34
34
|
openid4vp?: Omit<MdocOpenId4VpSessionTranscriptOptions, 'verifierGeneratedNonce' | 'clientId'>;
|
|
35
35
|
}): Promise<{
|
|
36
|
-
verifiablePresentations: (MdocDeviceResponse | import("../vc").
|
|
36
|
+
verifiablePresentations: (MdocDeviceResponse | import("../sd-jwt-vc").SdJwtVc<import("../sd-jwt-vc").SdJwtVcHeader, import("../sd-jwt-vc").SdJwtVcPayload> | import("../vc").W3cJsonLdVerifiablePresentation | import("../vc").W3cJwtVerifiablePresentation)[];
|
|
37
37
|
presentationSubmission: import("@sphereon/pex-models").PresentationSubmission;
|
|
38
38
|
presentationSubmissionLocation: PresentationSubmissionLocation;
|
|
39
39
|
}>;
|
|
@@ -7,4 +7,4 @@ import { MdocDeviceResponse } from '../../mdoc';
|
|
|
7
7
|
import { W3cCredentialRecord, W3cJsonLdVerifiablePresentation, W3cJwtVerifiablePresentation } from '../../vc';
|
|
8
8
|
export declare function getSphereonOriginalVerifiableCredential(credentialRecord: W3cCredentialRecord | SdJwtVcRecord): SphereonOriginalVerifiableCredential;
|
|
9
9
|
export declare function getSphereonOriginalVerifiablePresentation(verifiablePresentation: VerifiablePresentation): SphereonOriginalVerifiablePresentation;
|
|
10
|
-
export declare function getVerifiablePresentationFromEncoded(agentContext: AgentContext, encodedVerifiablePresentation: string | W3cJsonPresentation | SphereonW3CVerifiablePresentation): MdocDeviceResponse |
|
|
10
|
+
export declare function getVerifiablePresentationFromEncoded(agentContext: AgentContext, encodedVerifiablePresentation: string | W3cJsonPresentation | SphereonW3CVerifiablePresentation): MdocDeviceResponse | import("../../sd-jwt-vc").SdJwtVc<import("../../sd-jwt-vc").SdJwtVcHeader, import("../../sd-jwt-vc").SdJwtVcPayload> | W3cJsonLdVerifiablePresentation | W3cJwtVerifiablePresentation;
|
|
@@ -90,4 +90,10 @@ export type SdJwtVcVerifyOptions = {
|
|
|
90
90
|
nonce: string;
|
|
91
91
|
};
|
|
92
92
|
requiredClaimKeys?: Array<string>;
|
|
93
|
+
/**
|
|
94
|
+
* Whether to fetch the `vct` type metadata if the `vct` is an https URL.
|
|
95
|
+
*
|
|
96
|
+
* It will will not influence the verification result if fetching of type metadata fails
|
|
97
|
+
*/
|
|
98
|
+
fetchTypeMetadata?: boolean;
|
|
93
99
|
};
|
|
@@ -3,11 +3,13 @@ import type { JwkJson } from '../../crypto';
|
|
|
3
3
|
import type { Query, QueryOptions } from '../../storage/StorageService';
|
|
4
4
|
import { AgentContext } from '../../agent';
|
|
5
5
|
import { SdJwtVcRecord, SdJwtVcRepository } from './repository';
|
|
6
|
+
import { SdJwtVcTypeMetadata } from './typeMetadata';
|
|
6
7
|
export interface SdJwtVc<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload> {
|
|
7
8
|
compact: string;
|
|
8
9
|
header: Header;
|
|
9
10
|
payload: Payload;
|
|
10
11
|
prettyClaims: Payload;
|
|
12
|
+
typeMetadata?: SdJwtVcTypeMetadata;
|
|
11
13
|
}
|
|
12
14
|
export interface CnfPayload {
|
|
13
15
|
jwk?: JwkJson;
|
|
@@ -42,10 +44,10 @@ export declare class SdJwtVcService {
|
|
|
42
44
|
};
|
|
43
45
|
payload: Payload;
|
|
44
46
|
}>;
|
|
45
|
-
fromCompact<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload>(compactSdJwtVc: string): SdJwtVc<Header, Payload>;
|
|
47
|
+
fromCompact<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload>(compactSdJwtVc: string, typeMetadata?: SdJwtVcTypeMetadata): SdJwtVc<Header, Payload>;
|
|
46
48
|
present<Payload extends SdJwtVcPayload = SdJwtVcPayload>(agentContext: AgentContext, { compactSdJwtVc, presentationFrame, verifierMetadata }: SdJwtVcPresentOptions<Payload>): Promise<string>;
|
|
47
49
|
private assertValidX5cJwtIssuer;
|
|
48
|
-
verify<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload>(agentContext: AgentContext, { compactSdJwtVc, keyBinding, requiredClaimKeys }: SdJwtVcVerifyOptions): Promise<{
|
|
50
|
+
verify<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload>(agentContext: AgentContext, { compactSdJwtVc, keyBinding, requiredClaimKeys, fetchTypeMetadata }: SdJwtVcVerifyOptions): Promise<{
|
|
49
51
|
isValid: true;
|
|
50
52
|
verification: VerificationResult;
|
|
51
53
|
sdJwtVc: SdJwtVc<Header, Payload>;
|
|
@@ -75,6 +77,5 @@ export declare class SdJwtVcService {
|
|
|
75
77
|
private parseHolderBindingFromCredential;
|
|
76
78
|
private extractKeyFromHolderBinding;
|
|
77
79
|
private getBaseSdJwtConfig;
|
|
78
|
-
private get hasher();
|
|
79
80
|
private getStatusListFetcher;
|
|
80
81
|
}
|
|
@@ -8,9 +8,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
11
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
23
|
exports.SdJwtVcService = void 0;
|
|
13
|
-
const decode_1 = require("@sd-jwt/decode");
|
|
14
24
|
const sd_jwt_vc_1 = require("@sd-jwt/sd-jwt-vc");
|
|
15
25
|
const utils_1 = require("@sd-jwt/utils");
|
|
16
26
|
const tsyringe_1 = require("tsyringe");
|
|
@@ -23,6 +33,7 @@ const fetch_1 = require("../../utils/fetch");
|
|
|
23
33
|
const dids_1 = require("../dids");
|
|
24
34
|
const x509_1 = require("../x509");
|
|
25
35
|
const SdJwtVcError_1 = require("./SdJwtVcError");
|
|
36
|
+
const decodeSdJwtVc_1 = require("./decodeSdJwtVc");
|
|
26
37
|
const repository_1 = require("./repository");
|
|
27
38
|
/**
|
|
28
39
|
* @internal
|
|
@@ -67,16 +78,8 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
67
78
|
payload: sdjwtPayload,
|
|
68
79
|
};
|
|
69
80
|
}
|
|
70
|
-
fromCompact(compactSdJwtVc) {
|
|
71
|
-
|
|
72
|
-
const { jwt, disclosures } = (0, decode_1.decodeSdJwtSync)(compactSdJwtVc, this.hasher);
|
|
73
|
-
const prettyClaims = (0, decode_1.getClaimsSync)(jwt.payload, disclosures, this.hasher);
|
|
74
|
-
return {
|
|
75
|
-
compact: compactSdJwtVc,
|
|
76
|
-
header: jwt.header,
|
|
77
|
-
payload: jwt.payload,
|
|
78
|
-
prettyClaims: prettyClaims,
|
|
79
|
-
};
|
|
81
|
+
fromCompact(compactSdJwtVc, typeMetadata) {
|
|
82
|
+
return (0, decodeSdJwtVc_1.decodeSdJwtVc)(compactSdJwtVc, typeMetadata);
|
|
80
83
|
}
|
|
81
84
|
async present(agentContext, { compactSdJwtVc, presentationFrame, verifierMetadata }) {
|
|
82
85
|
const sdjwt = new sd_jwt_vc_1.SDJwtVcInstance(this.getBaseSdJwtConfig(agentContext));
|
|
@@ -112,12 +115,14 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
112
115
|
throw new SdJwtVcError_1.SdJwtVcError(`The 'iss' claim in the payload does not match a 'SAN-URI' name and the domain extracted from the HTTPS URI does not match a 'SAN-DNS' name in the x5c certificate.`);
|
|
113
116
|
}
|
|
114
117
|
}
|
|
115
|
-
async verify(agentContext, { compactSdJwtVc, keyBinding, requiredClaimKeys }) {
|
|
116
|
-
|
|
118
|
+
async verify(agentContext, { compactSdJwtVc, keyBinding, requiredClaimKeys, fetchTypeMetadata }) {
|
|
119
|
+
var _a;
|
|
120
|
+
const sdjwt = new sd_jwt_vc_1.SDJwtVcInstance(Object.assign({}, this.getBaseSdJwtConfig(agentContext)));
|
|
117
121
|
const verificationResult = {
|
|
118
122
|
isValid: false,
|
|
119
123
|
};
|
|
120
124
|
let sdJwtVc;
|
|
125
|
+
let _error = undefined;
|
|
121
126
|
try {
|
|
122
127
|
sdJwtVc = await sdjwt.decode(compactSdJwtVc);
|
|
123
128
|
if (!sdJwtVc.jwt)
|
|
@@ -134,7 +139,7 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
134
139
|
payload: sdJwtVc.jwt.payload,
|
|
135
140
|
header: sdJwtVc.jwt.header,
|
|
136
141
|
compact: compactSdJwtVc,
|
|
137
|
-
prettyClaims: await sdJwtVc.getClaims(
|
|
142
|
+
prettyClaims: await sdJwtVc.getClaims(decodeSdJwtVc_1.sdJwtVcHasher),
|
|
138
143
|
};
|
|
139
144
|
try {
|
|
140
145
|
const credentialIssuer = await this.parseIssuerFromCredential(agentContext, sdJwtVc);
|
|
@@ -153,25 +158,18 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
153
158
|
verificationResult.isStatusValid = true;
|
|
154
159
|
}
|
|
155
160
|
catch (error) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
sdJwtVc: returnSdJwtVc,
|
|
161
|
-
};
|
|
161
|
+
_error = error;
|
|
162
|
+
verificationResult.isSignatureValid = false;
|
|
163
|
+
verificationResult.areRequiredClaimsIncluded = false;
|
|
164
|
+
verificationResult.isStatusValid = false;
|
|
162
165
|
}
|
|
163
166
|
try {
|
|
164
167
|
crypto_1.JwtPayload.fromJson(returnSdJwtVc.payload).validate();
|
|
165
168
|
verificationResult.isValidJwtPayload = true;
|
|
166
169
|
}
|
|
167
170
|
catch (error) {
|
|
171
|
+
_error = error;
|
|
168
172
|
verificationResult.isValidJwtPayload = false;
|
|
169
|
-
return {
|
|
170
|
-
isValid: false,
|
|
171
|
-
error,
|
|
172
|
-
verification: verificationResult,
|
|
173
|
-
sdJwtVc: returnSdJwtVc,
|
|
174
|
-
};
|
|
175
173
|
}
|
|
176
174
|
// If keyBinding is present, verify the key binding
|
|
177
175
|
try {
|
|
@@ -192,15 +190,27 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
192
190
|
}
|
|
193
191
|
}
|
|
194
192
|
catch (error) {
|
|
193
|
+
_error = error;
|
|
195
194
|
verificationResult.isKeyBindingValid = false;
|
|
196
195
|
verificationResult.containsExpectedKeyBinding = false;
|
|
197
|
-
verificationResult.
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
196
|
+
verificationResult.containsRequiredVcProperties = false;
|
|
197
|
+
}
|
|
198
|
+
try {
|
|
199
|
+
const vct = (_a = returnSdJwtVc.payload) === null || _a === void 0 ? void 0 : _a.vct;
|
|
200
|
+
if (fetchTypeMetadata && typeof vct === 'string' && vct.startsWith('https://')) {
|
|
201
|
+
// modify the uri based on https://www.ietf.org/archive/id/draft-ietf-oauth-sd-jwt-vc-04.html#section-6.3.1
|
|
202
|
+
const vctElements = vct.split('/');
|
|
203
|
+
vctElements.splice(3, 0, '.well-known/vct');
|
|
204
|
+
const vctUrl = vctElements.join('/');
|
|
205
|
+
const response = await agentContext.config.agentDependencies.fetch(vctUrl);
|
|
206
|
+
if (response.ok) {
|
|
207
|
+
const typeMetadata = await response.json();
|
|
208
|
+
returnSdJwtVc.typeMetadata = typeMetadata;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
catch (error) {
|
|
213
|
+
// we allow vct without type metadata for now
|
|
204
214
|
}
|
|
205
215
|
}
|
|
206
216
|
catch (error) {
|
|
@@ -212,7 +222,17 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
212
222
|
sdJwtVc: returnSdJwtVc,
|
|
213
223
|
};
|
|
214
224
|
}
|
|
215
|
-
|
|
225
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
226
|
+
const { isValid: _ } = verificationResult, allVerifications = __rest(verificationResult, ["isValid"]);
|
|
227
|
+
verificationResult.isValid = Object.values(allVerifications).every((verification) => verification === true);
|
|
228
|
+
if (_error) {
|
|
229
|
+
return {
|
|
230
|
+
isValid: false,
|
|
231
|
+
error: _error,
|
|
232
|
+
sdJwtVc: returnSdJwtVc,
|
|
233
|
+
verification: verificationResult,
|
|
234
|
+
};
|
|
235
|
+
}
|
|
216
236
|
return {
|
|
217
237
|
isValid: true,
|
|
218
238
|
verification: verificationResult,
|
|
@@ -440,14 +460,11 @@ let SdJwtVcService = class SdJwtVcService {
|
|
|
440
460
|
}
|
|
441
461
|
getBaseSdJwtConfig(agentContext) {
|
|
442
462
|
return {
|
|
443
|
-
hasher:
|
|
463
|
+
hasher: decodeSdJwtVc_1.sdJwtVcHasher,
|
|
444
464
|
statusListFetcher: this.getStatusListFetcher(agentContext),
|
|
445
465
|
saltGenerator: agentContext.wallet.generateNonce,
|
|
446
466
|
};
|
|
447
467
|
}
|
|
448
|
-
get hasher() {
|
|
449
|
-
return crypto_1.Hasher.hash;
|
|
450
|
-
}
|
|
451
468
|
getStatusListFetcher(agentContext) {
|
|
452
469
|
return async (uri) => {
|
|
453
470
|
const response = await (0, fetch_1.fetchWithTimeout)(agentContext.config.agentDependencies.fetch, uri);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdJwtVcService.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/SdJwtVcService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SdJwtVcService.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/SdJwtVcService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { SdJwtVcHeader, SdJwtVcPayload } from './SdJwtVcOptions';
|
|
2
|
+
import type { SdJwtVcTypeMetadata } from './typeMetadata';
|
|
3
|
+
export declare function sdJwtVcHasher(data: string | ArrayBufferLike, alg: string): Uint8Array;
|
|
4
|
+
export declare function decodeSdJwtVc<Header extends SdJwtVcHeader = SdJwtVcHeader, Payload extends SdJwtVcPayload = SdJwtVcPayload>(compactSdJwtVc: string, typeMetadata?: SdJwtVcTypeMetadata): {
|
|
5
|
+
compact: string;
|
|
6
|
+
header: Header;
|
|
7
|
+
payload: Payload;
|
|
8
|
+
prettyClaims: Payload;
|
|
9
|
+
typeMetadata: SdJwtVcTypeMetadata | undefined;
|
|
10
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sdJwtVcHasher = sdJwtVcHasher;
|
|
4
|
+
exports.decodeSdJwtVc = decodeSdJwtVc;
|
|
5
|
+
const decode_1 = require("@sd-jwt/decode");
|
|
6
|
+
const crypto_1 = require("../../crypto");
|
|
7
|
+
function sdJwtVcHasher(data, alg) {
|
|
8
|
+
return crypto_1.Hasher.hash(typeof data === 'string' ? data : new Uint8Array(data), alg);
|
|
9
|
+
}
|
|
10
|
+
function decodeSdJwtVc(compactSdJwtVc, typeMetadata) {
|
|
11
|
+
// NOTE: we use decodeSdJwtSync so we can make this method sync
|
|
12
|
+
const { jwt, disclosures } = (0, decode_1.decodeSdJwtSync)(compactSdJwtVc, sdJwtVcHasher);
|
|
13
|
+
const prettyClaims = (0, decode_1.getClaimsSync)(jwt.payload, disclosures, sdJwtVcHasher);
|
|
14
|
+
return {
|
|
15
|
+
compact: compactSdJwtVc,
|
|
16
|
+
header: jwt.header,
|
|
17
|
+
payload: jwt.payload,
|
|
18
|
+
prettyClaims: prettyClaims,
|
|
19
|
+
typeMetadata,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=decodeSdJwtVc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decodeSdJwtVc.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/decodeSdJwtVc.ts"],"names":[],"mappings":";;AAOA,sCAEC;AAED,sCAeC;AAvBD,2CAA+D;AAE/D,yCAAqC;AAErC,SAAgB,aAAa,CAAC,IAA8B,EAAE,GAAW;IACvE,OAAO,eAAM,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;AACjF,CAAC;AAED,SAAgB,aAAa,CAG3B,cAAsB,EAAE,YAAkC;IAC1D,+DAA+D;IAC/D,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,IAAA,wBAAe,EAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAC3E,MAAM,YAAY,GAAG,IAAA,sBAAa,EAAC,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,CAAA;IAE3E,OAAO;QACL,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,GAAG,CAAC,MAAgB;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAkB;QAC/B,YAAY,EAAE,YAAuB;QACrC,YAAY;KACb,CAAA;AACH,CAAC"}
|
|
@@ -20,4 +20,5 @@ __exportStar(require("./SdJwtVcService"), exports);
|
|
|
20
20
|
__exportStar(require("./SdJwtVcError"), exports);
|
|
21
21
|
__exportStar(require("./SdJwtVcOptions"), exports);
|
|
22
22
|
__exportStar(require("./repository"), exports);
|
|
23
|
+
__exportStar(require("./typeMetadata"), exports);
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,kDAA+B;AAC/B,mDAAgC;AAChC,iDAA8B;AAC9B,mDAAgC;AAChC,+CAA4B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,kDAA+B;AAC/B,mDAAgC;AAChC,iDAA8B;AAC9B,mDAAgC;AAChC,+CAA4B;AAC5B,iDAA8B"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { TagsBase } from '../../../storage/BaseRecord';
|
|
2
|
+
import type { SdJwtVc } from '../SdJwtVcService';
|
|
3
|
+
import type { SdJwtVcTypeMetadata } from '../typeMetadata';
|
|
2
4
|
import { type JwaSignatureAlgorithm } from '../../../crypto';
|
|
3
5
|
import { BaseRecord } from '../../../storage/BaseRecord';
|
|
4
6
|
export type DefaultSdJwtVcRecordTags = {
|
|
@@ -17,12 +19,15 @@ export type SdJwtVcRecordStorageProps = {
|
|
|
17
19
|
createdAt?: Date;
|
|
18
20
|
tags?: TagsBase;
|
|
19
21
|
compactSdJwtVc: string;
|
|
22
|
+
typeMetadata?: SdJwtVcTypeMetadata;
|
|
20
23
|
};
|
|
21
24
|
export declare class SdJwtVcRecord extends BaseRecord<DefaultSdJwtVcRecordTags> {
|
|
22
25
|
static readonly type = "SdJwtVcRecord";
|
|
23
26
|
readonly type = "SdJwtVcRecord";
|
|
24
27
|
compactSdJwtVc: string;
|
|
28
|
+
typeMetadata?: SdJwtVcTypeMetadata;
|
|
25
29
|
constructor(props: SdJwtVcRecordStorageProps);
|
|
30
|
+
get sdJwtVc(): SdJwtVc;
|
|
26
31
|
getTags(): {
|
|
27
32
|
vct: string;
|
|
28
33
|
sdAlg: string;
|
|
@@ -6,9 +6,8 @@ const crypto_1 = require("../../../crypto");
|
|
|
6
6
|
const BaseRecord_1 = require("../../../storage/BaseRecord");
|
|
7
7
|
const utils_1 = require("../../../utils");
|
|
8
8
|
const uuid_1 = require("../../../utils/uuid");
|
|
9
|
+
const decodeSdJwtVc_1 = require("../decodeSdJwtVc");
|
|
9
10
|
class SdJwtVcRecord extends BaseRecord_1.BaseRecord {
|
|
10
|
-
// TODO: should we also store the pretty claims so it's not needed to
|
|
11
|
-
// re-calculate the hashes each time? I think for now it's fine to re-calculate
|
|
12
11
|
constructor(props) {
|
|
13
12
|
var _a, _b, _c;
|
|
14
13
|
super();
|
|
@@ -17,9 +16,13 @@ class SdJwtVcRecord extends BaseRecord_1.BaseRecord {
|
|
|
17
16
|
this.id = (_a = props.id) !== null && _a !== void 0 ? _a : (0, uuid_1.uuid)();
|
|
18
17
|
this.createdAt = (_b = props.createdAt) !== null && _b !== void 0 ? _b : new Date();
|
|
19
18
|
this.compactSdJwtVc = props.compactSdJwtVc;
|
|
19
|
+
this.typeMetadata = props.typeMetadata;
|
|
20
20
|
this._tags = (_c = props.tags) !== null && _c !== void 0 ? _c : {};
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
+
get sdJwtVc() {
|
|
24
|
+
return (0, decodeSdJwtVc_1.decodeSdJwtVc)(this.compactSdJwtVc, this.typeMetadata);
|
|
25
|
+
}
|
|
23
26
|
getTags() {
|
|
24
27
|
const sdjwt = (0, decode_1.decodeSdJwtSync)(this.compactSdJwtVc, crypto_1.Hasher.hash);
|
|
25
28
|
const vct = sdjwt.jwt.payload['vct'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdJwtVcRecord.js","sourceRoot":"","sources":["../../../../src/modules/sd-jwt-vc/repository/SdJwtVcRecord.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"SdJwtVcRecord.js","sourceRoot":"","sources":["../../../../src/modules/sd-jwt-vc/repository/SdJwtVcRecord.ts"],"names":[],"mappings":";;;AAKA,2CAAgD;AAEhD,4CAAoE;AACpE,4DAAwD;AACxD,0CAAgD;AAChD,8CAA0C;AAC1C,oDAAgD;AAyBhD,MAAa,aAAc,SAAQ,uBAAoC;IASrE,YAAmB,KAAgC;;QACjD,KAAK,EAAE,CAAA;QARO,SAAI,GAAG,aAAa,CAAC,IAAI,CAAA;QAUvC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,EAAE,GAAG,MAAA,KAAK,CAAC,EAAE,mCAAI,IAAA,WAAI,GAAE,CAAA;YAC5B,IAAI,CAAC,SAAS,GAAG,MAAA,KAAK,CAAC,SAAS,mCAAI,IAAI,IAAI,EAAE,CAAA;YAC9C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;YAC1C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;YACtC,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAA,6BAAa,EAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;IAC9D,CAAC;IAEM,OAAO;QACZ,MAAM,KAAK,GAAG,IAAA,wBAAe,EAAC,IAAI,CAAC,cAAc,EAAE,eAAM,CAAC,IAAI,CAAC,CAAA;QAC/D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAW,CAAA;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAuB,CAAA;QAChE,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAA0B,CAAA;QAE5D,uCACK,IAAI,CAAC,KAAK,KACb,GAAG,EACH,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,SAAS,EACzB,GAAG,IACJ;IACH,CAAC;IAEM,KAAK;QACV,OAAO,uBAAe,CAAC,QAAQ,CAAC,uBAAe,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAkC,CAAC,CAAA;IACxG,CAAC;;AAzCH,sCA0CC;AAzCwB,kBAAI,GAAG,eAAe,AAAlB,CAAkB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export interface SdJwtVcTypeMetadataClaim {
|
|
2
|
+
path: Array<string | null>;
|
|
3
|
+
display?: Array<{
|
|
4
|
+
lang: string;
|
|
5
|
+
label: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
}>;
|
|
8
|
+
/**
|
|
9
|
+
* @default allowed
|
|
10
|
+
*/
|
|
11
|
+
sd?: 'allowed' | 'always' | 'never';
|
|
12
|
+
svg_id?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface SdJwtVcTypeMetadataRenderingMethodSimple {
|
|
15
|
+
logo?: {
|
|
16
|
+
uri: string;
|
|
17
|
+
'uri#integrity'?: string;
|
|
18
|
+
alt_text?: string;
|
|
19
|
+
};
|
|
20
|
+
background_color?: string;
|
|
21
|
+
text_color?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface SdJwtVcTypeMetadataRenderingMethodSvgTemplate {
|
|
24
|
+
uri: string;
|
|
25
|
+
'uri#integrity'?: string;
|
|
26
|
+
properties?: {
|
|
27
|
+
orientation?: 'portrait' | 'landscape';
|
|
28
|
+
color_scheme?: 'light' | 'dark';
|
|
29
|
+
contrast?: 'normal' | 'high';
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export interface SdJwtVcTypeMetadataDisplay {
|
|
33
|
+
lang: string;
|
|
34
|
+
name: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
rendering?: {
|
|
37
|
+
simple?: SdJwtVcTypeMetadataRenderingMethodSimple;
|
|
38
|
+
svg_templates?: SdJwtVcTypeMetadataRenderingMethodSvgTemplate[];
|
|
39
|
+
[key: string]: unknown;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
export interface SdJwtVcTypeMetadata {
|
|
43
|
+
name?: string;
|
|
44
|
+
description?: string;
|
|
45
|
+
extends?: string;
|
|
46
|
+
'extends#integrity'?: string;
|
|
47
|
+
display?: SdJwtVcTypeMetadataDisplay[];
|
|
48
|
+
claims?: SdJwtVcTypeMetadataClaim[];
|
|
49
|
+
schema?: object;
|
|
50
|
+
schema_uri?: string;
|
|
51
|
+
'schema_uri#integrity'?: string;
|
|
52
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeMetadata.js","sourceRoot":"","sources":["../../../src/modules/sd-jwt-vc/typeMetadata.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@credo-ts/core",
|
|
3
3
|
"main": "build/index",
|
|
4
4
|
"types": "build/index",
|
|
5
|
-
"version": "0.6.0-pr-2094-
|
|
5
|
+
"version": "0.6.0-pr-2094-20241120130052",
|
|
6
6
|
"files": [
|
|
7
7
|
"build"
|
|
8
8
|
],
|
|
@@ -69,7 +69,8 @@
|
|
|
69
69
|
"@types/varint": "^6.0.0",
|
|
70
70
|
"rimraf": "^4.4.0",
|
|
71
71
|
"tslog": "^4.8.2",
|
|
72
|
-
"typescript": "~5.5.2"
|
|
72
|
+
"typescript": "~5.5.2",
|
|
73
|
+
"nock": "^14.0.0-beta.16"
|
|
73
74
|
},
|
|
74
75
|
"scripts": {
|
|
75
76
|
"build": "pnpm run clean && pnpm run compile",
|