@sphereon/ssi-types 0.32.1-feature.new.develop.281 → 0.32.1-feature.new.develop.283
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 +2 -2
- package/dist/mapper/credential-mapper.d.ts.map +1 -1
- package/dist/mapper/credential-mapper.js +21 -29
- package/dist/mapper/credential-mapper.js.map +1 -1
- package/dist/types/sd-jwt-vc.d.ts +2 -2
- package/dist/types/sd-jwt-vc.d.ts.map +1 -1
- package/dist/utils/hasher.d.ts +4 -0
- package/dist/utils/hasher.d.ts.map +1 -0
- package/dist/utils/hasher.js +40 -0
- package/dist/utils/hasher.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +4 -3
- package/src/mapper/credential-mapper.ts +15 -21
- package/src/types/sd-jwt-vc.ts +2 -2
- package/src/utils/hasher.ts +17 -0
- package/src/utils/index.ts +1 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IssuerType } from '@veramo/core';
|
|
2
|
-
import { DocumentFormat, Hasher, HasherSync, ICredential, IPresentation, isWrappedMdocCredential, isWrappedMdocPresentation, isWrappedSdJwtVerifiableCredential, isWrappedSdJwtVerifiablePresentation, isWrappedW3CVerifiableCredential, isWrappedW3CVerifiablePresentation, IVerifiableCredential, IVerifiablePresentation, JwtDecodedVerifiableCredential, JwtDecodedVerifiablePresentation, MdocDeviceResponse, MdocOid4vpMdocVpToken, OriginalVerifiableCredential, OriginalVerifiablePresentation, SdJwtDecodedVerifiableCredential, SdJwtDecodedVerifiableCredentialPayload, UniformVerifiablePresentation, W3CVerifiableCredential, W3CVerifiablePresentation, WrappedVerifiableCredential, WrappedVerifiablePresentation } from '../types';
|
|
3
|
-
import { MdocDocument } from '../types/mso_mdoc';
|
|
2
|
+
import { DocumentFormat, Hasher, HasherSync, ICredential, IPresentation, isWrappedMdocCredential, isWrappedMdocPresentation, isWrappedSdJwtVerifiableCredential, isWrappedSdJwtVerifiablePresentation, isWrappedW3CVerifiableCredential, isWrappedW3CVerifiablePresentation, IVerifiableCredential, IVerifiablePresentation, JwtDecodedVerifiableCredential, JwtDecodedVerifiablePresentation, MdocDeviceResponse, MdocDocument, MdocOid4vpMdocVpToken, OriginalVerifiableCredential, OriginalVerifiablePresentation, SdJwtDecodedVerifiableCredential, SdJwtDecodedVerifiableCredentialPayload, UniformVerifiablePresentation, W3CVerifiableCredential, W3CVerifiablePresentation, WrappedVerifiableCredential, WrappedVerifiablePresentation } from '../types';
|
|
4
3
|
import { com } from '@sphereon/kmp-mdoc-core';
|
|
5
4
|
import DeviceResponseCbor = com.sphereon.mdoc.data.device.DeviceResponseCbor;
|
|
5
|
+
export declare const sha256: (data: string | ArrayBuffer) => Uint8Array;
|
|
6
6
|
export declare class CredentialMapper {
|
|
7
7
|
/**
|
|
8
8
|
* 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
|
|
@@ -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;AACzC,OAAO,EAKL,cAAc,
|
|
1
|
+
{"version":3,"file":"credential-mapper.d.ts","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,18 +11,21 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
11
11
|
return t;
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.CredentialMapper = void 0;
|
|
14
|
+
exports.CredentialMapper = exports.sha256 = void 0;
|
|
15
15
|
const types_1 = require("../types");
|
|
16
|
-
const mso_mdoc_1 = require("../types/mso_mdoc");
|
|
17
16
|
const utils_1 = require("../utils");
|
|
18
17
|
const jwt_decode_1 = require("jwt-decode");
|
|
18
|
+
const sha256 = (data) => {
|
|
19
|
+
return (0, utils_1.defaultHasher)(data, 'sha256');
|
|
20
|
+
};
|
|
21
|
+
exports.sha256 = sha256;
|
|
19
22
|
class CredentialMapper {
|
|
20
23
|
/**
|
|
21
24
|
* 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
|
|
22
25
|
* with the other decode methods.
|
|
23
26
|
*/
|
|
24
27
|
static decodeSdJwtVcAsync(compactSdJwtVc, hasher) {
|
|
25
|
-
return (0, types_1.decodeSdJwtVcAsync)(compactSdJwtVc, hasher);
|
|
28
|
+
return (0, types_1.decodeSdJwtVcAsync)(compactSdJwtVc, hasher !== null && hasher !== void 0 ? hasher : exports.sha256);
|
|
26
29
|
}
|
|
27
30
|
/**
|
|
28
31
|
* Decodes a Verifiable Presentation to a uniform format.
|
|
@@ -52,10 +55,7 @@ class CredentialMapper {
|
|
|
52
55
|
return presentation;
|
|
53
56
|
}
|
|
54
57
|
else if (CredentialMapper.isSdJwtEncoded(presentation)) {
|
|
55
|
-
|
|
56
|
-
throw new Error('Hasher implementation is required to decode SD-JWT');
|
|
57
|
-
}
|
|
58
|
-
return (0, types_1.decodeSdJwtVc)(presentation, hasher);
|
|
58
|
+
return (0, types_1.decodeSdJwtVc)(presentation, hasher !== null && hasher !== void 0 ? hasher : exports.sha256);
|
|
59
59
|
}
|
|
60
60
|
else if (CredentialMapper.isSdJwtDecodedCredential(presentation)) {
|
|
61
61
|
return presentation;
|
|
@@ -103,10 +103,7 @@ class CredentialMapper {
|
|
|
103
103
|
return JSON.parse(credential);
|
|
104
104
|
}
|
|
105
105
|
else if (CredentialMapper.isSdJwtEncoded(credential)) {
|
|
106
|
-
|
|
107
|
-
throw new Error('Hasher implementation is required to decode SD-JWT');
|
|
108
|
-
}
|
|
109
|
-
return (0, types_1.decodeSdJwtVc)(credential, hasher);
|
|
106
|
+
return (0, types_1.decodeSdJwtVc)(credential, hasher !== null && hasher !== void 0 ? hasher : exports.sha256);
|
|
110
107
|
}
|
|
111
108
|
else if (CredentialMapper.isSdJwtDecodedCredential(credential)) {
|
|
112
109
|
return credential;
|
|
@@ -125,7 +122,7 @@ class CredentialMapper {
|
|
|
125
122
|
* @param hasher Hasher implementation to use for SD-JWT decoding
|
|
126
123
|
*/
|
|
127
124
|
static toWrappedVerifiablePresentation(originalPresentation, opts) {
|
|
128
|
-
var _a, _b;
|
|
125
|
+
var _a, _b, _c;
|
|
129
126
|
// MSO_MDOC
|
|
130
127
|
if (CredentialMapper.isMsoMdocDecodedPresentation(originalPresentation) || CredentialMapper.isMsoMdocOid4VPEncoded(originalPresentation)) {
|
|
131
128
|
let deviceResponse;
|
|
@@ -155,10 +152,7 @@ class CredentialMapper {
|
|
|
155
152
|
if (CredentialMapper.isSdJwtDecodedCredential(originalPresentation) || CredentialMapper.isSdJwtEncoded(originalPresentation)) {
|
|
156
153
|
let decodedPresentation;
|
|
157
154
|
if (CredentialMapper.isSdJwtEncoded(originalPresentation)) {
|
|
158
|
-
|
|
159
|
-
throw new Error('Hasher implementation is required to decode SD-JWT');
|
|
160
|
-
}
|
|
161
|
-
decodedPresentation = (0, types_1.decodeSdJwtVc)(originalPresentation, opts.hasher);
|
|
155
|
+
decodedPresentation = (0, types_1.decodeSdJwtVc)(originalPresentation, (_b = opts === null || opts === void 0 ? void 0 : opts.hasher) !== null && _b !== void 0 ? _b : exports.sha256);
|
|
162
156
|
}
|
|
163
157
|
else {
|
|
164
158
|
decodedPresentation = originalPresentation;
|
|
@@ -201,7 +195,7 @@ class CredentialMapper {
|
|
|
201
195
|
}
|
|
202
196
|
const vcs = noVCs
|
|
203
197
|
? []
|
|
204
|
-
: CredentialMapper.toWrappedVerifiableCredentials((
|
|
198
|
+
: CredentialMapper.toWrappedVerifiableCredentials((_c = vp.verifiableCredential) !== null && _c !== void 0 ? _c : [] /*.map(value => value.original)*/, opts);
|
|
205
199
|
const presentation = Object.assign(Object.assign({}, vp), { verifiableCredential: vcs });
|
|
206
200
|
return {
|
|
207
201
|
type,
|
|
@@ -234,7 +228,7 @@ class CredentialMapper {
|
|
|
234
228
|
* @param hasher Hasher implementation to use for SD-JWT decoding
|
|
235
229
|
*/
|
|
236
230
|
static toWrappedVerifiableCredential(verifiableCredential, opts) {
|
|
237
|
-
var _a;
|
|
231
|
+
var _a, _b;
|
|
238
232
|
// MSO_MDOC
|
|
239
233
|
if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential) || CredentialMapper.isMsoMdocOid4VPEncoded(verifiableCredential)) {
|
|
240
234
|
let mdoc;
|
|
@@ -249,17 +243,15 @@ class CredentialMapper {
|
|
|
249
243
|
format: 'mso_mdoc',
|
|
250
244
|
original: verifiableCredential,
|
|
251
245
|
credential: mdoc,
|
|
252
|
-
decoded: (0,
|
|
246
|
+
decoded: (0, types_1.getMdocDecodedPayload)(mdoc),
|
|
253
247
|
};
|
|
254
248
|
}
|
|
255
249
|
// SD-JWT
|
|
256
250
|
if (CredentialMapper.isSdJwtDecodedCredential(verifiableCredential) || CredentialMapper.isSdJwtEncoded(verifiableCredential)) {
|
|
257
251
|
let decodedCredential;
|
|
258
252
|
if (CredentialMapper.isSdJwtEncoded(verifiableCredential)) {
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
}
|
|
262
|
-
decodedCredential = (0, types_1.decodeSdJwtVc)(verifiableCredential, opts.hasher);
|
|
253
|
+
const hasher = (_a = opts === null || opts === void 0 ? void 0 : opts.hasher) !== null && _a !== void 0 ? _a : exports.sha256;
|
|
254
|
+
decodedCredential = (0, types_1.decodeSdJwtVc)(verifiableCredential, hasher);
|
|
263
255
|
}
|
|
264
256
|
else {
|
|
265
257
|
decodedCredential = verifiableCredential;
|
|
@@ -274,7 +266,7 @@ class CredentialMapper {
|
|
|
274
266
|
}
|
|
275
267
|
// If the VC is not an encoded/decoded SD-JWT, we assume it will be a W3C VC
|
|
276
268
|
const proof = CredentialMapper.getFirstProof(verifiableCredential);
|
|
277
|
-
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? ((
|
|
269
|
+
const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? ((_b = proof.jwt) !== null && _b !== void 0 ? _b : verifiableCredential) : verifiableCredential;
|
|
278
270
|
if (!original) {
|
|
279
271
|
throw Error('Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof');
|
|
280
272
|
}
|
|
@@ -482,7 +474,7 @@ class CredentialMapper {
|
|
|
482
474
|
return presentation;
|
|
483
475
|
}
|
|
484
476
|
static toUniformCredential(verifiableCredential, opts) {
|
|
485
|
-
var _a;
|
|
477
|
+
var _a, _b;
|
|
486
478
|
if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential)) {
|
|
487
479
|
return (0, types_1.mdocDecodedCredentialToUniformCredential)(verifiableCredential);
|
|
488
480
|
}
|
|
@@ -495,7 +487,7 @@ class CredentialMapper {
|
|
|
495
487
|
if (!original) {
|
|
496
488
|
throw Error('Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore');
|
|
497
489
|
}
|
|
498
|
-
const decoded = CredentialMapper.decodeVerifiableCredential(original, opts === null || opts === void 0 ? void 0 : opts.hasher);
|
|
490
|
+
const decoded = CredentialMapper.decodeVerifiableCredential(original, (_b = opts === null || opts === void 0 ? void 0 : opts.hasher) !== null && _b !== void 0 ? _b : exports.sha256);
|
|
499
491
|
const isJwtEncoded = CredentialMapper.isJwtEncoded(original);
|
|
500
492
|
const isJwtDecoded = CredentialMapper.isJwtDecodedCredential(original);
|
|
501
493
|
const isSdJwtEncoded = CredentialMapper.isSdJwtEncoded(original);
|
|
@@ -514,7 +506,7 @@ class CredentialMapper {
|
|
|
514
506
|
}
|
|
515
507
|
}
|
|
516
508
|
static toUniformPresentation(presentation, opts) {
|
|
517
|
-
var _a;
|
|
509
|
+
var _a, _b;
|
|
518
510
|
if (CredentialMapper.isSdJwtDecodedCredential(presentation)) {
|
|
519
511
|
throw new Error('Converting SD-JWT VC to uniform VP is not supported.');
|
|
520
512
|
}
|
|
@@ -526,7 +518,7 @@ class CredentialMapper {
|
|
|
526
518
|
if (!original) {
|
|
527
519
|
throw Error('Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof');
|
|
528
520
|
}
|
|
529
|
-
const decoded = CredentialMapper.decodeVerifiablePresentation(original, opts === null || opts === void 0 ? void 0 : opts.hasher);
|
|
521
|
+
const decoded = CredentialMapper.decodeVerifiablePresentation(original, (_a = opts === null || opts === void 0 ? void 0 : opts.hasher) !== null && _a !== void 0 ? _a : exports.sha256);
|
|
530
522
|
const isJwtEncoded = CredentialMapper.isJwtEncoded(original);
|
|
531
523
|
const isJwtDecoded = CredentialMapper.isJwtDecodedPresentation(original);
|
|
532
524
|
const uniformPresentation = isJwtEncoded || isJwtDecoded
|
|
@@ -536,7 +528,7 @@ class CredentialMapper {
|
|
|
536
528
|
if ((opts === null || opts === void 0 ? void 0 : opts.addContextIfMissing) && !uniformPresentation['@context']) {
|
|
537
529
|
uniformPresentation['@context'] = ['https://www.w3.org/2018/credentials/v1'];
|
|
538
530
|
}
|
|
539
|
-
uniformPresentation.verifiableCredential = (
|
|
531
|
+
uniformPresentation.verifiableCredential = (_b = uniformPresentation.verifiableCredential) === null || _b === void 0 ? void 0 : _b.map((vc) => CredentialMapper.toUniformCredential(vc, opts)); // We cast it because we IPresentation needs a VC. The internal Credential doesn't have the required Proof anymore (that is intended)
|
|
540
532
|
return uniformPresentation;
|
|
541
533
|
}
|
|
542
534
|
static jwtEncodedCredentialToUniformCredential(jwt, opts) {
|
|
@@ -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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"}
|
|
@@ -142,8 +142,8 @@ export interface WrappedSdJwtVerifiableCredential {
|
|
|
142
142
|
*/
|
|
143
143
|
credential: SdJwtDecodedVerifiableCredential;
|
|
144
144
|
}
|
|
145
|
-
export type HasherSync = (data: string, alg: string) => Uint8Array;
|
|
146
|
-
export type Hasher = (data: string, alg: string) => OrPromise<Uint8Array>;
|
|
145
|
+
export type HasherSync = (data: string | ArrayBuffer, alg: string) => Uint8Array;
|
|
146
|
+
export type Hasher = (data: string | ArrayBuffer, alg: string) => OrPromise<Uint8Array>;
|
|
147
147
|
export interface WrappedSdJwtVerifiablePresentation {
|
|
148
148
|
/**
|
|
149
149
|
* Original VP that we've received. Can be either the encoded or decoded variant.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-jwt-vc.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sd-jwt-vc.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-vc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hasher.d.ts","sourceRoot":"","sources":["../../src/utils/hasher.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAKpC,eAAO,MAAM,SAAS,EAAE,UAOvB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,UAAsB,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.defaultHasher = exports.shaHasher = void 0;
|
|
27
|
+
const sha2_1 = require("@noble/hashes/sha2");
|
|
28
|
+
const u8a = __importStar(require("uint8arrays"));
|
|
29
|
+
const supportedAlgorithms = ['sha256', 'sha384', 'sha512'];
|
|
30
|
+
const shaHasher = (data, algorithm) => {
|
|
31
|
+
const sanitizedAlgorithm = algorithm.toLowerCase().replace(/[-_]/g, '');
|
|
32
|
+
if (!supportedAlgorithms.includes(sanitizedAlgorithm)) {
|
|
33
|
+
throw new Error(`Unsupported hashing algorithm ${algorithm}`);
|
|
34
|
+
}
|
|
35
|
+
const hasher = sanitizedAlgorithm === 'sha384' ? sha2_1.sha384 : sanitizedAlgorithm === 'sha512' ? sha2_1.sha512 : sha2_1.sha256;
|
|
36
|
+
return hasher(typeof data === 'string' ? u8a.fromString(data) : new Uint8Array(data));
|
|
37
|
+
};
|
|
38
|
+
exports.shaHasher = shaHasher;
|
|
39
|
+
exports.defaultHasher = exports.shaHasher;
|
|
40
|
+
//# sourceMappingURL=hasher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hasher.js","sourceRoot":"","sources":["../../src/utils/hasher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA2D;AAC3D,iDAAkC;AAGlC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAA;AAG5D,MAAM,SAAS,GAAe,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;IACvD,MAAM,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IACvE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,kBAAyC,CAAC,EAAE,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAA;IAC/D,CAAC;IACD,MAAM,MAAM,GAAG,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAM,CAAC,CAAC,CAAC,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAM,CAAC,CAAC,CAAC,aAAM,CAAA;IAC3G,OAAO,MAAM,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAE,CAAA;AACxF,CAAC,CAAA;AAPY,QAAA,SAAS,aAOrB;AAEY,QAAA,aAAa,GAAe,iBAAS,CAAA"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA"}
|
package/dist/utils/index.js
CHANGED
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./object"), exports);
|
|
18
|
+
__exportStar(require("./hasher"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,2CAAwB"}
|
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.1-feature.new.develop.
|
|
4
|
+
"version": "0.32.1-feature.new.develop.283+070040e1",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"build:clean": "tsc --build --clean && tsc --build"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@
|
|
12
|
+
"@noble/hashes": "1.6.1",
|
|
13
|
+
"@sd-jwt/decode": "^0.9.2",
|
|
13
14
|
"@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.26",
|
|
14
15
|
"debug": "^4.3.5",
|
|
15
16
|
"events": "^3.3.0",
|
|
@@ -47,5 +48,5 @@
|
|
|
47
48
|
"DIDs"
|
|
48
49
|
],
|
|
49
50
|
"nx": {},
|
|
50
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "070040e12d871bfe48e884b88e26a2ebc5b41ce5"
|
|
51
52
|
}
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
decodeSdJwtVc,
|
|
6
6
|
decodeSdJwtVcAsync,
|
|
7
7
|
DocumentFormat,
|
|
8
|
+
getMdocDecodedPayload,
|
|
8
9
|
Hasher,
|
|
9
10
|
HasherSync,
|
|
10
11
|
ICredential,
|
|
@@ -24,6 +25,7 @@ import {
|
|
|
24
25
|
JwtDecodedVerifiablePresentation,
|
|
25
26
|
mdocDecodedCredentialToUniformCredential,
|
|
26
27
|
MdocDeviceResponse,
|
|
28
|
+
MdocDocument,
|
|
27
29
|
MdocOid4vpMdocVpToken,
|
|
28
30
|
OriginalType,
|
|
29
31
|
OriginalVerifiableCredential,
|
|
@@ -40,19 +42,22 @@ import {
|
|
|
40
42
|
WrappedVerifiablePresentation,
|
|
41
43
|
WrappedW3CVerifiableCredential,
|
|
42
44
|
} from '../types'
|
|
43
|
-
import {
|
|
44
|
-
import { ObjectUtils } from '../utils'
|
|
45
|
+
import { defaultHasher, ObjectUtils } from '../utils'
|
|
45
46
|
import { com } from '@sphereon/kmp-mdoc-core'
|
|
46
47
|
import { jwtDecode } from 'jwt-decode'
|
|
47
48
|
import DeviceResponseCbor = com.sphereon.mdoc.data.device.DeviceResponseCbor
|
|
48
49
|
|
|
50
|
+
export const sha256 = (data: string | ArrayBuffer): Uint8Array => {
|
|
51
|
+
return defaultHasher(data, 'sha256')
|
|
52
|
+
}
|
|
53
|
+
|
|
49
54
|
export class CredentialMapper {
|
|
50
55
|
/**
|
|
51
56
|
* 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
|
|
52
57
|
* with the other decode methods.
|
|
53
58
|
*/
|
|
54
59
|
static decodeSdJwtVcAsync(compactSdJwtVc: string, hasher: Hasher) {
|
|
55
|
-
return decodeSdJwtVcAsync(compactSdJwtVc, hasher)
|
|
60
|
+
return decodeSdJwtVcAsync(compactSdJwtVc, hasher ?? sha256)
|
|
56
61
|
}
|
|
57
62
|
|
|
58
63
|
/**
|
|
@@ -84,10 +89,7 @@ export class CredentialMapper {
|
|
|
84
89
|
} else if (CredentialMapper.isJwtDecodedPresentation(presentation)) {
|
|
85
90
|
return presentation as JwtDecodedVerifiablePresentation
|
|
86
91
|
} else if (CredentialMapper.isSdJwtEncoded(presentation)) {
|
|
87
|
-
|
|
88
|
-
throw new Error('Hasher implementation is required to decode SD-JWT')
|
|
89
|
-
}
|
|
90
|
-
return decodeSdJwtVc(presentation, hasher)
|
|
92
|
+
return decodeSdJwtVc(presentation, hasher ?? sha256)
|
|
91
93
|
} else if (CredentialMapper.isSdJwtDecodedCredential(presentation)) {
|
|
92
94
|
return presentation as SdJwtDecodedVerifiableCredential
|
|
93
95
|
} else if (CredentialMapper.isMsoMdocOid4VPEncoded(presentation)) {
|
|
@@ -130,10 +132,7 @@ export class CredentialMapper {
|
|
|
130
132
|
} else if (CredentialMapper.isJsonLdAsString(credential)) {
|
|
131
133
|
return JSON.parse(credential as string) as IVerifiableCredential
|
|
132
134
|
} else if (CredentialMapper.isSdJwtEncoded(credential)) {
|
|
133
|
-
|
|
134
|
-
throw new Error('Hasher implementation is required to decode SD-JWT')
|
|
135
|
-
}
|
|
136
|
-
return decodeSdJwtVc(credential, hasher)
|
|
135
|
+
return decodeSdJwtVc(credential, hasher ?? sha256)
|
|
137
136
|
} else if (CredentialMapper.isSdJwtDecodedCredential(credential)) {
|
|
138
137
|
return credential
|
|
139
138
|
} else {
|
|
@@ -186,10 +185,7 @@ export class CredentialMapper {
|
|
|
186
185
|
if (CredentialMapper.isSdJwtDecodedCredential(originalPresentation) || CredentialMapper.isSdJwtEncoded(originalPresentation)) {
|
|
187
186
|
let decodedPresentation: SdJwtDecodedVerifiableCredential
|
|
188
187
|
if (CredentialMapper.isSdJwtEncoded(originalPresentation)) {
|
|
189
|
-
|
|
190
|
-
throw new Error('Hasher implementation is required to decode SD-JWT')
|
|
191
|
-
}
|
|
192
|
-
decodedPresentation = decodeSdJwtVc(originalPresentation, opts.hasher)
|
|
188
|
+
decodedPresentation = decodeSdJwtVc(originalPresentation, opts?.hasher ?? sha256)
|
|
193
189
|
} else {
|
|
194
190
|
decodedPresentation = originalPresentation
|
|
195
191
|
}
|
|
@@ -305,10 +301,8 @@ export class CredentialMapper {
|
|
|
305
301
|
if (CredentialMapper.isSdJwtDecodedCredential(verifiableCredential) || CredentialMapper.isSdJwtEncoded(verifiableCredential)) {
|
|
306
302
|
let decodedCredential: SdJwtDecodedVerifiableCredential
|
|
307
303
|
if (CredentialMapper.isSdJwtEncoded(verifiableCredential)) {
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
}
|
|
311
|
-
decodedCredential = decodeSdJwtVc(verifiableCredential, opts.hasher)
|
|
304
|
+
const hasher = opts?.hasher ?? sha256
|
|
305
|
+
decodedCredential = decodeSdJwtVc(verifiableCredential, hasher)
|
|
312
306
|
} else {
|
|
313
307
|
decodedCredential = verifiableCredential
|
|
314
308
|
}
|
|
@@ -601,7 +595,7 @@ export class CredentialMapper {
|
|
|
601
595
|
'Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore',
|
|
602
596
|
)
|
|
603
597
|
}
|
|
604
|
-
const decoded = CredentialMapper.decodeVerifiableCredential(original, opts?.hasher)
|
|
598
|
+
const decoded = CredentialMapper.decodeVerifiableCredential(original, opts?.hasher ?? sha256)
|
|
605
599
|
|
|
606
600
|
const isJwtEncoded: boolean = CredentialMapper.isJwtEncoded(original)
|
|
607
601
|
const isJwtDecoded: boolean = CredentialMapper.isJwtDecodedCredential(original)
|
|
@@ -636,7 +630,7 @@ export class CredentialMapper {
|
|
|
636
630
|
'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof',
|
|
637
631
|
)
|
|
638
632
|
}
|
|
639
|
-
const decoded = CredentialMapper.decodeVerifiablePresentation(original, opts?.hasher)
|
|
633
|
+
const decoded = CredentialMapper.decodeVerifiablePresentation(original, opts?.hasher ?? sha256)
|
|
640
634
|
const isJwtEncoded: boolean = CredentialMapper.isJwtEncoded(original)
|
|
641
635
|
const isJwtDecoded: boolean = CredentialMapper.isJwtDecodedPresentation(original)
|
|
642
636
|
const uniformPresentation =
|
package/src/types/sd-jwt-vc.ts
CHANGED
|
@@ -168,8 +168,8 @@ export interface WrappedSdJwtVerifiableCredential {
|
|
|
168
168
|
credential: SdJwtDecodedVerifiableCredential
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
export type HasherSync = (data: string, alg: string) => Uint8Array
|
|
172
|
-
export type Hasher = (data: string, alg: string) => OrPromise<Uint8Array>
|
|
171
|
+
export type HasherSync = (data: string | ArrayBuffer, alg: string) => Uint8Array
|
|
172
|
+
export type Hasher = (data: string | ArrayBuffer, alg: string) => OrPromise<Uint8Array>
|
|
173
173
|
|
|
174
174
|
export interface WrappedSdJwtVerifiablePresentation {
|
|
175
175
|
/**
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { sha256, sha384, sha512 } from '@noble/hashes/sha2'
|
|
2
|
+
import * as u8a from 'uint8arrays'
|
|
3
|
+
import {HasherSync} from "../types";
|
|
4
|
+
|
|
5
|
+
const supportedAlgorithms = ['sha256', 'sha384', 'sha512'] as const
|
|
6
|
+
type SupportedAlgorithms = (typeof supportedAlgorithms)[number]
|
|
7
|
+
|
|
8
|
+
export const shaHasher: HasherSync = (data, algorithm) => {
|
|
9
|
+
const sanitizedAlgorithm = algorithm.toLowerCase().replace(/[-_]/g, '')
|
|
10
|
+
if (!supportedAlgorithms.includes(sanitizedAlgorithm as SupportedAlgorithms)) {
|
|
11
|
+
throw new Error(`Unsupported hashing algorithm ${algorithm}`)
|
|
12
|
+
}
|
|
13
|
+
const hasher = sanitizedAlgorithm === 'sha384' ? sha384 : sanitizedAlgorithm === 'sha512' ? sha512 : sha256
|
|
14
|
+
return hasher(typeof data === 'string' ? u8a.fromString(data) : new Uint8Array(data) )
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const defaultHasher: HasherSync = shaHasher
|
package/src/utils/index.ts
CHANGED