@sphereon/ssi-sdk-ext.identifier-resolution 0.24.1-next.103 → 0.24.1-next.104

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.
Files changed (37) hide show
  1. package/dist/agent/IdentifierResolution.d.ts +3 -0
  2. package/dist/agent/IdentifierResolution.d.ts.map +1 -1
  3. package/dist/agent/IdentifierResolution.js +18 -0
  4. package/dist/agent/IdentifierResolution.js.map +1 -1
  5. package/dist/functions/externalIdentifierFunctions.d.ts +17 -1
  6. package/dist/functions/externalIdentifierFunctions.d.ts.map +1 -1
  7. package/dist/functions/externalIdentifierFunctions.js +82 -2
  8. package/dist/functions/externalIdentifierFunctions.js.map +1 -1
  9. package/dist/functions/managedIdentifierFunctions.d.ts +7 -1
  10. package/dist/functions/managedIdentifierFunctions.d.ts.map +1 -1
  11. package/dist/functions/managedIdentifierFunctions.js +39 -1
  12. package/dist/functions/managedIdentifierFunctions.js.map +1 -1
  13. package/dist/types/IIdentifierResolution.d.ts +5 -2
  14. package/dist/types/IIdentifierResolution.d.ts.map +1 -1
  15. package/dist/types/IIdentifierResolution.js +3 -0
  16. package/dist/types/IIdentifierResolution.js.map +1 -1
  17. package/dist/types/common.d.ts +2 -1
  18. package/dist/types/common.d.ts.map +1 -1
  19. package/dist/types/common.js +5 -1
  20. package/dist/types/common.js.map +1 -1
  21. package/dist/types/externalIdentifierTypes.d.ts +23 -6
  22. package/dist/types/externalIdentifierTypes.d.ts.map +1 -1
  23. package/dist/types/externalIdentifierTypes.js +6 -1
  24. package/dist/types/externalIdentifierTypes.js.map +1 -1
  25. package/dist/types/managedIdentifierTypes.d.ts +16 -6
  26. package/dist/types/managedIdentifierTypes.d.ts.map +1 -1
  27. package/dist/types/managedIdentifierTypes.js +10 -1
  28. package/dist/types/managedIdentifierTypes.js.map +1 -1
  29. package/package.json +12 -12
  30. package/plugin.schema.json +932 -110
  31. package/src/agent/IdentifierResolution.ts +33 -1
  32. package/src/functions/externalIdentifierFunctions.ts +94 -4
  33. package/src/functions/managedIdentifierFunctions.ts +46 -2
  34. package/src/types/IIdentifierResolution.ts +18 -0
  35. package/src/types/common.ts +5 -1
  36. package/src/types/externalIdentifierTypes.ts +54 -13
  37. package/src/types/managedIdentifierTypes.ts +37 -8
@@ -13,6 +13,9 @@
13
13
  },
14
14
  "identifier": {
15
15
  "$ref": "#/components/schemas/ExternalIdentifierType"
16
+ },
17
+ "x5c": {
18
+ "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
16
19
  }
17
20
  },
18
21
  "required": [
@@ -41,6 +44,33 @@
41
44
  "items": {
42
45
  "type": "string"
43
46
  }
47
+ },
48
+ "trustRootWhenNoAnchors": {
49
+ "type": "boolean"
50
+ },
51
+ "allowSingleNoCAChainElement": {
52
+ "type": "boolean"
53
+ },
54
+ "blindlyTrustedAnchors": {
55
+ "type": "array",
56
+ "items": {
57
+ "type": "string"
58
+ }
59
+ },
60
+ "client": {
61
+ "type": "object",
62
+ "properties": {
63
+ "clientId": {
64
+ "type": "string"
65
+ },
66
+ "clientIdScheme": {
67
+ "$ref": "#/components/schemas/ClientIdScheme"
68
+ }
69
+ },
70
+ "required": [
71
+ "clientId",
72
+ "clientIdScheme"
73
+ ]
44
74
  }
45
75
  },
46
76
  "required": [
@@ -91,6 +121,21 @@
91
121
  "required": [
92
122
  "identifier"
93
123
  ]
124
+ },
125
+ {
126
+ "type": "object",
127
+ "properties": {
128
+ "method": {
129
+ "type": "string",
130
+ "const": "cose_key"
131
+ },
132
+ "identifier": {
133
+ "$ref": "#/components/schemas/ExternalIdentifierType"
134
+ }
135
+ },
136
+ "required": [
137
+ "identifier"
138
+ ]
94
139
  }
95
140
  ]
96
141
  },
@@ -115,10 +160,34 @@
115
160
  "type": "object",
116
161
  "properties": {
117
162
  "kty": {
118
- "type": "string"
163
+ "anyOf": [
164
+ {
165
+ "$ref": "#/components/schemas/JwkKeyType"
166
+ },
167
+ {
168
+ "$ref": "#/components/schemas/JwkKeyTypeString"
169
+ }
170
+ ]
119
171
  },
120
172
  "crv": {
121
- "type": "string"
173
+ "anyOf": [
174
+ {
175
+ "$ref": "#/components/schemas/JoseCurve"
176
+ },
177
+ {
178
+ "$ref": "#/components/schemas/JoseCurveString"
179
+ }
180
+ ]
181
+ },
182
+ "alg": {
183
+ "anyOf": [
184
+ {
185
+ "$ref": "#/components/schemas/JoseSignatureAlgorithm"
186
+ },
187
+ {
188
+ "$ref": "#/components/schemas/JoseSignatureAlgorithmString"
189
+ }
190
+ ]
122
191
  },
123
192
  "x": {
124
193
  "type": "string"
@@ -150,7 +219,14 @@
150
219
  "key_ops": {
151
220
  "type": "array",
152
221
  "items": {
153
- "type": "string"
222
+ "anyOf": [
223
+ {
224
+ "$ref": "#/components/schemas/JoseKeyOperation"
225
+ },
226
+ {
227
+ "$ref": "#/components/schemas/JoseKeyOperationString"
228
+ }
229
+ ]
154
230
  }
155
231
  },
156
232
  "kid": {
@@ -203,6 +279,9 @@
203
279
  "x5u": {
204
280
  "type": "string",
205
281
  "description": "JWK \"x5u\" (X.509 URL) Parameter."
282
+ },
283
+ "iv": {
284
+ "type": "string"
206
285
  }
207
286
  },
208
287
  "additionalProperties": {},
@@ -210,94 +289,361 @@
210
289
  "kty"
211
290
  ]
212
291
  },
213
- "DIDDocumentSection": {
292
+ "JwkKeyType": {
214
293
  "type": "string",
215
294
  "enum": [
216
- "verificationMethod",
217
- "publicKey",
218
- "service",
219
- "authentication",
220
- "assertionMethod",
221
- "keyAgreement",
222
- "capabilityInvocation",
223
- "capabilityDelegation"
224
- ],
225
- "description": "Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\n\nSee {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }"
295
+ "EC",
296
+ "RSA",
297
+ "oct",
298
+ "OKP"
299
+ ]
226
300
  },
227
- "ExternalIdentifierResult": {
228
- "anyOf": [
229
- {
230
- "$ref": "#/components/schemas/ExternalIdentifierDidResult"
231
- },
232
- {
233
- "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
234
- }
301
+ "JwkKeyTypeString": {
302
+ "type": "string",
303
+ "enum": [
304
+ "EC",
305
+ "RSA",
306
+ "oct",
307
+ "OKP"
235
308
  ]
236
309
  },
237
- "ExternalIdentifierDidResult": {
310
+ "JoseCurve": {
311
+ "type": "string",
312
+ "enum": [
313
+ "P-256",
314
+ "P-384",
315
+ "P-521",
316
+ "X25519",
317
+ "X448",
318
+ "EdDSA",
319
+ "Ed25519",
320
+ "Ed448",
321
+ "secp256k1"
322
+ ]
323
+ },
324
+ "JoseCurveString": {
325
+ "type": "string",
326
+ "enum": [
327
+ "P-256",
328
+ "P-384",
329
+ "P-521",
330
+ "X25519",
331
+ "X448",
332
+ "EdDSA",
333
+ "Ed25519",
334
+ "Ed448",
335
+ "secp256k1"
336
+ ]
337
+ },
338
+ "JoseSignatureAlgorithm": {
339
+ "type": "string",
340
+ "enum": [
341
+ "RS256",
342
+ "RS384",
343
+ "RS512",
344
+ "ES256",
345
+ "ES256K",
346
+ "ES384",
347
+ "ES512",
348
+ "EdDSA",
349
+ "HS256",
350
+ "HS384",
351
+ "HS512",
352
+ "PS256",
353
+ "PS384",
354
+ "PS512",
355
+ "none"
356
+ ]
357
+ },
358
+ "JoseSignatureAlgorithmString": {
359
+ "type": "string",
360
+ "enum": [
361
+ "RS256",
362
+ "RS384",
363
+ "RS512",
364
+ "ES256",
365
+ "ES256K",
366
+ "ES384",
367
+ "ES512",
368
+ "EdDSA",
369
+ "HS256",
370
+ "HS384",
371
+ "HS512",
372
+ "PS256",
373
+ "PS384",
374
+ "PS512",
375
+ "none"
376
+ ]
377
+ },
378
+ "JoseKeyOperation": {
379
+ "type": "string",
380
+ "enum": [
381
+ "sign",
382
+ "verify",
383
+ "encrypt",
384
+ "decrypt",
385
+ "wrapKey",
386
+ "unwrapKey",
387
+ "deriveKey",
388
+ "deriveBits"
389
+ ]
390
+ },
391
+ "JoseKeyOperationString": {
392
+ "type": "string",
393
+ "enum": [
394
+ "sign",
395
+ "verify",
396
+ "encrypt",
397
+ "decrypt",
398
+ "wrapKey",
399
+ "unwrapKey",
400
+ "deriveKey",
401
+ "deriveBits"
402
+ ]
403
+ },
404
+ "ExternalIdentifierX5cOpts": {
238
405
  "type": "object",
239
406
  "properties": {
240
407
  "method": {
241
408
  "type": "string",
242
- "const": "did"
409
+ "const": "x5c"
243
410
  },
244
- "jwks": {
411
+ "identifier": {
412
+ "$ref": "#/components/schemas/ExternalIdentifierType"
413
+ },
414
+ "verify": {
415
+ "type": "boolean"
416
+ },
417
+ "verificationTime": {
418
+ "type": "string",
419
+ "format": "date-time"
420
+ },
421
+ "trustAnchors": {
245
422
  "type": "array",
246
423
  "items": {
247
- "$ref": "#/components/schemas/ExternalJwkInfo"
424
+ "type": "string"
248
425
  }
249
426
  },
250
- "did": {
251
- "type": "string"
427
+ "trustRootWhenNoAnchors": {
428
+ "type": "boolean"
252
429
  },
253
- "didDocument": {
254
- "$ref": "#/components/schemas/DIDDocument"
430
+ "allowSingleNoCAChainElement": {
431
+ "type": "boolean"
255
432
  },
256
- "didJwks": {
257
- "$ref": "#/components/schemas/DidDocumentJwks"
433
+ "blindlyTrustedAnchors": {
434
+ "type": "array",
435
+ "items": {
436
+ "type": "string"
437
+ }
258
438
  },
259
- "didResolutionResult": {
439
+ "client": {
260
440
  "type": "object",
261
441
  "properties": {
262
- "@context": {
263
- "anyOf": [
264
- {
265
- "type": "string",
266
- "const": "https://w3id.org/did-resolution/v1"
442
+ "clientId": {
443
+ "type": "string"
444
+ },
445
+ "clientIdScheme": {
446
+ "$ref": "#/components/schemas/ClientIdScheme"
447
+ }
448
+ },
449
+ "required": [
450
+ "clientId",
451
+ "clientIdScheme"
452
+ ]
453
+ }
454
+ },
455
+ "required": [
456
+ "identifier"
457
+ ]
458
+ },
459
+ "ClientIdScheme": {
460
+ "type": "string",
461
+ "enum": [
462
+ "x509_san_dns",
463
+ "x509_san_uri"
464
+ ]
465
+ },
466
+ "DIDDocumentSection": {
467
+ "type": "string",
468
+ "enum": [
469
+ "verificationMethod",
470
+ "publicKey",
471
+ "service",
472
+ "authentication",
473
+ "assertionMethod",
474
+ "keyAgreement",
475
+ "capabilityInvocation",
476
+ "capabilityDelegation"
477
+ ],
478
+ "description": "Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\n\nSee {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }"
479
+ },
480
+ "ExternalIdentifierResult": {
481
+ "anyOf": [
482
+ {
483
+ "type": "object",
484
+ "properties": {
485
+ "method": {
486
+ "$ref": "#/components/schemas/ExternalIdentifierMethod"
487
+ },
488
+ "jwks": {
489
+ "type": "array",
490
+ "items": {
491
+ "$ref": "#/components/schemas/ExternalJwkInfo"
492
+ }
493
+ },
494
+ "did": {
495
+ "type": "string"
496
+ },
497
+ "didDocument": {
498
+ "$ref": "#/components/schemas/DIDDocument"
499
+ },
500
+ "didJwks": {
501
+ "$ref": "#/components/schemas/DidDocumentJwks"
502
+ },
503
+ "didResolutionResult": {
504
+ "type": "object",
505
+ "properties": {
506
+ "@context": {
507
+ "anyOf": [
508
+ {
509
+ "type": "string",
510
+ "const": "https://w3id.org/did-resolution/v1"
511
+ },
512
+ {
513
+ "type": "string"
514
+ },
515
+ {
516
+ "type": "array",
517
+ "items": {
518
+ "type": "string"
519
+ }
520
+ }
521
+ ]
267
522
  },
268
- {
269
- "type": "string"
523
+ "didResolutionMetadata": {
524
+ "$ref": "#/components/schemas/DIDResolutionMetadata"
270
525
  },
271
- {
272
- "type": "array",
273
- "items": {
274
- "type": "string"
275
- }
526
+ "didDocumentMetadata": {
527
+ "$ref": "#/components/schemas/DIDDocumentMetadata"
276
528
  }
529
+ },
530
+ "required": [
531
+ "didResolutionMetadata",
532
+ "didDocumentMetadata"
277
533
  ]
278
534
  },
279
- "didResolutionMetadata": {
280
- "$ref": "#/components/schemas/DIDResolutionMetadata"
535
+ "didParsed": {
536
+ "$ref": "#/components/schemas/IParsedDID"
537
+ }
538
+ },
539
+ "required": [
540
+ "did",
541
+ "didParsed",
542
+ "didResolutionResult",
543
+ "jwks",
544
+ "method"
545
+ ]
546
+ },
547
+ {
548
+ "type": "object",
549
+ "properties": {
550
+ "method": {
551
+ "$ref": "#/components/schemas/ExternalIdentifierMethod"
281
552
  },
282
- "didDocumentMetadata": {
283
- "$ref": "#/components/schemas/DIDDocumentMetadata"
553
+ "jwks": {
554
+ "type": "array",
555
+ "items": {
556
+ "$ref": "#/components/schemas/ExternalJwkInfo"
557
+ }
558
+ },
559
+ "x5c": {
560
+ "type": "array",
561
+ "items": {
562
+ "type": "string"
563
+ }
564
+ },
565
+ "issuerJWK": {
566
+ "$ref": "#/components/schemas/JWK"
567
+ },
568
+ "verificationResult": {
569
+ "$ref": "#/components/schemas/X509ValidationResult"
570
+ },
571
+ "certificates": {
572
+ "type": "array",
573
+ "items": {}
284
574
  }
285
575
  },
286
576
  "required": [
287
- "didResolutionMetadata",
288
- "didDocumentMetadata"
577
+ "certificates",
578
+ "issuerJWK",
579
+ "jwks",
580
+ "method",
581
+ "x5c"
289
582
  ]
290
583
  },
291
- "didParsed": {
292
- "$ref": "#/components/schemas/IParsedDID"
584
+ {
585
+ "type": "object",
586
+ "properties": {
587
+ "method": {
588
+ "$ref": "#/components/schemas/ExternalIdentifierMethod"
589
+ },
590
+ "jwks": {
591
+ "type": "array",
592
+ "items": {
593
+ "$ref": "#/components/schemas/ExternalJwkInfo"
594
+ }
595
+ },
596
+ "jwk": {
597
+ "$ref": "#/components/schemas/JWK"
598
+ },
599
+ "x5c": {
600
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
601
+ }
602
+ },
603
+ "required": [
604
+ "jwk",
605
+ "jwks",
606
+ "method"
607
+ ]
608
+ },
609
+ {
610
+ "type": "object",
611
+ "properties": {
612
+ "method": {
613
+ "$ref": "#/components/schemas/ExternalIdentifierMethod"
614
+ },
615
+ "jwks": {
616
+ "type": "array",
617
+ "items": {
618
+ "$ref": "#/components/schemas/ExternalJwkInfo"
619
+ }
620
+ },
621
+ "coseKey": {
622
+ "$ref": "#/components/schemas/ICoseKeyJson"
623
+ },
624
+ "x5c": {
625
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
626
+ }
627
+ },
628
+ "required": [
629
+ "coseKey",
630
+ "jwks",
631
+ "method"
632
+ ]
293
633
  }
294
- },
295
- "required": [
634
+ ]
635
+ },
636
+ "ExternalIdentifierMethod": {
637
+ "type": "string",
638
+ "enum": [
296
639
  "did",
297
- "didParsed",
298
- "didResolutionResult",
299
- "jwks",
300
- "method"
640
+ "jwk",
641
+ "x5c",
642
+ "kid",
643
+ "cose_key",
644
+ "oidc-discovery",
645
+ "jwks-url",
646
+ "oid4vci-issuer"
301
647
  ]
302
648
  },
303
649
  "ExternalJwkInfo": {
@@ -311,11 +657,15 @@
311
657
  },
312
658
  "kid": {
313
659
  "type": "string"
660
+ },
661
+ "publicKeyHex": {
662
+ "type": "string"
314
663
  }
315
664
  },
316
665
  "required": [
317
666
  "jwk",
318
- "jwkThumbprint"
667
+ "jwkThumbprint",
668
+ "publicKeyHex"
319
669
  ]
320
670
  },
321
671
  "DIDDocument": {
@@ -769,44 +1119,6 @@
769
1119
  "id"
770
1120
  ]
771
1121
  },
772
- "ExternalIdentifierX5cResult": {
773
- "type": "object",
774
- "properties": {
775
- "method": {
776
- "type": "string",
777
- "const": "x5c"
778
- },
779
- "jwks": {
780
- "type": "array",
781
- "items": {
782
- "$ref": "#/components/schemas/ExternalJwkInfo"
783
- }
784
- },
785
- "x5c": {
786
- "type": "array",
787
- "items": {
788
- "type": "string"
789
- }
790
- },
791
- "issuerJWK": {
792
- "$ref": "#/components/schemas/JWK"
793
- },
794
- "verificationResult": {
795
- "$ref": "#/components/schemas/X509ValidationResult"
796
- },
797
- "certificates": {
798
- "type": "array",
799
- "items": {}
800
- }
801
- },
802
- "required": [
803
- "certificates",
804
- "issuerJWK",
805
- "jwks",
806
- "method",
807
- "x5c"
808
- ]
809
- },
810
1122
  "X509ValidationResult": {
811
1123
  "type": "object",
812
1124
  "properties": {
@@ -828,6 +1140,21 @@
828
1140
  "items": {
829
1141
  "$ref": "#/components/schemas/CertificateInfo"
830
1142
  }
1143
+ },
1144
+ "client": {
1145
+ "type": "object",
1146
+ "properties": {
1147
+ "clientId": {
1148
+ "type": "string"
1149
+ },
1150
+ "clientIdScheme": {
1151
+ "$ref": "#/components/schemas/ClientIdScheme"
1152
+ }
1153
+ },
1154
+ "required": [
1155
+ "clientId",
1156
+ "clientIdScheme"
1157
+ ]
831
1158
  }
832
1159
  },
833
1160
  "required": [
@@ -930,6 +1257,186 @@
930
1257
  ],
931
1258
  "description": "otherName [0] OtherName, rfc822Name [1] IA5String, dNSName [2] IA5String, x400Address [3] ORAddress, directoryName [4] Name, ediPartyName [5] EDIPartyName, uniformResourceIdentifier [6] IA5String, iPAddress [7] OCTET STRING, registeredID [8] OBJECT IDENTIFIER }"
932
1259
  },
1260
+ "ExternalIdentifierX5cResult": {
1261
+ "type": "object",
1262
+ "properties": {
1263
+ "method": {
1264
+ "type": "string",
1265
+ "const": "x5c"
1266
+ },
1267
+ "jwks": {
1268
+ "type": "array",
1269
+ "items": {
1270
+ "$ref": "#/components/schemas/ExternalJwkInfo"
1271
+ }
1272
+ },
1273
+ "x5c": {
1274
+ "type": "array",
1275
+ "items": {
1276
+ "type": "string"
1277
+ }
1278
+ },
1279
+ "issuerJWK": {
1280
+ "$ref": "#/components/schemas/JWK"
1281
+ },
1282
+ "verificationResult": {
1283
+ "$ref": "#/components/schemas/X509ValidationResult"
1284
+ },
1285
+ "certificates": {
1286
+ "type": "array",
1287
+ "items": {}
1288
+ }
1289
+ },
1290
+ "required": [
1291
+ "certificates",
1292
+ "issuerJWK",
1293
+ "jwks",
1294
+ "method",
1295
+ "x5c"
1296
+ ]
1297
+ },
1298
+ "ICoseKeyJson": {
1299
+ "type": "object",
1300
+ "properties": {
1301
+ "kty": {
1302
+ "$ref": "#/components/schemas/ICoseKeyType"
1303
+ },
1304
+ "kid": {
1305
+ "type": "string"
1306
+ },
1307
+ "alg": {
1308
+ "$ref": "#/components/schemas/ICoseSignatureAlgorithm"
1309
+ },
1310
+ "key_ops": {
1311
+ "type": "array",
1312
+ "items": {
1313
+ "$ref": "#/components/schemas/ICoseKeyOperation"
1314
+ }
1315
+ },
1316
+ "baseIV": {
1317
+ "type": "string"
1318
+ },
1319
+ "crv": {
1320
+ "$ref": "#/components/schemas/ICoseCurve"
1321
+ },
1322
+ "x": {
1323
+ "type": "string"
1324
+ },
1325
+ "y": {
1326
+ "type": "string"
1327
+ },
1328
+ "d": {
1329
+ "type": "string"
1330
+ },
1331
+ "x5chain": {
1332
+ "type": "array",
1333
+ "items": {
1334
+ "type": "string"
1335
+ }
1336
+ }
1337
+ },
1338
+ "required": [
1339
+ "kty"
1340
+ ],
1341
+ "additionalProperties": {},
1342
+ "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
1343
+ },
1344
+ "ICoseKeyType": {
1345
+ "type": "number",
1346
+ "enum": [
1347
+ 1,
1348
+ 2,
1349
+ 3,
1350
+ 4,
1351
+ 0
1352
+ ]
1353
+ },
1354
+ "ICoseSignatureAlgorithm": {
1355
+ "type": "number",
1356
+ "enum": [
1357
+ -7,
1358
+ -47,
1359
+ -35,
1360
+ -36,
1361
+ -8,
1362
+ 4,
1363
+ 5,
1364
+ 6,
1365
+ 7,
1366
+ -37,
1367
+ -38,
1368
+ -39
1369
+ ]
1370
+ },
1371
+ "ICoseKeyOperation": {
1372
+ "type": "number",
1373
+ "enum": [
1374
+ 1,
1375
+ 2,
1376
+ 3,
1377
+ 4,
1378
+ 5,
1379
+ 6,
1380
+ 7,
1381
+ 8,
1382
+ 9,
1383
+ 10
1384
+ ]
1385
+ },
1386
+ "ICoseCurve": {
1387
+ "type": "number",
1388
+ "enum": [
1389
+ 1,
1390
+ 2,
1391
+ 3,
1392
+ 4,
1393
+ 5,
1394
+ 6,
1395
+ 7,
1396
+ -1
1397
+ ]
1398
+ },
1399
+ "ExternalIdentifierCoseKeyOpts": {
1400
+ "type": "object",
1401
+ "properties": {
1402
+ "method": {
1403
+ "type": "string",
1404
+ "const": "cose_key"
1405
+ },
1406
+ "identifier": {
1407
+ "$ref": "#/components/schemas/ExternalIdentifierType"
1408
+ }
1409
+ },
1410
+ "required": [
1411
+ "identifier"
1412
+ ]
1413
+ },
1414
+ "ExternalIdentifierCoseKeyResult": {
1415
+ "type": "object",
1416
+ "properties": {
1417
+ "method": {
1418
+ "type": "string",
1419
+ "const": "cose_key"
1420
+ },
1421
+ "jwks": {
1422
+ "type": "array",
1423
+ "items": {
1424
+ "$ref": "#/components/schemas/ExternalJwkInfo"
1425
+ }
1426
+ },
1427
+ "coseKey": {
1428
+ "$ref": "#/components/schemas/ICoseKeyJson"
1429
+ },
1430
+ "x5c": {
1431
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
1432
+ }
1433
+ },
1434
+ "required": [
1435
+ "coseKey",
1436
+ "jwks",
1437
+ "method"
1438
+ ]
1439
+ },
933
1440
  "ExternalIdentifierDidOpts": {
934
1441
  "type": "object",
935
1442
  "properties": {
@@ -957,35 +1464,117 @@
957
1464
  }
958
1465
  },
959
1466
  "required": [
960
- "identifier"
1467
+ "identifier"
1468
+ ]
1469
+ },
1470
+ "ExternalIdentifierDidResult": {
1471
+ "type": "object",
1472
+ "properties": {
1473
+ "method": {
1474
+ "type": "string",
1475
+ "const": "did"
1476
+ },
1477
+ "jwks": {
1478
+ "type": "array",
1479
+ "items": {
1480
+ "$ref": "#/components/schemas/ExternalJwkInfo"
1481
+ }
1482
+ },
1483
+ "did": {
1484
+ "type": "string"
1485
+ },
1486
+ "didDocument": {
1487
+ "$ref": "#/components/schemas/DIDDocument"
1488
+ },
1489
+ "didJwks": {
1490
+ "$ref": "#/components/schemas/DidDocumentJwks"
1491
+ },
1492
+ "didResolutionResult": {
1493
+ "type": "object",
1494
+ "properties": {
1495
+ "@context": {
1496
+ "anyOf": [
1497
+ {
1498
+ "type": "string",
1499
+ "const": "https://w3id.org/did-resolution/v1"
1500
+ },
1501
+ {
1502
+ "type": "string"
1503
+ },
1504
+ {
1505
+ "type": "array",
1506
+ "items": {
1507
+ "type": "string"
1508
+ }
1509
+ }
1510
+ ]
1511
+ },
1512
+ "didResolutionMetadata": {
1513
+ "$ref": "#/components/schemas/DIDResolutionMetadata"
1514
+ },
1515
+ "didDocumentMetadata": {
1516
+ "$ref": "#/components/schemas/DIDDocumentMetadata"
1517
+ }
1518
+ },
1519
+ "required": [
1520
+ "didResolutionMetadata",
1521
+ "didDocumentMetadata"
1522
+ ]
1523
+ },
1524
+ "didParsed": {
1525
+ "$ref": "#/components/schemas/IParsedDID"
1526
+ }
1527
+ },
1528
+ "required": [
1529
+ "did",
1530
+ "didParsed",
1531
+ "didResolutionResult",
1532
+ "jwks",
1533
+ "method"
961
1534
  ]
962
1535
  },
963
- "ExternalIdentifierX5cOpts": {
1536
+ "ExternalIdentifierJwkOpts": {
964
1537
  "type": "object",
965
1538
  "properties": {
966
1539
  "method": {
967
1540
  "type": "string",
968
- "const": "x5c"
1541
+ "const": "jwk"
969
1542
  },
970
1543
  "identifier": {
971
1544
  "$ref": "#/components/schemas/ExternalIdentifierType"
972
1545
  },
973
- "verify": {
974
- "type": "boolean"
975
- },
976
- "verificationTime": {
1546
+ "x5c": {
1547
+ "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
1548
+ }
1549
+ },
1550
+ "required": [
1551
+ "identifier"
1552
+ ]
1553
+ },
1554
+ "ExternalIdentifierJwkResult": {
1555
+ "type": "object",
1556
+ "properties": {
1557
+ "method": {
977
1558
  "type": "string",
978
- "format": "date-time"
1559
+ "const": "jwk"
979
1560
  },
980
- "trustAnchors": {
1561
+ "jwks": {
981
1562
  "type": "array",
982
1563
  "items": {
983
- "type": "string"
1564
+ "$ref": "#/components/schemas/ExternalJwkInfo"
984
1565
  }
1566
+ },
1567
+ "jwk": {
1568
+ "$ref": "#/components/schemas/JWK"
1569
+ },
1570
+ "x5c": {
1571
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
985
1572
  }
986
1573
  },
987
1574
  "required": [
988
- "identifier"
1575
+ "jwk",
1576
+ "jwks",
1577
+ "method"
989
1578
  ]
990
1579
  },
991
1580
  "ManagedIdentifierOptsOrResult": {
@@ -1239,6 +1828,50 @@
1239
1828
  "opts"
1240
1829
  ]
1241
1830
  },
1831
+ {
1832
+ "type": "object",
1833
+ "properties": {
1834
+ "lazyDisabled": {
1835
+ "type": "boolean"
1836
+ },
1837
+ "jwk": {
1838
+ "$ref": "#/components/schemas/JWK"
1839
+ },
1840
+ "jwkThumbprint": {
1841
+ "type": "string"
1842
+ },
1843
+ "kmsKeyRef": {
1844
+ "type": "string"
1845
+ },
1846
+ "method": {
1847
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
1848
+ },
1849
+ "opts": {
1850
+ "$ref": "#/components/schemas/ManagedIdentifierOpts"
1851
+ },
1852
+ "key": {
1853
+ "$ref": "#/components/schemas/IKey"
1854
+ },
1855
+ "kid": {
1856
+ "type": "string"
1857
+ },
1858
+ "issuer": {
1859
+ "type": "string"
1860
+ },
1861
+ "identifier": {
1862
+ "$ref": "#/components/schemas/ManagedIdentifierType"
1863
+ }
1864
+ },
1865
+ "required": [
1866
+ "identifier",
1867
+ "jwk",
1868
+ "jwkThumbprint",
1869
+ "key",
1870
+ "kmsKeyRef",
1871
+ "method",
1872
+ "opts"
1873
+ ]
1874
+ },
1242
1875
  {
1243
1876
  "type": "object",
1244
1877
  "properties": {
@@ -1388,6 +2021,33 @@
1388
2021
  "required": [
1389
2022
  "identifier"
1390
2023
  ]
2024
+ },
2025
+ {
2026
+ "type": "object",
2027
+ "properties": {
2028
+ "lazyDisabled": {
2029
+ "type": "boolean"
2030
+ },
2031
+ "method": {
2032
+ "type": "string",
2033
+ "const": "cose_key"
2034
+ },
2035
+ "identifier": {
2036
+ "$ref": "#/components/schemas/ManagedIdentifierType"
2037
+ },
2038
+ "kmsKeyRef": {
2039
+ "type": "string"
2040
+ },
2041
+ "issuer": {
2042
+ "type": "string"
2043
+ },
2044
+ "kid": {
2045
+ "type": "string"
2046
+ }
2047
+ },
2048
+ "required": [
2049
+ "identifier"
2050
+ ]
1391
2051
  }
1392
2052
  ]
1393
2053
  },
@@ -1398,7 +2058,8 @@
1398
2058
  "jwk",
1399
2059
  "x5c",
1400
2060
  "kid",
1401
- "key"
2061
+ "key",
2062
+ "cose_key"
1402
2063
  ]
1403
2064
  },
1404
2065
  "ManagedIdentifierOpts": {
@@ -1537,6 +2198,30 @@
1537
2198
  "required": [
1538
2199
  "identifier"
1539
2200
  ]
2201
+ },
2202
+ {
2203
+ "type": "object",
2204
+ "properties": {
2205
+ "method": {
2206
+ "type": "string",
2207
+ "const": "cose_key"
2208
+ },
2209
+ "identifier": {
2210
+ "$ref": "#/components/schemas/ManagedIdentifierType"
2211
+ },
2212
+ "kmsKeyRef": {
2213
+ "type": "string"
2214
+ },
2215
+ "issuer": {
2216
+ "type": "string"
2217
+ },
2218
+ "kid": {
2219
+ "type": "string"
2220
+ }
2221
+ },
2222
+ "required": [
2223
+ "identifier"
2224
+ ]
1540
2225
  }
1541
2226
  ]
1542
2227
  },
@@ -1559,6 +2244,9 @@
1559
2244
  },
1560
2245
  {
1561
2246
  "$ref": "#/components/schemas/IKey"
2247
+ },
2248
+ {
2249
+ "$ref": "#/components/schemas/ICoseKeyJson"
1562
2250
  }
1563
2251
  ],
1564
2252
  "description": "Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\n\nThe functions below can be used to check the type, and they also provide the proper 'runtime' types"
@@ -1956,7 +2644,114 @@
1956
2644
  "method",
1957
2645
  "opts"
1958
2646
  ]
2647
+ },
2648
+ {
2649
+ "type": "object",
2650
+ "properties": {
2651
+ "jwk": {
2652
+ "$ref": "#/components/schemas/JWK"
2653
+ },
2654
+ "jwkThumbprint": {
2655
+ "type": "string"
2656
+ },
2657
+ "kmsKeyRef": {
2658
+ "type": "string"
2659
+ },
2660
+ "method": {
2661
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
2662
+ },
2663
+ "opts": {
2664
+ "$ref": "#/components/schemas/ManagedIdentifierOpts"
2665
+ },
2666
+ "key": {
2667
+ "$ref": "#/components/schemas/IKey"
2668
+ },
2669
+ "kid": {
2670
+ "type": "string"
2671
+ },
2672
+ "issuer": {
2673
+ "type": "string"
2674
+ },
2675
+ "identifier": {
2676
+ "$ref": "#/components/schemas/ManagedIdentifierType"
2677
+ }
2678
+ },
2679
+ "required": [
2680
+ "identifier",
2681
+ "jwk",
2682
+ "jwkThumbprint",
2683
+ "key",
2684
+ "kmsKeyRef",
2685
+ "method",
2686
+ "opts"
2687
+ ]
2688
+ }
2689
+ ]
2690
+ },
2691
+ "ManagedIdentifierCoseKeyOpts": {
2692
+ "type": "object",
2693
+ "properties": {
2694
+ "method": {
2695
+ "type": "string",
2696
+ "const": "cose_key"
2697
+ },
2698
+ "identifier": {
2699
+ "$ref": "#/components/schemas/ManagedIdentifierType"
2700
+ },
2701
+ "kmsKeyRef": {
2702
+ "type": "string"
2703
+ },
2704
+ "issuer": {
2705
+ "type": "string"
2706
+ },
2707
+ "kid": {
2708
+ "type": "string"
2709
+ }
2710
+ },
2711
+ "required": [
2712
+ "identifier"
2713
+ ]
2714
+ },
2715
+ "ManagedIdentifierCoseKeyResult": {
2716
+ "type": "object",
2717
+ "properties": {
2718
+ "jwk": {
2719
+ "$ref": "#/components/schemas/JWK"
2720
+ },
2721
+ "jwkThumbprint": {
2722
+ "type": "string"
2723
+ },
2724
+ "kmsKeyRef": {
2725
+ "type": "string"
2726
+ },
2727
+ "method": {
2728
+ "type": "string",
2729
+ "const": "cose_key"
2730
+ },
2731
+ "opts": {
2732
+ "$ref": "#/components/schemas/ManagedIdentifierOpts"
2733
+ },
2734
+ "key": {
2735
+ "$ref": "#/components/schemas/IKey"
2736
+ },
2737
+ "kid": {
2738
+ "type": "string"
2739
+ },
2740
+ "issuer": {
2741
+ "type": "string"
2742
+ },
2743
+ "identifier": {
2744
+ "$ref": "#/components/schemas/ICoseKeyJson"
1959
2745
  }
2746
+ },
2747
+ "required": [
2748
+ "identifier",
2749
+ "jwk",
2750
+ "jwkThumbprint",
2751
+ "key",
2752
+ "kmsKeyRef",
2753
+ "method",
2754
+ "opts"
1960
2755
  ]
1961
2756
  },
1962
2757
  "ManagedIdentifierDidOpts": {
@@ -2347,6 +3142,15 @@
2347
3142
  "$ref": "#/components/schemas/ExternalIdentifierResult"
2348
3143
  }
2349
3144
  },
3145
+ "identifierExternalResolveByCoseKey": {
3146
+ "description": "",
3147
+ "arguments": {
3148
+ "$ref": "#/components/schemas/ExternalIdentifierCoseKeyOpts"
3149
+ },
3150
+ "returnType": {
3151
+ "$ref": "#/components/schemas/ExternalIdentifierCoseKeyResult"
3152
+ }
3153
+ },
2350
3154
  "identifierExternalResolveByDid": {
2351
3155
  "description": "",
2352
3156
  "arguments": {
@@ -2356,6 +3160,15 @@
2356
3160
  "$ref": "#/components/schemas/ExternalIdentifierDidResult"
2357
3161
  }
2358
3162
  },
3163
+ "identifierExternalResolveByJwk": {
3164
+ "description": "",
3165
+ "arguments": {
3166
+ "$ref": "#/components/schemas/ExternalIdentifierJwkOpts"
3167
+ },
3168
+ "returnType": {
3169
+ "$ref": "#/components/schemas/ExternalIdentifierJwkResult"
3170
+ }
3171
+ },
2359
3172
  "identifierExternalResolveByX5c": {
2360
3173
  "description": "",
2361
3174
  "arguments": {
@@ -2374,6 +3187,15 @@
2374
3187
  "$ref": "#/components/schemas/ManagedIdentifierResult"
2375
3188
  }
2376
3189
  },
3190
+ "identifierManagedGetByCoseKey": {
3191
+ "description": "",
3192
+ "arguments": {
3193
+ "$ref": "#/components/schemas/ManagedIdentifierCoseKeyOpts"
3194
+ },
3195
+ "returnType": {
3196
+ "$ref": "#/components/schemas/ManagedIdentifierCoseKeyResult"
3197
+ }
3198
+ },
2377
3199
  "identifierManagedGetByDid": {
2378
3200
  "description": "",
2379
3201
  "arguments": {