@sphereon/ssi-types 0.32.0 → 0.32.1-feature.MWALL.715.47
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/mapper/credential-mapper.d.ts.map +1 -1
- package/dist/mapper/credential-mapper.js +8 -11
- package/dist/mapper/credential-mapper.js.map +1 -1
- package/dist/types/dcql.d.ts +33 -0
- package/dist/types/dcql.d.ts.map +1 -0
- package/dist/types/dcql.js +4 -0
- package/dist/types/dcql.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/sd-jwt-type-metadata.d.ts +58 -14
- package/dist/types/sd-jwt-type-metadata.d.ts.map +1 -1
- package/dist/types/sd-jwt-type-metadata.js +0 -81
- package/dist/types/sd-jwt-type-metadata.js.map +1 -1
- package/package.json +3 -3
- package/src/mapper/credential-mapper.ts +34 -34
- package/src/types/dcql.ts +39 -0
- package/src/types/index.ts +1 -0
- package/src/types/mso_mdoc.ts +2 -2
- package/src/types/sd-jwt-type-metadata.ts +66 -58
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-mapper.d.ts","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"credential-mapper.d.ts","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,15 +10,12 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
10
|
}
|
|
11
11
|
return t;
|
|
12
12
|
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
14
|
exports.CredentialMapper = void 0;
|
|
18
|
-
const jwt_decode_1 = __importDefault(require("jwt-decode"));
|
|
19
15
|
const types_1 = require("../types");
|
|
20
16
|
const mso_mdoc_1 = require("../types/mso_mdoc");
|
|
21
17
|
const utils_1 = require("../utils");
|
|
18
|
+
const jwt_decode_1 = require("jwt-decode");
|
|
22
19
|
class CredentialMapper {
|
|
23
20
|
/**
|
|
24
21
|
* Decodes a compact SD-JWT vc to it's decoded variant. This method can be used when the hasher implementation used is Async, and therefore not suitable for usage
|
|
@@ -39,8 +36,8 @@ class CredentialMapper {
|
|
|
39
36
|
static decodeVerifiablePresentation(presentation, hasher) {
|
|
40
37
|
var _a;
|
|
41
38
|
if (CredentialMapper.isJwtEncoded(presentation)) {
|
|
42
|
-
const payload = (0, jwt_decode_1.
|
|
43
|
-
const header = (0, jwt_decode_1.
|
|
39
|
+
const payload = (0, jwt_decode_1.jwtDecode)(presentation);
|
|
40
|
+
const header = (0, jwt_decode_1.jwtDecode)(presentation, { header: true });
|
|
44
41
|
payload.vp.proof = {
|
|
45
42
|
type: types_1.IProofType.JwtProof2020,
|
|
46
43
|
created: payload.nbf,
|
|
@@ -87,8 +84,8 @@ class CredentialMapper {
|
|
|
87
84
|
static decodeVerifiableCredential(credential, hasher) {
|
|
88
85
|
var _a;
|
|
89
86
|
if (CredentialMapper.isJwtEncoded(credential)) {
|
|
90
|
-
const payload = (0, jwt_decode_1.
|
|
91
|
-
const header = (0, jwt_decode_1.
|
|
87
|
+
const payload = (0, jwt_decode_1.jwtDecode)(credential);
|
|
88
|
+
const header = (0, jwt_decode_1.jwtDecode)(credential, { header: true });
|
|
92
89
|
payload.vc.proof = {
|
|
93
90
|
type: types_1.IProofType.JwtProof2020,
|
|
94
91
|
created: payload.nbf,
|
|
@@ -276,7 +273,7 @@ class CredentialMapper {
|
|
|
276
273
|
}
|
|
277
274
|
// If the VC is not an encoded/decoded SD-JWT, we assume it will be a W3C VC
|
|
278
275
|
const proof = CredentialMapper.getFirstProof(verifiableCredential);
|
|
279
|
-
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? (_a = proof.jwt) !== null && _a !== void 0 ? _a : verifiableCredential : verifiableCredential;
|
|
276
|
+
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? ((_a = proof.jwt) !== null && _a !== void 0 ? _a : verifiableCredential) : verifiableCredential;
|
|
280
277
|
if (!original) {
|
|
281
278
|
throw Error('Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof');
|
|
282
279
|
}
|
|
@@ -445,7 +442,7 @@ class CredentialMapper {
|
|
|
445
442
|
original.iss !== undefined);
|
|
446
443
|
}
|
|
447
444
|
static jwtEncodedPresentationToUniformPresentation(jwt, makeCredentialsUniform = true, opts) {
|
|
448
|
-
return CredentialMapper.jwtDecodedPresentationToUniformPresentation((0, jwt_decode_1.
|
|
445
|
+
return CredentialMapper.jwtDecodedPresentationToUniformPresentation((0, jwt_decode_1.jwtDecode)(jwt), makeCredentialsUniform, opts);
|
|
449
446
|
}
|
|
450
447
|
static jwtDecodedPresentationToUniformPresentation(decoded, makeCredentialsUniform = true, opts) {
|
|
451
448
|
const { iss, aud, jti, vp } = decoded, rest = __rest(decoded, ["iss", "aud", "jti", "vp"]);
|
|
@@ -542,7 +539,7 @@ class CredentialMapper {
|
|
|
542
539
|
return uniformPresentation;
|
|
543
540
|
}
|
|
544
541
|
static jwtEncodedCredentialToUniformCredential(jwt, opts) {
|
|
545
|
-
return CredentialMapper.jwtDecodedCredentialToUniformCredential((0, jwt_decode_1.
|
|
542
|
+
return CredentialMapper.jwtDecodedCredentialToUniformCredential((0, jwt_decode_1.jwtDecode)(jwt), opts);
|
|
546
543
|
}
|
|
547
544
|
static jwtDecodedCredentialToUniformCredential(decoded, opts) {
|
|
548
545
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-mapper.js","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"credential-mapper.js","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface DcqlQuery {
|
|
2
|
+
credentials: DcqlCredentialQuery[];
|
|
3
|
+
}
|
|
4
|
+
export interface DcqlCredentialQuery {
|
|
5
|
+
id: string;
|
|
6
|
+
format: string;
|
|
7
|
+
alg?: string[];
|
|
8
|
+
claims: DcqlClaim[];
|
|
9
|
+
meta?: Record<string, any>;
|
|
10
|
+
}
|
|
11
|
+
export interface DcqlClaim {
|
|
12
|
+
namespace: string;
|
|
13
|
+
claim_name: string;
|
|
14
|
+
filter?: DcqlFilter;
|
|
15
|
+
}
|
|
16
|
+
export interface DcqlFilter {
|
|
17
|
+
type: 'string' | 'number' | 'boolean';
|
|
18
|
+
pattern?: string;
|
|
19
|
+
minimum?: number;
|
|
20
|
+
maximum?: number;
|
|
21
|
+
}
|
|
22
|
+
export interface DcqlPresentationResult {
|
|
23
|
+
canBeSatisfied: boolean;
|
|
24
|
+
credential_matches: Record<string, DcqlCredentialMatch>;
|
|
25
|
+
invalid_matches?: Record<string, DcqlCredentialMatch>;
|
|
26
|
+
}
|
|
27
|
+
export interface DcqlCredentialMatch {
|
|
28
|
+
success: boolean;
|
|
29
|
+
input_credential_index: number;
|
|
30
|
+
claim_set_index?: number;
|
|
31
|
+
output: any;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=dcql.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dcql.d.ts","sourceRoot":"","sources":["../../src/types/dcql.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,mBAAmB,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,SAAS,EAAE,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;IACrC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;CACtD;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,GAAG,CAAA;CACZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dcql.js","sourceRoot":"","sources":["../../src/types/dcql.ts"],"names":[],"mappings":";AAAA,mIAAmI"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,OAAO,CAAA;AACrB,cAAc,MAAM,CAAA;AACpB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,OAAO,CAAA;AACrB,cAAc,MAAM,CAAA;AACpB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,QAAQ,CAAA"}
|
package/dist/types/index.js
CHANGED
|
@@ -25,4 +25,5 @@ __exportStar(require("./jose"), exports);
|
|
|
25
25
|
__exportStar(require("./cose"), exports);
|
|
26
26
|
__exportStar(require("./mso_mdoc"), exports);
|
|
27
27
|
__exportStar(require("./metadata-types"), exports);
|
|
28
|
+
__exportStar(require("./dcql"), exports);
|
|
28
29
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,wCAAqB;AACrB,uCAAoB;AACpB,4CAAyB;AACzB,8CAA2B;AAC3B,yDAAsC;AACtC,2CAAwB;AACxB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,mDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,wCAAqB;AACrB,uCAAoB;AACpB,4CAAyB;AACzB,8CAA2B;AAC3B,yDAAsC;AACtC,2CAAwB;AACxB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,mDAAgC;AAChC,yCAAsB"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { AsyncHasher } from './sd-jwt-vc';
|
|
2
1
|
/**
|
|
3
2
|
* Represents the metadata associated with a specific SD-JWT VC type.
|
|
4
3
|
*/
|
|
5
|
-
interface SdJwtTypeMetadata {
|
|
4
|
+
export interface SdJwtTypeMetadata {
|
|
6
5
|
/**
|
|
7
6
|
* REQUIRED. The VC type URI.
|
|
8
7
|
*/
|
|
@@ -38,12 +37,50 @@ interface SdJwtTypeMetadata {
|
|
|
38
37
|
/**
|
|
39
38
|
* OPTIONAL. Metadata for the claims within the VC.
|
|
40
39
|
*/
|
|
41
|
-
claims?: Array<
|
|
40
|
+
claims?: Array<SdJwtClaimMetadata>;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Represents the metadata associated with a specific SD-JWT claim.
|
|
44
|
+
*/
|
|
45
|
+
export interface SdJwtClaimMetadata {
|
|
46
|
+
/**
|
|
47
|
+
* REQUIRED. An array indicating the claim or claims that are being addressed.
|
|
48
|
+
*/
|
|
49
|
+
path: Array<SdJwtClaimPath>;
|
|
50
|
+
/**
|
|
51
|
+
* OPTIONAL. Display information for the claim.
|
|
52
|
+
*/
|
|
53
|
+
display?: Array<SdJwtClaimDisplayMetadata>;
|
|
54
|
+
/**
|
|
55
|
+
* OPTIONAL. A string indicating whether the claim is selectively disclosable.
|
|
56
|
+
*/
|
|
57
|
+
sd?: SdJwtClaimSelectiveDisclosure;
|
|
58
|
+
/**
|
|
59
|
+
* OPTIONAL. A string defining the ID of the claim for reference in the SVG template.
|
|
60
|
+
*/
|
|
61
|
+
svg_id?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Represents claim display metadata for a specific language.
|
|
65
|
+
*/
|
|
66
|
+
export interface SdJwtClaimDisplayMetadata {
|
|
67
|
+
/**
|
|
68
|
+
* REQUIRED. Language tag for the display information.
|
|
69
|
+
*/
|
|
70
|
+
lang: string;
|
|
71
|
+
/**
|
|
72
|
+
* REQUIRED. A human-readable label for the claim, intended for end users.
|
|
73
|
+
*/
|
|
74
|
+
label: string;
|
|
75
|
+
/**
|
|
76
|
+
* REQUIRED. A human-readable description for the claim, intended for end users.
|
|
77
|
+
*/
|
|
78
|
+
description?: string;
|
|
42
79
|
}
|
|
43
80
|
/**
|
|
44
81
|
* Represents display metadata for a specific language.
|
|
45
82
|
*/
|
|
46
|
-
interface SdJwtTypeDisplayMetadata {
|
|
83
|
+
export interface SdJwtTypeDisplayMetadata {
|
|
47
84
|
/**
|
|
48
85
|
* REQUIRED. Language tag for the display information.
|
|
49
86
|
*/
|
|
@@ -64,7 +101,7 @@ interface SdJwtTypeDisplayMetadata {
|
|
|
64
101
|
/**
|
|
65
102
|
* Contains rendering metadata for different methods.
|
|
66
103
|
*/
|
|
67
|
-
interface SdJwtTypeRenderingMetadata {
|
|
104
|
+
export interface SdJwtTypeRenderingMetadata {
|
|
68
105
|
/**
|
|
69
106
|
* OPTIONAL. Simple rendering method metadata.
|
|
70
107
|
*/
|
|
@@ -77,7 +114,7 @@ interface SdJwtTypeRenderingMetadata {
|
|
|
77
114
|
/**
|
|
78
115
|
* Represents metadata for simple rendering.
|
|
79
116
|
*/
|
|
80
|
-
interface SdJwtSimpleRenderingMetadata {
|
|
117
|
+
export interface SdJwtSimpleRenderingMetadata {
|
|
81
118
|
/**
|
|
82
119
|
* OPTIONAL. Metadata for the logo image.
|
|
83
120
|
*/
|
|
@@ -94,7 +131,7 @@ interface SdJwtSimpleRenderingMetadata {
|
|
|
94
131
|
/**
|
|
95
132
|
* Represents metadata for a logo.
|
|
96
133
|
*/
|
|
97
|
-
interface SdJwtLogoMetadata {
|
|
134
|
+
export interface SdJwtLogoMetadata {
|
|
98
135
|
/**
|
|
99
136
|
* REQUIRED. URI pointing to the logo image.
|
|
100
137
|
*/
|
|
@@ -111,7 +148,7 @@ interface SdJwtLogoMetadata {
|
|
|
111
148
|
/**
|
|
112
149
|
* Represents metadata for SVG templates.
|
|
113
150
|
*/
|
|
114
|
-
interface SdJwtSVGTemplateMetadata {
|
|
151
|
+
export interface SdJwtSVGTemplateMetadata {
|
|
115
152
|
/**
|
|
116
153
|
* REQUIRED. URI pointing to the SVG template.
|
|
117
154
|
*/
|
|
@@ -128,7 +165,7 @@ interface SdJwtSVGTemplateMetadata {
|
|
|
128
165
|
/**
|
|
129
166
|
* Contains properties for SVG templates.
|
|
130
167
|
*/
|
|
131
|
-
interface SdJwtSVGTemplateProperties {
|
|
168
|
+
export interface SdJwtSVGTemplateProperties {
|
|
132
169
|
/**
|
|
133
170
|
* OPTIONAL. The orientation for which the SVG template is optimized.
|
|
134
171
|
*/
|
|
@@ -138,10 +175,17 @@ interface SdJwtSVGTemplateProperties {
|
|
|
138
175
|
*/
|
|
139
176
|
color_scheme?: string;
|
|
140
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* A string indicates that the respective key is to be selected.
|
|
180
|
+
* A null value indicates that all elements of the currently selected array(s) are to be selected.
|
|
181
|
+
* A non-negative integer indicates that the respective index in an array is to be selected.
|
|
182
|
+
*/
|
|
183
|
+
export type SdJwtClaimPath = string | null | number;
|
|
184
|
+
/**
|
|
185
|
+
* always: The Issuer MUST make the claim selectively disclosable.
|
|
186
|
+
* allowed: The Issuer MAY make the claim selectively disclosable.
|
|
187
|
+
* never: The Issuer MUST NOT make the claim selectively disclosable.
|
|
188
|
+
*/
|
|
189
|
+
export type SdJwtClaimSelectiveDisclosure = 'always' | 'allowed' | 'never';
|
|
141
190
|
export type SdJwtTypeHasher = (input: any, alg?: string) => string;
|
|
142
|
-
export declare function fetchSdJwtTypeMetadataFromVctUrl(vct: string, opts?: {
|
|
143
|
-
hasher?: AsyncHasher;
|
|
144
|
-
integrity?: string;
|
|
145
|
-
}): Promise<SdJwtTypeMetadata>;
|
|
146
|
-
export {};
|
|
147
191
|
//# sourceMappingURL=sd-jwt-type-metadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-jwt-type-metadata.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sd-jwt-type-metadata.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,84 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.fetchSdJwtTypeMetadataFromVctUrl = fetchSdJwtTypeMetadataFromVctUrl;
|
|
36
|
-
const u8a = __importStar(require("uint8arrays"));
|
|
37
|
-
// Helper function to fetch API with error handling
|
|
38
|
-
function fetchUrlWithErrorHandling(url) {
|
|
39
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
const response = yield fetch(url);
|
|
41
|
-
if (!response.ok) {
|
|
42
|
-
throw new Error(`${response.status}: ${response.statusText}`);
|
|
43
|
-
}
|
|
44
|
-
return response;
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
function validateIntegrity(input, integrityValue, hasher, alg) {
|
|
48
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
const hash = yield hasher(input, alg !== null && alg !== void 0 ? alg : 'sha256');
|
|
50
|
-
return u8a.toString(hash, 'utf-8') === integrityValue;
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
// Fetch and validate Type Metadata
|
|
54
|
-
function fetchSdJwtTypeMetadataFromVctUrl(vct, opts) {
|
|
55
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
-
const url = new URL(vct);
|
|
57
|
-
const wellKnownUrl = `${url.origin}/.well-known/vct${url.pathname}`;
|
|
58
|
-
const response = yield fetchUrlWithErrorHandling(wellKnownUrl);
|
|
59
|
-
const metadata = yield response.json();
|
|
60
|
-
assertValidTypeMetadata(metadata, vct);
|
|
61
|
-
if ((opts === null || opts === void 0 ? void 0 : opts.integrity) && opts.hasher) {
|
|
62
|
-
if (!(yield validateIntegrity(metadata, opts.integrity, opts.hasher))) {
|
|
63
|
-
throw new Error('Integrity check failed');
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return metadata;
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
function assertValidTypeMetadata(metadata, vct) {
|
|
70
|
-
if (metadata.vct !== vct) {
|
|
71
|
-
throw new Error('VCT mismatch in metadata and credential');
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
/*
|
|
75
|
-
// Example usage
|
|
76
|
-
try {
|
|
77
|
-
const vct = 'https://betelgeuse.example.com/education_credential'
|
|
78
|
-
const typeMetadata = await fetchSdJwtTypeMetadataFromVctUrl(vct)
|
|
79
|
-
console.log('Type Metadata retrieved successfully:', typeMetadata)
|
|
80
|
-
} catch (error) {
|
|
81
|
-
console.error('Error fetching type metadata:', error.message)
|
|
82
|
-
}
|
|
83
|
-
*/
|
|
84
3
|
//# sourceMappingURL=sd-jwt-type-metadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-jwt-type-metadata.js","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sd-jwt-type-metadata.js","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-types",
|
|
3
3
|
"description": "SSI Common Types",
|
|
4
|
-
"version": "0.32.
|
|
4
|
+
"version": "0.32.1-feature.MWALL.715.47+99c3f8e7",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.26",
|
|
14
14
|
"debug": "^4.3.5",
|
|
15
15
|
"events": "^3.3.0",
|
|
16
|
-
"jwt-decode": "^
|
|
16
|
+
"jwt-decode": "^4.0.0",
|
|
17
17
|
"uint8arrays": "3.1.1"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
"DIDs"
|
|
48
48
|
],
|
|
49
49
|
"nx": {},
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "99c3f8e784f7b47c48aa7b0d4f1f270f37c37315"
|
|
51
51
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { IssuerType } from '@veramo/core'
|
|
2
|
-
import jwt_decode from 'jwt-decode'
|
|
3
2
|
import {
|
|
4
3
|
AsyncHasher,
|
|
5
4
|
decodeMdocDeviceResponse,
|
|
@@ -45,6 +44,7 @@ import { getMdocDecodedPayload, MdocDocument } from '../types/mso_mdoc'
|
|
|
45
44
|
import { ObjectUtils } from '../utils'
|
|
46
45
|
import { com } from '@sphereon/kmp-mdoc-core'
|
|
47
46
|
import DeviceResponseCbor = com.sphereon.mdoc.data.device.DeviceResponseCbor
|
|
47
|
+
import { jwtDecode } from 'jwt-decode'
|
|
48
48
|
|
|
49
49
|
export class CredentialMapper {
|
|
50
50
|
/**
|
|
@@ -66,11 +66,11 @@ export class CredentialMapper {
|
|
|
66
66
|
*/
|
|
67
67
|
static decodeVerifiablePresentation(
|
|
68
68
|
presentation: OriginalVerifiablePresentation,
|
|
69
|
-
hasher?: Hasher
|
|
69
|
+
hasher?: Hasher,
|
|
70
70
|
): JwtDecodedVerifiablePresentation | IVerifiablePresentation | SdJwtDecodedVerifiableCredential | MdocOid4vpMdocVpToken | MdocDeviceResponse {
|
|
71
71
|
if (CredentialMapper.isJwtEncoded(presentation)) {
|
|
72
|
-
const payload =
|
|
73
|
-
const header =
|
|
72
|
+
const payload = jwtDecode(presentation as string) as JwtDecodedVerifiablePresentation
|
|
73
|
+
const header = jwtDecode(presentation as string, { header: true }) as Record<string, any>
|
|
74
74
|
|
|
75
75
|
payload.vp.proof = {
|
|
76
76
|
type: IProofType.JwtProof2020,
|
|
@@ -111,11 +111,11 @@ export class CredentialMapper {
|
|
|
111
111
|
*/
|
|
112
112
|
static decodeVerifiableCredential(
|
|
113
113
|
credential: OriginalVerifiableCredential,
|
|
114
|
-
hasher?: Hasher
|
|
114
|
+
hasher?: Hasher,
|
|
115
115
|
): JwtDecodedVerifiableCredential | IVerifiableCredential | SdJwtDecodedVerifiableCredential {
|
|
116
116
|
if (CredentialMapper.isJwtEncoded(credential)) {
|
|
117
|
-
const payload =
|
|
118
|
-
const header =
|
|
117
|
+
const payload = jwtDecode(credential as string) as JwtDecodedVerifiableCredential
|
|
118
|
+
const header = jwtDecode(credential as string, { header: true }) as Record<string, any>
|
|
119
119
|
payload.vc.proof = {
|
|
120
120
|
type: IProofType.JwtProof2020,
|
|
121
121
|
created: payload.nbf,
|
|
@@ -151,7 +151,7 @@ export class CredentialMapper {
|
|
|
151
151
|
*/
|
|
152
152
|
static toWrappedVerifiablePresentation(
|
|
153
153
|
originalPresentation: OriginalVerifiablePresentation,
|
|
154
|
-
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
|
|
154
|
+
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
|
|
155
155
|
): WrappedVerifiablePresentation {
|
|
156
156
|
// MSO_MDOC
|
|
157
157
|
if (CredentialMapper.isMsoMdocDecodedPresentation(originalPresentation) || CredentialMapper.isMsoMdocOid4VPEncoded(originalPresentation)) {
|
|
@@ -166,7 +166,7 @@ export class CredentialMapper {
|
|
|
166
166
|
}
|
|
167
167
|
|
|
168
168
|
const mdocCredentials = deviceResponse.documents?.map(
|
|
169
|
-
(doc) => CredentialMapper.toWrappedVerifiableCredential(doc, opts) as WrappedMdocCredential
|
|
169
|
+
(doc) => CredentialMapper.toWrappedVerifiableCredential(doc, opts) as WrappedMdocCredential,
|
|
170
170
|
)
|
|
171
171
|
if (!mdocCredentials || mdocCredentials.length === 0) {
|
|
172
172
|
throw new Error('could not extract any mdoc credentials from mdoc device response')
|
|
@@ -209,7 +209,7 @@ export class CredentialMapper {
|
|
|
209
209
|
typeof originalPresentation !== 'string' && CredentialMapper.hasJWTProofType(originalPresentation) ? proof?.jwt : originalPresentation
|
|
210
210
|
if (!original) {
|
|
211
211
|
throw Error(
|
|
212
|
-
'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof'
|
|
212
|
+
'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof',
|
|
213
213
|
)
|
|
214
214
|
}
|
|
215
215
|
const decoded = CredentialMapper.decodeVerifiablePresentation(original) as IVerifiablePresentation | JwtDecodedVerifiablePresentation
|
|
@@ -237,7 +237,7 @@ export class CredentialMapper {
|
|
|
237
237
|
? []
|
|
238
238
|
: (CredentialMapper.toWrappedVerifiableCredentials(
|
|
239
239
|
vp.verifiableCredential ?? [] /*.map(value => value.original)*/,
|
|
240
|
-
opts
|
|
240
|
+
opts,
|
|
241
241
|
) as WrappedW3CVerifiableCredential[])
|
|
242
242
|
|
|
243
243
|
const presentation = {
|
|
@@ -265,7 +265,7 @@ export class CredentialMapper {
|
|
|
265
265
|
*/
|
|
266
266
|
static toWrappedVerifiableCredentials(
|
|
267
267
|
verifiableCredentials: OriginalVerifiableCredential[],
|
|
268
|
-
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
|
|
268
|
+
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
|
|
269
269
|
): WrappedVerifiableCredential[] {
|
|
270
270
|
return verifiableCredentials.map((vc) => CredentialMapper.toWrappedVerifiableCredential(vc, opts))
|
|
271
271
|
}
|
|
@@ -281,7 +281,7 @@ export class CredentialMapper {
|
|
|
281
281
|
*/
|
|
282
282
|
static toWrappedVerifiableCredential(
|
|
283
283
|
verifiableCredential: OriginalVerifiableCredential,
|
|
284
|
-
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
|
|
284
|
+
opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
|
|
285
285
|
): WrappedVerifiableCredential {
|
|
286
286
|
// MSO_MDOC
|
|
287
287
|
if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential) || CredentialMapper.isMsoMdocOid4VPEncoded(verifiableCredential)) {
|
|
@@ -323,10 +323,10 @@ export class CredentialMapper {
|
|
|
323
323
|
|
|
324
324
|
// If the VC is not an encoded/decoded SD-JWT, we assume it will be a W3C VC
|
|
325
325
|
const proof = CredentialMapper.getFirstProof(verifiableCredential)
|
|
326
|
-
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? proof.jwt ?? verifiableCredential : verifiableCredential
|
|
326
|
+
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? (proof.jwt ?? verifiableCredential) : verifiableCredential
|
|
327
327
|
if (!original) {
|
|
328
328
|
throw Error(
|
|
329
|
-
'Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof'
|
|
329
|
+
'Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof',
|
|
330
330
|
)
|
|
331
331
|
}
|
|
332
332
|
const decoded = CredentialMapper.decodeVerifiableCredential(original) as JwtDecodedVerifiableCredential | IVerifiableCredential
|
|
@@ -442,7 +442,7 @@ export class CredentialMapper {
|
|
|
442
442
|
}
|
|
443
443
|
|
|
444
444
|
public static isW3cPresentation(
|
|
445
|
-
presentation: UniformVerifiablePresentation | IPresentation | SdJwtDecodedVerifiableCredential | DeviceResponseCbor
|
|
445
|
+
presentation: UniformVerifiablePresentation | IPresentation | SdJwtDecodedVerifiableCredential | DeviceResponseCbor,
|
|
446
446
|
): presentation is IPresentation {
|
|
447
447
|
return (
|
|
448
448
|
typeof presentation === 'object' &&
|
|
@@ -452,7 +452,7 @@ export class CredentialMapper {
|
|
|
452
452
|
}
|
|
453
453
|
|
|
454
454
|
public static isSdJwtDecodedCredentialPayload(
|
|
455
|
-
credential: ICredential | SdJwtDecodedVerifiableCredentialPayload
|
|
455
|
+
credential: ICredential | SdJwtDecodedVerifiableCredentialPayload,
|
|
456
456
|
): credential is SdJwtDecodedVerifiableCredentialPayload {
|
|
457
457
|
return typeof credential === 'object' && 'vct' in credential
|
|
458
458
|
}
|
|
@@ -484,7 +484,7 @@ export class CredentialMapper {
|
|
|
484
484
|
}
|
|
485
485
|
|
|
486
486
|
public static isSdJwtDecodedCredential(
|
|
487
|
-
original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation
|
|
487
|
+
original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation,
|
|
488
488
|
): original is SdJwtDecodedVerifiableCredential {
|
|
489
489
|
return (
|
|
490
490
|
typeof original === 'object' &&
|
|
@@ -493,7 +493,7 @@ export class CredentialMapper {
|
|
|
493
493
|
}
|
|
494
494
|
|
|
495
495
|
public static isMsoMdocDecodedCredential(
|
|
496
|
-
original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation
|
|
496
|
+
original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation,
|
|
497
497
|
): original is MdocDocument {
|
|
498
498
|
return typeof original === 'object' && 'issuerSigned' in original && (<MdocDocument>original).issuerSigned !== undefined
|
|
499
499
|
}
|
|
@@ -528,15 +528,15 @@ export class CredentialMapper {
|
|
|
528
528
|
static jwtEncodedPresentationToUniformPresentation(
|
|
529
529
|
jwt: string,
|
|
530
530
|
makeCredentialsUniform: boolean = true,
|
|
531
|
-
opts?: { maxTimeSkewInMS?: number }
|
|
531
|
+
opts?: { maxTimeSkewInMS?: number },
|
|
532
532
|
): IPresentation {
|
|
533
|
-
return CredentialMapper.jwtDecodedPresentationToUniformPresentation(
|
|
533
|
+
return CredentialMapper.jwtDecodedPresentationToUniformPresentation(jwtDecode(jwt), makeCredentialsUniform, opts)
|
|
534
534
|
}
|
|
535
535
|
|
|
536
536
|
static jwtDecodedPresentationToUniformPresentation(
|
|
537
537
|
decoded: JwtDecodedVerifiablePresentation,
|
|
538
538
|
makeCredentialsUniform: boolean = true,
|
|
539
|
-
opts?: { maxTimeSkewInMS?: number }
|
|
539
|
+
opts?: { maxTimeSkewInMS?: number },
|
|
540
540
|
): IVerifiablePresentation {
|
|
541
541
|
const { iss, aud, jti, vp, ...rest } = decoded
|
|
542
542
|
|
|
@@ -583,7 +583,7 @@ export class CredentialMapper {
|
|
|
583
583
|
opts?: {
|
|
584
584
|
maxTimeSkewInMS?: number
|
|
585
585
|
hasher?: Hasher
|
|
586
|
-
}
|
|
586
|
+
},
|
|
587
587
|
): IVerifiableCredential {
|
|
588
588
|
if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential)) {
|
|
589
589
|
return mdocDecodedCredentialToUniformCredential(verifiableCredential)
|
|
@@ -597,7 +597,7 @@ export class CredentialMapper {
|
|
|
597
597
|
: verifiableCredential
|
|
598
598
|
if (!original) {
|
|
599
599
|
throw Error(
|
|
600
|
-
'Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore'
|
|
600
|
+
'Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore',
|
|
601
601
|
)
|
|
602
602
|
}
|
|
603
603
|
const decoded = CredentialMapper.decodeVerifiableCredential(original, opts?.hasher)
|
|
@@ -620,7 +620,7 @@ export class CredentialMapper {
|
|
|
620
620
|
|
|
621
621
|
static toUniformPresentation(
|
|
622
622
|
presentation: OriginalVerifiablePresentation,
|
|
623
|
-
opts?: { maxTimeSkewInMS?: number; addContextIfMissing?: boolean; hasher?: Hasher }
|
|
623
|
+
opts?: { maxTimeSkewInMS?: number; addContextIfMissing?: boolean; hasher?: Hasher },
|
|
624
624
|
): IVerifiablePresentation {
|
|
625
625
|
if (CredentialMapper.isSdJwtDecodedCredential(presentation)) {
|
|
626
626
|
throw new Error('Converting SD-JWT VC to uniform VP is not supported.')
|
|
@@ -632,7 +632,7 @@ export class CredentialMapper {
|
|
|
632
632
|
const original = typeof presentation !== 'string' && CredentialMapper.hasJWTProofType(presentation) ? proof?.jwt : presentation
|
|
633
633
|
if (!original) {
|
|
634
634
|
throw Error(
|
|
635
|
-
'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof'
|
|
635
|
+
'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof',
|
|
636
636
|
)
|
|
637
637
|
}
|
|
638
638
|
const decoded = CredentialMapper.decodeVerifiablePresentation(original, opts?.hasher)
|
|
@@ -649,7 +649,7 @@ export class CredentialMapper {
|
|
|
649
649
|
}
|
|
650
650
|
|
|
651
651
|
uniformPresentation.verifiableCredential = uniformPresentation.verifiableCredential?.map((vc) =>
|
|
652
|
-
CredentialMapper.toUniformCredential(vc, opts)
|
|
652
|
+
CredentialMapper.toUniformCredential(vc, opts),
|
|
653
653
|
) as IVerifiableCredential[] // We cast it because we IPresentation needs a VC. The internal Credential doesn't have the required Proof anymore (that is intended)
|
|
654
654
|
return uniformPresentation
|
|
655
655
|
}
|
|
@@ -658,14 +658,14 @@ export class CredentialMapper {
|
|
|
658
658
|
jwt: string,
|
|
659
659
|
opts?: {
|
|
660
660
|
maxTimeSkewInMS?: number
|
|
661
|
-
}
|
|
661
|
+
},
|
|
662
662
|
): IVerifiableCredential {
|
|
663
|
-
return CredentialMapper.jwtDecodedCredentialToUniformCredential(
|
|
663
|
+
return CredentialMapper.jwtDecodedCredentialToUniformCredential(jwtDecode(jwt), opts)
|
|
664
664
|
}
|
|
665
665
|
|
|
666
666
|
static jwtDecodedCredentialToUniformCredential(
|
|
667
667
|
decoded: JwtDecodedVerifiableCredential,
|
|
668
|
-
opts?: { maxTimeSkewInMS?: number }
|
|
668
|
+
opts?: { maxTimeSkewInMS?: number },
|
|
669
669
|
): IVerifiableCredential {
|
|
670
670
|
const { exp, nbf, iss, vc, sub, jti, ...rest } = decoded
|
|
671
671
|
const credential: IVerifiableCredential = {
|
|
@@ -833,7 +833,7 @@ export class CredentialMapper {
|
|
|
833
833
|
}
|
|
834
834
|
|
|
835
835
|
static toCompactJWT(
|
|
836
|
-
jwtDocument: W3CVerifiableCredential | JwtDecodedVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiablePresentation | string
|
|
836
|
+
jwtDocument: W3CVerifiableCredential | JwtDecodedVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiablePresentation | string,
|
|
837
837
|
): string {
|
|
838
838
|
if (!jwtDocument || CredentialMapper.detectDocumentType(jwtDocument) !== DocumentFormat.JWT) {
|
|
839
839
|
throw Error('Cannot convert non JWT credential to JWT')
|
|
@@ -863,7 +863,7 @@ export class CredentialMapper {
|
|
|
863
863
|
| JwtDecodedVerifiablePresentation
|
|
864
864
|
| SdJwtDecodedVerifiableCredential
|
|
865
865
|
| MdocDeviceResponse
|
|
866
|
-
| MdocDocument
|
|
866
|
+
| MdocDocument,
|
|
867
867
|
): DocumentFormat {
|
|
868
868
|
if (this.isMsoMdocOid4VPEncoded(document as any) || this.isMsoMdocDecodedCredential(document as any)) {
|
|
869
869
|
return DocumentFormat.MSO_MDOC
|
|
@@ -891,7 +891,7 @@ export class CredentialMapper {
|
|
|
891
891
|
}
|
|
892
892
|
|
|
893
893
|
private static hasJWTProofType(
|
|
894
|
-
document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation
|
|
894
|
+
document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation,
|
|
895
895
|
): boolean {
|
|
896
896
|
if (typeof document === 'string') {
|
|
897
897
|
return false
|
|
@@ -900,7 +900,7 @@ export class CredentialMapper {
|
|
|
900
900
|
}
|
|
901
901
|
|
|
902
902
|
private static getFirstProof(
|
|
903
|
-
document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation
|
|
903
|
+
document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation,
|
|
904
904
|
): IProof | undefined {
|
|
905
905
|
if (!document || typeof document === 'string') {
|
|
906
906
|
return undefined
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// FIXME Temporary minimal DCQL schema for PD manager, the DcqlQuery used by Animo does not serialize properly (over REST / Veramo)
|
|
2
|
+
|
|
3
|
+
export interface DcqlQuery {
|
|
4
|
+
credentials: DcqlCredentialQuery[]
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export interface DcqlCredentialQuery {
|
|
8
|
+
id: string
|
|
9
|
+
format: string
|
|
10
|
+
alg?: string[]
|
|
11
|
+
claims: DcqlClaim[]
|
|
12
|
+
meta?: Record<string, any>
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface DcqlClaim {
|
|
16
|
+
namespace: string
|
|
17
|
+
claim_name: string
|
|
18
|
+
filter?: DcqlFilter
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface DcqlFilter {
|
|
22
|
+
type: 'string' | 'number' | 'boolean'
|
|
23
|
+
pattern?: string
|
|
24
|
+
minimum?: number
|
|
25
|
+
maximum?: number
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface DcqlPresentationResult {
|
|
29
|
+
canBeSatisfied: boolean
|
|
30
|
+
credential_matches: Record<string, DcqlCredentialMatch>
|
|
31
|
+
invalid_matches?: Record<string, DcqlCredentialMatch>
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface DcqlCredentialMatch {
|
|
35
|
+
success: boolean
|
|
36
|
+
input_credential_index: number
|
|
37
|
+
claim_set_index?: number
|
|
38
|
+
output: any
|
|
39
|
+
}
|
package/src/types/index.ts
CHANGED
package/src/types/mso_mdoc.ts
CHANGED
|
@@ -108,7 +108,7 @@ export function getMdocDecodedPayload(mdoc: MdocDocument): MdocDecodedPayload {
|
|
|
108
108
|
...acc,
|
|
109
109
|
[item.key]: item.value.value,
|
|
110
110
|
}),
|
|
111
|
-
{}
|
|
111
|
+
{},
|
|
112
112
|
)
|
|
113
113
|
}
|
|
114
114
|
|
|
@@ -146,7 +146,7 @@ export function decodeMdocDeviceResponse(vpToken: MdocOid4vpMdocVpToken): MdocDe
|
|
|
146
146
|
export const mdocDecodedCredentialToUniformCredential = (
|
|
147
147
|
decoded: MdocDocument,
|
|
148
148
|
// @ts-ignore
|
|
149
|
-
opts?: { maxTimeSkewInMS?: number }
|
|
149
|
+
opts?: { maxTimeSkewInMS?: number },
|
|
150
150
|
): IVerifiableCredential => {
|
|
151
151
|
const mdoc = decoded.toJson()
|
|
152
152
|
const json = mdoc.toJsonDTO<DocumentJson>()
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import * as u8a from 'uint8arrays'
|
|
2
|
-
import { AsyncHasher } from './sd-jwt-vc'
|
|
3
|
-
|
|
4
1
|
/**
|
|
5
2
|
* Represents the metadata associated with a specific SD-JWT VC type.
|
|
6
3
|
*/
|
|
7
|
-
interface SdJwtTypeMetadata {
|
|
4
|
+
export interface SdJwtTypeMetadata {
|
|
8
5
|
/**
|
|
9
6
|
* REQUIRED. The VC type URI.
|
|
10
7
|
*/
|
|
@@ -48,14 +45,58 @@ interface SdJwtTypeMetadata {
|
|
|
48
45
|
/**
|
|
49
46
|
* OPTIONAL. Metadata for the claims within the VC.
|
|
50
47
|
*/
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
claims?: Array<SdJwtClaimMetadata>
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Represents the metadata associated with a specific SD-JWT claim.
|
|
53
|
+
*/
|
|
54
|
+
export interface SdJwtClaimMetadata {
|
|
55
|
+
/**
|
|
56
|
+
* REQUIRED. An array indicating the claim or claims that are being addressed.
|
|
57
|
+
*/
|
|
58
|
+
path: Array<SdJwtClaimPath>
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* OPTIONAL. Display information for the claim.
|
|
62
|
+
*/
|
|
63
|
+
display?: Array<SdJwtClaimDisplayMetadata>
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* OPTIONAL. A string indicating whether the claim is selectively disclosable.
|
|
67
|
+
*/
|
|
68
|
+
sd?: SdJwtClaimSelectiveDisclosure
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* OPTIONAL. A string defining the ID of the claim for reference in the SVG template.
|
|
72
|
+
*/
|
|
73
|
+
svg_id?: string
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Represents claim display metadata for a specific language.
|
|
78
|
+
*/
|
|
79
|
+
export interface SdJwtClaimDisplayMetadata {
|
|
80
|
+
/**
|
|
81
|
+
* REQUIRED. Language tag for the display information.
|
|
82
|
+
*/
|
|
83
|
+
lang: string
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* REQUIRED. A human-readable label for the claim, intended for end users.
|
|
87
|
+
*/
|
|
88
|
+
label: string
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* REQUIRED. A human-readable description for the claim, intended for end users.
|
|
92
|
+
*/
|
|
93
|
+
description?: string
|
|
53
94
|
}
|
|
54
95
|
|
|
55
96
|
/**
|
|
56
97
|
* Represents display metadata for a specific language.
|
|
57
98
|
*/
|
|
58
|
-
interface SdJwtTypeDisplayMetadata {
|
|
99
|
+
export interface SdJwtTypeDisplayMetadata {
|
|
59
100
|
/**
|
|
60
101
|
* REQUIRED. Language tag for the display information.
|
|
61
102
|
*/
|
|
@@ -80,7 +121,7 @@ interface SdJwtTypeDisplayMetadata {
|
|
|
80
121
|
/**
|
|
81
122
|
* Contains rendering metadata for different methods.
|
|
82
123
|
*/
|
|
83
|
-
interface SdJwtTypeRenderingMetadata {
|
|
124
|
+
export interface SdJwtTypeRenderingMetadata {
|
|
84
125
|
/**
|
|
85
126
|
* OPTIONAL. Simple rendering method metadata.
|
|
86
127
|
*/
|
|
@@ -95,7 +136,7 @@ interface SdJwtTypeRenderingMetadata {
|
|
|
95
136
|
/**
|
|
96
137
|
* Represents metadata for simple rendering.
|
|
97
138
|
*/
|
|
98
|
-
interface SdJwtSimpleRenderingMetadata {
|
|
139
|
+
export interface SdJwtSimpleRenderingMetadata {
|
|
99
140
|
/**
|
|
100
141
|
* OPTIONAL. Metadata for the logo image.
|
|
101
142
|
*/
|
|
@@ -115,7 +156,7 @@ interface SdJwtSimpleRenderingMetadata {
|
|
|
115
156
|
/**
|
|
116
157
|
* Represents metadata for a logo.
|
|
117
158
|
*/
|
|
118
|
-
interface SdJwtLogoMetadata {
|
|
159
|
+
export interface SdJwtLogoMetadata {
|
|
119
160
|
/**
|
|
120
161
|
* REQUIRED. URI pointing to the logo image.
|
|
121
162
|
*/
|
|
@@ -135,7 +176,7 @@ interface SdJwtLogoMetadata {
|
|
|
135
176
|
/**
|
|
136
177
|
* Represents metadata for SVG templates.
|
|
137
178
|
*/
|
|
138
|
-
interface SdJwtSVGTemplateMetadata {
|
|
179
|
+
export interface SdJwtSVGTemplateMetadata {
|
|
139
180
|
/**
|
|
140
181
|
* REQUIRED. URI pointing to the SVG template.
|
|
141
182
|
*/
|
|
@@ -155,7 +196,7 @@ interface SdJwtSVGTemplateMetadata {
|
|
|
155
196
|
/**
|
|
156
197
|
* Contains properties for SVG templates.
|
|
157
198
|
*/
|
|
158
|
-
interface SdJwtSVGTemplateProperties {
|
|
199
|
+
export interface SdJwtSVGTemplateProperties {
|
|
159
200
|
/**
|
|
160
201
|
* OPTIONAL. The orientation for which the SVG template is optimized.
|
|
161
202
|
*/
|
|
@@ -167,51 +208,18 @@ interface SdJwtSVGTemplateProperties {
|
|
|
167
208
|
color_scheme?: string
|
|
168
209
|
}
|
|
169
210
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
return response
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
export type SdJwtTypeHasher = (input: any, alg?: string) => string
|
|
180
|
-
|
|
181
|
-
async function validateIntegrity(input: any, integrityValue: string, hasher: AsyncHasher, alg?: string): Promise<boolean> {
|
|
182
|
-
const hash = await hasher(input, alg ?? 'sha256')
|
|
183
|
-
return u8a.toString(hash, 'utf-8') === integrityValue
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
// Fetch and validate Type Metadata
|
|
187
|
-
export async function fetchSdJwtTypeMetadataFromVctUrl(vct: string, opts?: { hasher?: AsyncHasher; integrity?: string }): Promise<SdJwtTypeMetadata> {
|
|
188
|
-
const url = new URL(vct)
|
|
189
|
-
const wellKnownUrl = `${url.origin}/.well-known/vct${url.pathname}`
|
|
190
|
-
|
|
191
|
-
const response = await fetchUrlWithErrorHandling(wellKnownUrl)
|
|
192
|
-
const metadata: SdJwtTypeMetadata = await response.json()
|
|
193
|
-
assertValidTypeMetadata(metadata, vct)
|
|
194
|
-
if (opts?.integrity && opts.hasher) {
|
|
195
|
-
if (!(await validateIntegrity(metadata, opts.integrity, opts.hasher))) {
|
|
196
|
-
throw new Error('Integrity check failed')
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
return metadata
|
|
200
|
-
}
|
|
211
|
+
/**
|
|
212
|
+
* A string indicates that the respective key is to be selected.
|
|
213
|
+
* A null value indicates that all elements of the currently selected array(s) are to be selected.
|
|
214
|
+
* A non-negative integer indicates that the respective index in an array is to be selected.
|
|
215
|
+
*/
|
|
216
|
+
export type SdJwtClaimPath = string | null | number
|
|
201
217
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
218
|
+
/**
|
|
219
|
+
* always: The Issuer MUST make the claim selectively disclosable.
|
|
220
|
+
* allowed: The Issuer MAY make the claim selectively disclosable.
|
|
221
|
+
* never: The Issuer MUST NOT make the claim selectively disclosable.
|
|
222
|
+
*/
|
|
223
|
+
export type SdJwtClaimSelectiveDisclosure = 'always' | 'allowed' | 'never'
|
|
207
224
|
|
|
208
|
-
|
|
209
|
-
// Example usage
|
|
210
|
-
try {
|
|
211
|
-
const vct = 'https://betelgeuse.example.com/education_credential'
|
|
212
|
-
const typeMetadata = await fetchSdJwtTypeMetadataFromVctUrl(vct)
|
|
213
|
-
console.log('Type Metadata retrieved successfully:', typeMetadata)
|
|
214
|
-
} catch (error) {
|
|
215
|
-
console.error('Error fetching type metadata:', error.message)
|
|
216
|
-
}
|
|
217
|
-
*/
|
|
225
|
+
export type SdJwtTypeHasher = (input: any, alg?: string) => string
|