@sphereon/ssi-sdk-ext.jwt-service 0.24.1-unstable.93 → 0.25.0

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.
@@ -31,28 +31,51 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
31
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
32
32
  });
33
33
  };
34
+ var __rest = (this && this.__rest) || function (s, e) {
35
+ var t = {};
36
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
37
+ t[p] = s[p];
38
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
39
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
40
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
41
+ t[p[i]] = s[p[i]];
42
+ }
43
+ return t;
44
+ };
34
45
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.checkAndUpdateJwtHeader = exports.createJwsJsonGeneral = exports.createJwsJsonFlattened = exports.createJwsCompact = exports.prepareJwsObject = void 0;
46
+ exports.toJwsJsonGeneralWithIdentifiers = exports.toJwsJsonGeneral = exports.verifyJws = exports.checkAndUpdateJwsHeader = exports.createJwsJsonGeneral = exports.createJwsJsonFlattened = exports.createJwsCompact = exports.prepareJwsObject = void 0;
47
+ const ssi_sdk_ext_did_utils_1 = require("@sphereon/ssi-sdk-ext.did-utils");
36
48
  const ssi_sdk_ext_identifier_resolution_1 = require("@sphereon/ssi-sdk-ext.identifier-resolution");
49
+ const ssi_sdk_ext_key_utils_1 = require("@sphereon/ssi-sdk-ext.key-utils");
50
+ const ssi_sdk_agent_config_1 = require("@sphereon/ssi-sdk.agent-config");
37
51
  const utils_1 = require("@veramo/utils");
52
+ const utils_2 = require("@veramo/utils");
38
53
  const u8a = __importStar(require("uint8arrays"));
54
+ const IJwtService_1 = require("../types/IJwtService");
55
+ const payloadToBytes = (payload) => {
56
+ const isBytes = payload instanceof Uint8Array;
57
+ const isString = typeof payload === 'string';
58
+ return isBytes ? payload : isString ? u8a.fromString(payload, 'base64url') : u8a.fromString(JSON.stringify(payload), 'utf-8');
59
+ };
39
60
  const prepareJwsObject = (args, context) => __awaiter(void 0, void 0, void 0, function* () {
40
- const { existingSignatures, protectedHeader, unprotectedHeader, issuer, payload, mode = 'auto' } = args;
61
+ const { existingSignatures, protectedHeader, unprotectedHeader, issuer, payload, mode = 'auto', clientId, clientIdScheme } = args;
41
62
  const { noIdentifierInHeader = false } = issuer;
42
- const combinedHeader = Object.assign(Object.assign({}, unprotectedHeader), protectedHeader);
43
- if (!combinedHeader.alg) {
44
- return Promise.reject(`No 'alg' key present in the JWS header`);
45
- }
46
63
  const identifier = yield (0, ssi_sdk_ext_identifier_resolution_1.ensureManagedIdentifierResult)(issuer, context);
47
- yield (0, exports.checkAndUpdateJwtHeader)({ mode, identifier, noIdentifierInHeader, header: protectedHeader }, context);
64
+ yield (0, exports.checkAndUpdateJwsHeader)({ mode, identifier, noIdentifierInHeader, header: protectedHeader }, context);
48
65
  const isBytes = payload instanceof Uint8Array;
49
66
  const isString = typeof payload === 'string';
50
67
  if (!isBytes && !isString) {
51
68
  if (issuer.noIssPayloadUpdate !== true && !payload.iss && identifier.issuer) {
52
69
  payload.iss = identifier.issuer;
53
70
  }
71
+ if (clientIdScheme && !payload.client_id_scheme) {
72
+ payload.client_id_scheme = clientIdScheme;
73
+ }
74
+ if (clientId && !payload.client_id) {
75
+ payload.client_id = clientId;
76
+ }
54
77
  }
55
- const payloadBytes = isBytes ? payload : isString ? u8a.fromString(payload, 'base64url') : u8a.fromString(JSON.stringify(payload), 'utf-8');
78
+ const payloadBytes = payloadToBytes(payload);
56
79
  const base64urlHeader = (0, utils_1.encodeJoseBlob)(protectedHeader);
57
80
  const base64urlPayload = (0, utils_1.bytesToBase64url)(payloadBytes);
58
81
  return {
@@ -118,21 +141,21 @@ exports.createJwsJsonGeneral = createJwsJsonGeneral;
118
141
  * @param noIdentifierInHeader
119
142
  * @param context
120
143
  */
121
- const checkAndUpdateJwtHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ mode = 'auto', identifier, header, noIdentifierInHeader = false, }, context) {
122
- if (isMode(mode, identifier.method, 'did')) {
144
+ const checkAndUpdateJwsHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ mode = 'auto', identifier, header, noIdentifierInHeader = false, }, context) {
145
+ if (isIdentifierMode(mode, identifier.method, 'did')) {
123
146
  // kid is VM of the DID
124
147
  // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4
125
148
  yield checkAndUpdateDidHeader({ header, identifier, noIdentifierInHeader }, context);
126
149
  }
127
- else if (isMode(mode, identifier.method, 'x5c')) {
150
+ else if (isIdentifierMode(mode, identifier.method, 'x5c')) {
128
151
  // Include the x5c in the header. No kid
129
152
  // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.6
130
153
  yield checkAndUpdateX5cHeader({ header, identifier, noIdentifierInHeader }, context);
131
154
  }
132
- else if (isMode(mode, identifier.method, 'kid', false)) {
155
+ else if (isIdentifierMode(mode, identifier.method, 'kid', false)) {
133
156
  yield checkAndUpdateKidHeader({ header, identifier, noIdentifierInHeader }, context);
134
157
  }
135
- else if (isMode(mode, identifier.method, 'jwk', false)) {
158
+ else if (isIdentifierMode(mode, identifier.method, 'jwk', false)) {
136
159
  // Include the JWK in the header as well as its kid if present
137
160
  // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.3
138
161
  // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4
@@ -143,8 +166,8 @@ const checkAndUpdateJwtHeader = (_a, context_1) => __awaiter(void 0, [_a, contex
143
166
  return Promise.reject(`Invalid combination of JWS creation mode ${mode} and identifier method ${identifier.method} chosen`);
144
167
  }
145
168
  });
146
- exports.checkAndUpdateJwtHeader = checkAndUpdateJwtHeader;
147
- const checkAndUpdateX5cHeader = (_b, context_2) => __awaiter(void 0, [_b, context_2], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
169
+ exports.checkAndUpdateJwsHeader = checkAndUpdateJwsHeader;
170
+ const checkAndUpdateX5cHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
148
171
  const { x5c } = header;
149
172
  if (x5c) {
150
173
  // let's resolve the provided x5c to be sure
@@ -163,7 +186,7 @@ const checkAndUpdateX5cHeader = (_b, context_2) => __awaiter(void 0, [_b, contex
163
186
  header.x5c = identifier.x5c;
164
187
  }
165
188
  });
166
- const checkAndUpdateDidHeader = (_c, context_3) => __awaiter(void 0, [_c, context_3], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
189
+ const checkAndUpdateDidHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
167
190
  const { kid } = header;
168
191
  if (kid) {
169
192
  // let's resolve the provided x5c to be sure
@@ -182,7 +205,7 @@ const checkAndUpdateDidHeader = (_c, context_3) => __awaiter(void 0, [_c, contex
182
205
  header.kid = identifier.kid;
183
206
  }
184
207
  });
185
- const checkAndUpdateJwkHeader = (_d, context_4) => __awaiter(void 0, [_d, context_4], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
208
+ const checkAndUpdateJwkHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
186
209
  const { jwk } = header;
187
210
  if (jwk) {
188
211
  // let's resolve the provided x5c to be sure
@@ -199,7 +222,7 @@ const checkAndUpdateJwkHeader = (_d, context_4) => __awaiter(void 0, [_d, contex
199
222
  header.jwk = identifier.jwk;
200
223
  }
201
224
  });
202
- const checkAndUpdateKidHeader = (_e, context_5) => __awaiter(void 0, [_e, context_5], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
225
+ const checkAndUpdateKidHeader = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ header, identifier, noIdentifierInHeader = false, }, context) {
203
226
  const { kid } = header;
204
227
  if (kid) {
205
228
  // let's resolve the provided x5c to be sure
@@ -216,7 +239,7 @@ const checkAndUpdateKidHeader = (_e, context_5) => __awaiter(void 0, [_e, contex
216
239
  header.kid = identifier.kid;
217
240
  }
218
241
  });
219
- const isMode = (mode, identifierMethod, checkMode, loose = true) => {
242
+ const isIdentifierMode = (mode, identifierMethod, checkMode, loose = true) => {
220
243
  if (loose && (checkMode === 'jwk' || checkMode === 'kid')) {
221
244
  // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that
222
245
  // todo: check the impact on the above expressions, as this will now always return true for the both of them
@@ -231,4 +254,117 @@ const isMode = (mode, identifierMethod, checkMode, loose = true) => {
231
254
  // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that
232
255
  return mode === 'auto' && identifierMethod === checkMode;
233
256
  };
257
+ const verifyJws = (args, context) => __awaiter(void 0, void 0, void 0, function* () {
258
+ const jws = yield (0, exports.toJwsJsonGeneralWithIdentifiers)(args, context);
259
+ let errorMessages = [];
260
+ let index = 0;
261
+ yield Promise.all(jws.signatures.map((sigWithId) => __awaiter(void 0, void 0, void 0, function* () {
262
+ var _a, _b;
263
+ // If we have a specific KMS agent plugin that can do the verification prefer that over the generic verification
264
+ index++;
265
+ let valid;
266
+ const data = u8a.fromString(`${sigWithId.protected}.${jws.payload}`, 'utf-8');
267
+ const jwkInfo = sigWithId.identifier.jwks[0];
268
+ if (((_a = sigWithId.header) === null || _a === void 0 ? void 0 : _a.alg) === 'RSA' && (0, ssi_sdk_agent_config_1.contextHasPlugin)(context, 'keyManagerVerify')) {
269
+ const publicKeyHex = (0, ssi_sdk_ext_did_utils_1.jwkTtoPublicKeyHex)(jwkInfo.jwk);
270
+ valid = yield context.agent.keyManagerVerify({
271
+ signature: sigWithId.signature,
272
+ data,
273
+ publicKeyHex,
274
+ type: (0, ssi_sdk_ext_key_utils_1.keyTypeFromCryptographicSuite)({ suite: (_b = jwkInfo.jwk.crv) !== null && _b !== void 0 ? _b : 'ES256' }),
275
+ // no kms arg, as the current key manager needs a bit more work
276
+ });
277
+ }
278
+ else {
279
+ const signature = (0, utils_2.base64ToBytes)(sigWithId.signature);
280
+ valid = yield (0, ssi_sdk_ext_key_utils_1.verifySignatureWithSubtle)({ data, signature, key: jwkInfo.jwk });
281
+ }
282
+ if (!valid) {
283
+ errorMessages.push(`Signature ${index} was not valid`);
284
+ }
285
+ return {
286
+ sigWithId,
287
+ valid,
288
+ };
289
+ })));
290
+ const error = errorMessages.length !== 0;
291
+ return {
292
+ name: 'jws',
293
+ jws,
294
+ error,
295
+ critical: error,
296
+ message: error ? errorMessages.join(', ') : 'Signature validated',
297
+ verificationTime: new Date(),
298
+ };
299
+ });
300
+ exports.verifyJws = verifyJws;
301
+ const toJwsJsonGeneral = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ jws }, context) {
302
+ let payload;
303
+ let signatures = [];
304
+ if ((0, IJwtService_1.isJwsCompact)(jws)) {
305
+ const split = jws.split('.');
306
+ payload = split[1];
307
+ signatures[0] = {
308
+ protected: split[0],
309
+ signature: split[2],
310
+ };
311
+ }
312
+ else if ((0, IJwtService_1.isJwsJsonGeneral)(jws)) {
313
+ payload = jws.payload;
314
+ signatures = jws.signatures;
315
+ }
316
+ else if ((0, IJwtService_1.isJwsJsonFlattened)(jws)) {
317
+ const { payload: _payload } = jws, signature = __rest(jws, ["payload"]);
318
+ payload = _payload;
319
+ signatures = [signature];
320
+ }
321
+ else {
322
+ return Promise.reject(Error(`Invalid JWS supplied`));
323
+ }
324
+ return {
325
+ payload,
326
+ signatures,
327
+ };
328
+ });
329
+ exports.toJwsJsonGeneral = toJwsJsonGeneral;
330
+ function resolveExternalIdentifierFromJwsHeader(protectedHeader, context, args) {
331
+ return __awaiter(this, void 0, void 0, function* () {
332
+ var _a, _b, _c;
333
+ if (protectedHeader.x5c) {
334
+ const x5c = protectedHeader.x5c;
335
+ return yield context.agent.identifierExternalResolveByX5c(Object.assign(Object.assign({}, (_a = args.opts) === null || _a === void 0 ? void 0 : _a.x5c), { identifier: x5c, verify: true }));
336
+ }
337
+ else if (protectedHeader.jwk) {
338
+ const jwk = protectedHeader.jwk;
339
+ const x5c = jwk.x5c; // todo resolve x5u
340
+ return yield context.agent.identifierExternalResolveByJwk(Object.assign({ identifier: protectedHeader.jwk }, (x5c && {
341
+ x5c: Object.assign(Object.assign({}, (_b = args === null || args === void 0 ? void 0 : args.opts) === null || _b === void 0 ? void 0 : _b.x5c), { identifier: x5c }),
342
+ })));
343
+ }
344
+ else if (protectedHeader.kid && protectedHeader.kid.startsWith('did:')) {
345
+ return yield context.agent.identifierExternalResolveByDid(Object.assign(Object.assign({}, (_c = args === null || args === void 0 ? void 0 : args.opts) === null || _c === void 0 ? void 0 : _c.did), { identifier: protectedHeader.kid }));
346
+ }
347
+ else if (protectedHeader.alg === 'none') {
348
+ return undefined;
349
+ }
350
+ else {
351
+ return Promise.reject(Error(`We can only process DIDs, X.509 certificate chains and JWKs for signature validation at present`));
352
+ }
353
+ });
354
+ }
355
+ const toJwsJsonGeneralWithIdentifiers = (args, context) => __awaiter(void 0, void 0, void 0, function* () {
356
+ const jws = yield (0, exports.toJwsJsonGeneral)(args, context);
357
+ const signatures = (yield Promise.all(jws.signatures.map((signature) => __awaiter(void 0, void 0, void 0, function* () {
358
+ const protectedHeader = (0, utils_1.decodeJoseBlob)(signature.protected);
359
+ const identifier = args.jwk
360
+ ? yield (0, ssi_sdk_ext_identifier_resolution_1.resolveExternalJwkIdentifier)({ identifier: args.jwk }, context)
361
+ : yield resolveExternalIdentifierFromJwsHeader(protectedHeader, context, args);
362
+ if (identifier !== undefined) {
363
+ return Object.assign(Object.assign({}, signature), { identifier });
364
+ }
365
+ return undefined;
366
+ }))));
367
+ return { payload: jws.payload, signatures };
368
+ });
369
+ exports.toJwsJsonGeneralWithIdentifiers = toJwsJsonGeneralWithIdentifiers;
234
370
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
  declare const schema: any;
5
5
  export { schema };
6
+ export declare const JwtLogger: import("@sphereon/ssi-types").ISimpleLogger<unknown>;
6
7
  /**
7
8
  * @public
8
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,QAAA,MAAM,MAAM,KAAmC,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,QAAA,MAAM,MAAM,KAAmC,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,CAAA;AAEjB,eAAO,MAAM,SAAS,sDAA0C,CAAA;AAChE;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -14,12 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.JwtService = exports.schema = void 0;
17
+ exports.JwtService = exports.JwtLogger = exports.schema = void 0;
18
+ const ssi_types_1 = require("@sphereon/ssi-types");
18
19
  /**
19
20
  * @internal
20
21
  */
21
22
  const schema = require('../plugin.schema.json');
22
23
  exports.schema = schema;
24
+ exports.JwtLogger = ssi_types_1.Loggers.DEFAULT.get('sphereon:sdk:jwt');
23
25
  /**
24
26
  * @public
25
27
  */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;AACtC,wBAAM;AACf;;GAEG;AACH,iDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,8CAA2B;AAC3B,sDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mDAA4C;AAE5C;;GAEG;AACH,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;AACtC,wBAAM;AAEF,QAAA,SAAS,GAAG,mBAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAChE;;GAEG;AACH,iDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,8CAA2B;AAC3B,sDAAmC"}
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.47.5"
8
+ "packageVersion": "7.47.11"
9
9
  }
10
10
  ]
11
11
  }
@@ -1,36 +1,105 @@
1
- import { IIdentifierResolution, ManagedIdentifierOptsOrResult, ManagedIdentifierResult } from '@sphereon/ssi-sdk-ext.identifier-resolution';
2
- import { ISphereonKeyManager } from '@sphereon/ssi-sdk-ext.key-manager';
3
- import { JWK, SignatureAlgorithmJwa } from '@sphereon/ssi-sdk-ext.key-utils';
4
- import { IAgentContext, IPluginMethodMap } from '@veramo/core';
5
- export type IRequiredContext = IAgentContext<IIdentifierResolution & ISphereonKeyManager>;
1
+ import { ExternalIdentifierDidOpts, ExternalIdentifierResult, ExternalIdentifierX5cOpts, IIdentifierResolution, ManagedIdentifierOptsOrResult, ManagedIdentifierResult } from '@sphereon/ssi-sdk-ext.identifier-resolution';
2
+ import { ClientIdScheme } from '@sphereon/ssi-sdk-ext.x509-utils';
3
+ import { BaseJWK, IValidationResult, JoseSignatureAlgorithm, JoseSignatureAlgorithmString, JWK } from '@sphereon/ssi-types';
4
+ import { IAgentContext, IKeyManager, IPluginMethodMap } from '@veramo/core';
5
+ export type IRequiredContext = IAgentContext<IIdentifierResolution & IKeyManager>;
6
+ export declare const jwtServiceContextMethods: Array<string>;
6
7
  export interface IJwtService extends IPluginMethodMap {
7
8
  jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject>;
8
9
  jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral>;
9
10
  jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened>;
10
- jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwsCompactResult>;
11
+ jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult>;
12
+ jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult>;
13
+ jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>;
14
+ jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>;
11
15
  }
16
+ export type IJwsValidationResult = IValidationResult & {
17
+ jws: JwsJsonGeneralWithIdentifiers;
18
+ };
12
19
  export interface PreparedJws {
13
- protectedHeader: JwtHeader;
20
+ protectedHeader: JwsHeader;
14
21
  payload: Uint8Array;
15
- unprotectedHeader?: JwtHeader;
22
+ unprotectedHeader?: JwsHeader;
16
23
  existingSignatures?: Array<JwsJsonSignature>;
17
24
  }
18
25
  export interface JwsJsonSignature {
19
26
  protected: string;
20
- header?: JwtHeader;
27
+ header?: JwsHeader;
21
28
  signature: string;
22
29
  }
30
+ /**
31
+ * The JWK representation of an ephemeral public key.
32
+ * See https://www.rfc-editor.org/rfc/rfc7518.html#section-6
33
+ */
34
+ export type EphemeralPublicKey = Omit<BaseJWK, 'alg'>;
35
+ export interface JweHeader extends Omit<BaseJwtHeader, 'alg'> {
36
+ alg: string;
37
+ enc: string;
38
+ jku?: string;
39
+ jwk?: BaseJWK;
40
+ epk?: EphemeralPublicKey;
41
+ x5u?: string;
42
+ x5c?: string[];
43
+ x5t?: string;
44
+ cty?: string;
45
+ crit?: string[];
46
+ [k: string]: any;
47
+ }
48
+ export interface JweRecipientUnprotectedHeader {
49
+ alg: string;
50
+ iv: string;
51
+ tag: string;
52
+ epk?: EphemeralPublicKey;
53
+ kid?: string;
54
+ apv?: string;
55
+ apu?: string;
56
+ }
57
+ export interface JweProtectedHeader extends Partial<JweHeader> {
58
+ zip?: 'DEF' | string;
59
+ }
60
+ export type Jws = JwsCompact | JwsJsonFlattened | JwsJsonGeneral;
23
61
  export type JwsCompact = string;
24
62
  export interface JwsJsonFlattened {
25
63
  payload: string;
26
64
  protected: string;
27
- header?: JwtHeader;
65
+ header?: JwsHeader;
28
66
  signature: string;
29
67
  }
30
68
  export interface JwsJsonGeneral {
31
69
  payload: string;
32
70
  signatures: Array<JwsJsonSignature>;
33
71
  }
72
+ export interface JwsJsonGeneralWithIdentifiers extends JwsJsonGeneral {
73
+ signatures: Array<JwsJsonSignatureWithIdentifier>;
74
+ }
75
+ export interface JwsJsonSignatureWithIdentifier extends JwsJsonSignature {
76
+ identifier: ExternalIdentifierResult;
77
+ }
78
+ export type Jwe = JweCompact | JweJsonFlattened | JweJsonGeneral;
79
+ export type JweCompact = string;
80
+ export interface JweJsonFlattened {
81
+ protected: string;
82
+ unprotected: JweHeader;
83
+ header: JweHeader | JweRecipientUnprotectedHeader;
84
+ encrypted_key?: string;
85
+ aad?: string;
86
+ iv: string;
87
+ ciphertext: string;
88
+ tag?: string;
89
+ }
90
+ export interface JweRecipient {
91
+ header?: JweRecipientUnprotectedHeader;
92
+ encrypted_key?: string;
93
+ }
94
+ export interface JweJsonGeneral {
95
+ protected: string;
96
+ unprotected?: JweHeader;
97
+ recipients: Array<JweRecipient>;
98
+ aad?: string;
99
+ iv: string;
100
+ ciphertext: string;
101
+ tag?: string;
102
+ }
34
103
  export interface PreparedJwsObject {
35
104
  jws: PreparedJws;
36
105
  b64: {
@@ -53,41 +122,101 @@ export interface BaseJwtPayload {
53
122
  iat?: number;
54
123
  jti?: string;
55
124
  }
56
- export interface JwtHeader extends BaseJwtHeader {
125
+ export interface JwsHeader extends BaseJwtHeader {
57
126
  kid?: string;
58
127
  jwk?: JWK;
59
128
  x5c?: string[];
60
129
  [key: string]: unknown;
61
130
  }
62
- export interface JwtPayload extends BaseJwtPayload {
131
+ export interface JwsPayload extends BaseJwtPayload {
63
132
  [key: string]: unknown;
64
133
  }
65
134
  export interface JwsHeaderOpts {
66
- als: SignatureAlgorithmJwa;
135
+ alg: JoseSignatureAlgorithm | JoseSignatureAlgorithmString;
67
136
  }
68
- export type CreateJwsMode = 'x5c' | 'kid' | 'jwk' | 'did' | 'auto';
137
+ export type JwsIdentifierMode = 'x5c' | 'kid' | 'jwk' | 'did' | 'auto';
138
+ export type EncryptJweCompactJwtArgs = {
139
+ payload: JwsPayload;
140
+ protectedHeader?: JweProtectedHeader | undefined;
141
+ aad?: Uint8Array | undefined;
142
+ recipientKey: ExternalIdentifierResult & {
143
+ kid?: string;
144
+ };
145
+ alg?: JweAlg;
146
+ enc?: JweEnc;
147
+ apu?: string;
148
+ apv?: string;
149
+ expirationTime?: number | string | Date;
150
+ issuer?: string;
151
+ audience?: string | string[];
152
+ };
153
+ export type DecryptJweCompactJwtArgs = {
154
+ jwe: JweCompact;
155
+ idOpts: ManagedIdentifierOptsOrResult;
156
+ };
69
157
  export type CreateJwsArgs = {
70
- mode?: CreateJwsMode;
158
+ mode?: JwsIdentifierMode;
71
159
  issuer: ManagedIdentifierOptsOrResult & {
72
160
  noIssPayloadUpdate?: boolean;
73
161
  noIdentifierInHeader?: boolean;
74
162
  };
75
- protectedHeader: JwtHeader;
76
- payload: JwtPayload | Uint8Array | string;
163
+ clientId?: string;
164
+ clientIdScheme?: ClientIdScheme | 'did' | string;
165
+ protectedHeader: JwsHeader;
166
+ payload: JwsPayload | Uint8Array | string;
167
+ };
168
+ export type CreateJweArgs = {
169
+ mode?: JwsIdentifierMode;
170
+ issuer: ManagedIdentifierOptsOrResult & {
171
+ noIssPayloadUpdate?: boolean;
172
+ noIdentifierInHeader?: boolean;
173
+ };
174
+ protectedHeader: JweProtectedHeader;
175
+ encryptedKey: string | EphemeralPublicKey;
176
+ iv: string;
177
+ ciphertext: string;
178
+ tag: string;
77
179
  };
78
180
  export type CreateJwsCompactArgs = CreateJwsArgs;
79
181
  export type CreateJwsFlattenedArgs = Exclude<CreateJwsJsonArgs, 'existingSignatures'>;
182
+ export type VerifyJwsArgs = {
183
+ jws: Jws;
184
+ jwk?: JWK;
185
+ opts?: {
186
+ x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>;
187
+ did?: Omit<ExternalIdentifierDidOpts, 'identifier'>;
188
+ };
189
+ };
80
190
  /**
81
191
  * @public
82
192
  */
83
193
  export type CreateJwsJsonArgs = CreateJwsArgs & {
84
- unprotectedHeader?: JwtHeader;
194
+ unprotectedHeader?: JwsHeader;
85
195
  existingSignatures?: Array<JwsJsonSignature>;
86
196
  };
197
+ export type CreateJweJsonArgs = CreateJweArgs & {
198
+ unprotectedHeader?: JweHeader;
199
+ };
87
200
  /**
88
201
  * @public
89
202
  */
90
- export interface JwsCompactResult {
91
- jwt: JwsCompact;
203
+ export interface JwtCompactResult {
204
+ jwt: JwsCompact | JweCompact;
92
205
  }
206
+ export declare function isJwsCompact(jws: Jws): jws is JwsCompact;
207
+ export declare function isJweCompact(jwe: Jwe): jwe is JweCompact;
208
+ export declare function isJwsJsonFlattened(jws: Jws): jws is JwsJsonFlattened;
209
+ export declare function isJwsJsonGeneral(jws: Jws): jws is JwsJsonGeneral;
210
+ export declare function isJweJsonFlattened(jwe: Jwe): jwe is JweJsonFlattened;
211
+ export declare function isJweJsonGeneral(jwe: Jwe): jwe is JweJsonGeneral;
212
+ export declare function isJwsHeader(header: BaseJwtHeader & Record<string, any>): header is JwsHeader;
213
+ export declare function isJweHeader(header: BaseJwtHeader & Record<string, any>): header is JweHeader;
214
+ export declare const COMPACT_JWS_REGEX: RegExp;
215
+ export declare const COMPACT_JWE_REGEX: RegExp;
216
+ export declare const JweAlgs: readonly ["RSA1_5", "RSA-OAEP", "RSA-OAEP-256", "A128KW", "A192KW", "A256KW", "dir", "ECDH-ES", "ECDH-ES+A128KW", "ECDH-ES+A192KW", "ECDH-ES+A256KW", "A128GCMKW", "A192GCMKW", "A256GCMKW", "PBES2-HS256+A128KW", "PBES2-HS384+A192KW", "PBES2-HS512+A256KW"];
217
+ export type JweAlg = typeof JweAlgs[number];
218
+ export declare function jweAlg(alg?: string | JweAlg): JweAlg | undefined;
219
+ export declare const JweEncs: readonly ["A128CBC-HS256", "A192CBC-HS384", "A256CBC-HS512", "A128GCM", "A192GCM", "A256GCM"];
220
+ export type JweEnc = typeof JweEncs[number];
221
+ export declare function jweEnc(alg?: string | JweEnc): JweEnc | undefined;
93
222
  //# sourceMappingURL=IJwtService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IJwtService.d.ts","sourceRoot":"","sources":["../../src/types/IJwtService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IJwtService.d.ts","sourceRoot":"","sources":["../../src/types/IJwtService.ts"],"names":[],"mappings":"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"}