@interop/did-cli 0.10.0 → 0.10.1

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 (109) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/dist/commands/collection-command.d.ts +169 -0
  3. package/dist/commands/collection-command.d.ts.map +1 -0
  4. package/dist/commands/collection-command.js +241 -0
  5. package/dist/commands/collection-command.js.map +1 -0
  6. package/dist/commands/did/create.d.ts +63 -0
  7. package/dist/commands/did/create.d.ts.map +1 -0
  8. package/dist/commands/did/create.js +625 -0
  9. package/dist/commands/did/create.js.map +1 -0
  10. package/dist/commands/did/manage.d.ts +68 -0
  11. package/dist/commands/did/manage.d.ts.map +1 -0
  12. package/dist/commands/did/manage.js +287 -0
  13. package/dist/commands/did/manage.js.map +1 -0
  14. package/dist/commands/did/service.d.ts +93 -0
  15. package/dist/commands/did/service.d.ts.map +1 -0
  16. package/dist/commands/did/service.js +324 -0
  17. package/dist/commands/did/service.js.map +1 -0
  18. package/dist/commands/did/webvh-update.d.ts +170 -0
  19. package/dist/commands/did/webvh-update.d.ts.map +1 -0
  20. package/dist/commands/did/webvh-update.js +402 -0
  21. package/dist/commands/did/webvh-update.js.map +1 -0
  22. package/dist/commands/did.d.ts +8 -8
  23. package/dist/commands/did.d.ts.map +1 -1
  24. package/dist/commands/did.js +27 -1519
  25. package/dist/commands/did.js.map +1 -1
  26. package/dist/commands/edv.d.ts +15 -6
  27. package/dist/commands/edv.d.ts.map +1 -1
  28. package/dist/commands/edv.js +38 -28
  29. package/dist/commands/edv.js.map +1 -1
  30. package/dist/commands/key.d.ts +104 -0
  31. package/dist/commands/key.d.ts.map +1 -1
  32. package/dist/commands/key.js +432 -402
  33. package/dist/commands/key.js.map +1 -1
  34. package/dist/commands/vc.d.ts +2 -1
  35. package/dist/commands/vc.d.ts.map +1 -1
  36. package/dist/commands/vc.js +88 -145
  37. package/dist/commands/vc.js.map +1 -1
  38. package/dist/commands/was/collection.d.ts.map +1 -1
  39. package/dist/commands/was/collection.js +31 -85
  40. package/dist/commands/was/collection.js.map +1 -1
  41. package/dist/commands/was/publish.d.ts.map +1 -1
  42. package/dist/commands/was/publish.js +16 -44
  43. package/dist/commands/was/publish.js.map +1 -1
  44. package/dist/commands/was/resource.d.ts.map +1 -1
  45. package/dist/commands/was/resource.js +24 -51
  46. package/dist/commands/was/resource.js.map +1 -1
  47. package/dist/commands/was/shared.d.ts +78 -0
  48. package/dist/commands/was/shared.d.ts.map +1 -1
  49. package/dist/commands/was/shared.js +84 -0
  50. package/dist/commands/was/shared.js.map +1 -1
  51. package/dist/commands/was/space.d.ts.map +1 -1
  52. package/dist/commands/was/space.js +10 -16
  53. package/dist/commands/was/space.js.map +1 -1
  54. package/dist/commands/was/tree.d.ts.map +1 -1
  55. package/dist/commands/was/tree.js +4 -6
  56. package/dist/commands/was/tree.js.map +1 -1
  57. package/dist/commands/was.d.ts.map +1 -1
  58. package/dist/commands/was.js +60 -74
  59. package/dist/commands/was.js.map +1 -1
  60. package/dist/commands/zcap.d.ts +0 -18
  61. package/dist/commands/zcap.d.ts.map +1 -1
  62. package/dist/commands/zcap.js +63 -155
  63. package/dist/commands/zcap.js.map +1 -1
  64. package/dist/documentLoader.d.ts +5 -0
  65. package/dist/documentLoader.d.ts.map +1 -0
  66. package/dist/documentLoader.js +29 -0
  67. package/dist/documentLoader.js.map +1 -0
  68. package/dist/edv/hmac.d.ts.map +1 -1
  69. package/dist/edv/hmac.js +12 -12
  70. package/dist/edv/hmac.js.map +1 -1
  71. package/dist/edv/recipients.d.ts +2 -0
  72. package/dist/edv/recipients.d.ts.map +1 -1
  73. package/dist/edv/recipients.js +12 -15
  74. package/dist/edv/recipients.js.map +1 -1
  75. package/dist/meta.d.ts +36 -11
  76. package/dist/meta.d.ts.map +1 -1
  77. package/dist/meta.js +95 -73
  78. package/dist/meta.js.map +1 -1
  79. package/dist/storage.d.ts +48 -13
  80. package/dist/storage.d.ts.map +1 -1
  81. package/dist/storage.js +40 -16
  82. package/dist/storage.js.map +1 -1
  83. package/dist/vc/issue.d.ts.map +1 -1
  84. package/dist/vc/issue.js +4 -7
  85. package/dist/vc/issue.js.map +1 -1
  86. package/dist/vc/verify.d.ts +10 -0
  87. package/dist/vc/verify.d.ts.map +1 -1
  88. package/dist/vc/verify.js +38 -1
  89. package/dist/vc/verify.js.map +1 -1
  90. package/dist/was/client.d.ts.map +1 -1
  91. package/dist/was/client.js +8 -2
  92. package/dist/was/client.js.map +1 -1
  93. package/dist/was/grant.d.ts +44 -0
  94. package/dist/was/grant.d.ts.map +1 -0
  95. package/dist/was/grant.js +78 -0
  96. package/dist/was/grant.js.map +1 -0
  97. package/dist/was/registry.d.ts.map +1 -1
  98. package/dist/was/registry.js +9 -2
  99. package/dist/was/registry.js.map +1 -1
  100. package/dist/zcap/delegate.d.ts.map +1 -1
  101. package/dist/zcap/delegate.js +1 -6
  102. package/dist/zcap/delegate.js.map +1 -1
  103. package/dist/zcap/signer.d.ts.map +1 -1
  104. package/dist/zcap/signer.js.map +1 -1
  105. package/package.json +5 -4
  106. package/dist/keys/webvh-driver.d.ts +0 -24
  107. package/dist/keys/webvh-driver.d.ts.map +0 -1
  108. package/dist/keys/webvh-driver.js +0 -73
  109. package/dist/keys/webvh-driver.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../src/zcap/delegate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD;;;GAGG;AACH,MAAM,cAAc,GAAG,cAAc,EAAE,CAAC,KAAK,EAAE,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,GAAG,EACH,UAAU,EACV,SAAS,EACT,GAAG,EACH,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,GAAG,GAAG,IAAI,EACV,OAAO,EAWR;IACC,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAA;IACxE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;QAC5B,UAAU,EAAE,oBAAoB;QAChC,gBAAgB;QAChB,cAAc;KACf,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,gBAAgB,IAAI,GAAG,CAAA;IAEtC,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAChD,UAAU;QACV,UAAU,EAAE,SAAS;QACrB,gBAAgB,EAAE,MAAM;QACxB,OAAO,EAAE,YAAY;QACrB,cAAc,EAAE,KAAK;KACtB,CAAC,CAAA;IAEF,OAAO;QACL,mBAAmB;QACnB,OAAO,EAAE,gBAAgB,CAAC,mBAAmB,CAAC;KAC/C,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../src/zcap/delegate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,GAAG,EACH,UAAU,EACV,SAAS,EACT,GAAG,EACH,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,GAAG,GAAG,IAAI,EACV,OAAO,EAWR;IACC,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAA;IACxE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;QAC5B,UAAU,EAAE,oBAAoB;QAChC,gBAAgB;QAChB,cAAc;KACf,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,gBAAgB,IAAI,GAAG,CAAA;IAEtC,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAChD,UAAU;QACV,UAAU,EAAE,SAAS;QACrB,gBAAgB,EAAE,MAAM;QACxB,OAAO,EAAE,YAAY;QACrB,cAAc,EAAE,KAAK;KACtB,CAAC,CAAA;IAEF,OAAO;QACL,mBAAmB;QACnB,OAAO,EAAE,gBAAgB,CAAC,mBAAmB,CAAC;KAC/C,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/zcap/signer.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAqB3D;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,GAAG,EACH,UAAU,EACX,EAAE;IACD,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,OAAO,CAAC,OAAO,CAAC,CAoCnB"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/zcap/signer.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAU3D;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,GAAG,EACH,UAAU,EACX,EAAE;IACD,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,OAAO,CAAC,OAAO,CAAC,CAoCnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/zcap/signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAoB5D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EACzC,GAAG,EACH,UAAU,EAIX;IACC,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,eAAe,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAgB,GAAG,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3D,OAAO,YAAY,CAAC,OAAO,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAA;IAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,oEAAoE;YAClE,sCAAsC,CACzC,CAAA;IACH,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAA;IACH,CAAC;IACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;IACxD,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAC1B,SAAS,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACvD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC;QAC1D,IAAI,EAAE,SAAS;KAChB,CAAC,CAAA;IACF,IAAI,WAAW,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,oDAAoD,WAAW,CAAC,EAAE,IAAI;YACpE,gCAAgC,UAAU,IAAI,CACjD,CAAA;IACH,CAAC;IACD,MAAM,aAAa,GACjB,SACD,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACtC,OAAO,YAAY,CAAC,aAAa,CAAC,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/zcap/signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAsB,MAAM,eAAe,CAAA;AAShF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EACzC,GAAG,EACH,UAAU,EAIX;IACC,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,eAAe,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAgB,GAAG,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3D,OAAO,YAAY,CAAC,OAAO,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAA;IAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,oEAAoE;YAClE,sCAAsC,CACzC,CAAA;IACH,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAA;IACH,CAAC;IACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;IACxD,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAC1B,SAAS,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACvD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC;QAC1D,IAAI,EAAE,SAAS;KAChB,CAAC,CAAA;IACF,IAAI,WAAW,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,oDAAoD,WAAW,CAAC,EAAE,IAAI;YACpE,gCAAgC,UAAU,IAAI,CACjD,CAAA;IACH,CAAC;IACD,MAAM,aAAa,GACjB,SACD,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACtC,OAAO,YAAY,CAAC,aAAa,CAAC,CAAA;AACpC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@interop/did-cli",
3
- "version": "0.10.0",
3
+ "version": "0.10.1",
4
4
  "description": "DID CLI tool for DIDs, Verifiable Credentials, key pairs, and zcaps",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -28,19 +28,20 @@
28
28
  "@digitalcredentials/issuer-registry-client": "^4.0.0",
29
29
  "@interop/data-integrity-core": "^8.1.0",
30
30
  "@interop/data-integrity-proof": "^3.4.0",
31
+ "@interop/did-io": "^4.0.6",
31
32
  "@interop/did-method-key": "^7.3.2",
32
- "@interop/did-method-webvh": "^3.4.0",
33
+ "@interop/did-method-webvh": "^3.5.1",
33
34
  "@interop/did-web-resolver": "^6.2.2",
34
35
  "@interop/ecdsa-multikey": "^2.3.1",
35
36
  "@interop/ecdsa-signature": "2.0.3",
36
37
  "@interop/ed25519-signature": "^7.1.2",
37
38
  "@interop/ed25519-verification-key": "^8.0.2",
38
39
  "@interop/edv-client": "^17.2.0",
39
- "@interop/ezcap": "^7.2.1",
40
+ "@interop/ezcap": "^7.3.0",
40
41
  "@interop/minimal-cipher": "^7.4.0",
41
42
  "@interop/security-document-loader": "^9.4.0",
42
43
  "@interop/vc": "^11.0.4",
43
- "@interop/verifier-core": "^3.2.1",
44
+ "@interop/verifier-core": "^3.3.0",
44
45
  "@interop/was-client": "^0.7.1",
45
46
  "@interop/x25519-key-agreement-key": "^5.1.0",
46
47
  "@interop/zcap": "^11.0.3",
@@ -1,24 +0,0 @@
1
- /**
2
- * Generic Ed25519 verifier for resolving a did:webvh history log. The webvh
3
- * resolver verifies each log entry's `eddsa-jcs-2022` proof by calling
4
- * `verify(signature, message, publicKey)` with the raw public-key bytes of that
5
- * entry's update key, so -- unlike the fixed-key signer/verifier in
6
- * `webvh-signer.ts` -- this reconstructs a key per call from those bytes.
7
- */
8
- export declare const webvhLogVerifier: {
9
- verify(signature: Uint8Array, message: Uint8Array, publicKey: Uint8Array): Promise<boolean>;
10
- };
11
- /**
12
- * Build a `did:webvh` driver for the security document loader's resolver.
13
- *
14
- * @returns {{ method: string, get: (options: { did?: string, url?: string }) =>
15
- * Promise<Record<string, unknown>> }}
16
- */
17
- export declare function makeWebvhDriver(): {
18
- method: string;
19
- get(options: {
20
- did?: string;
21
- url?: string;
22
- }): Promise<Record<string, unknown>>;
23
- };
24
- //# sourceMappingURL=webvh-driver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"webvh-driver.d.ts","sourceRoot":"","sources":["../../src/keys/webvh-driver.ts"],"names":[],"mappings":"AA4BA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;sBAEd,UAAU,WACZ,UAAU,aACR,UAAU,GACpB,OAAO,CAAC,OAAO,CAAC;CAapB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,OAAO,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAC/E,CA6BA"}
@@ -1,73 +0,0 @@
1
- /**
2
- * Bridges `@interop/did-method-webvh`'s `resolveDID` to the DID-method driver
3
- * contract expected by the security document loader's `CachedResolver`
4
- * (`{ method, get({ did, url }) }`). Registering this driver lets the shared
5
- * loader resolve `did:webvh` DIDs (and dereference `did#fragment` URLs to their
6
- * verification method) without `@interop/security-document-loader` itself
7
- * taking on the `did:webvh` dependency stack.
8
- *
9
- * `resolveDID` fetches and verifies the DID's history log, then returns
10
- * `{ doc, meta }`; unlike the did:web driver it never throws, signalling
11
- * failure with `doc: null` and a `meta.problemDetails` instead, so this wrapper
12
- * converts that into a thrown error to match the other drivers' behaviour. The
13
- * `did#fragment` dereferencing reuses did:web's `getNode` for parity.
14
- */
15
- import { MultibaseEncoding, multibaseEncode, resolveDID } from '@interop/did-method-webvh';
16
- import { Ed25519VerificationKey } from '@interop/ed25519-verification-key';
17
- import { getNode } from '@interop/did-web-resolver';
18
- /**
19
- * Multicodec `ed25519-pub` varint header. Prepended to a raw 32-byte Ed25519
20
- * public key to form the multibase (`z6Mk...`) the key class expects.
21
- */
22
- const ED25519_PUB_MULTICODEC_HEADER = Uint8Array.from([0xed, 0x01]);
23
- /**
24
- * Generic Ed25519 verifier for resolving a did:webvh history log. The webvh
25
- * resolver verifies each log entry's `eddsa-jcs-2022` proof by calling
26
- * `verify(signature, message, publicKey)` with the raw public-key bytes of that
27
- * entry's update key, so -- unlike the fixed-key signer/verifier in
28
- * `webvh-signer.ts` -- this reconstructs a key per call from those bytes.
29
- */
30
- export const webvhLogVerifier = {
31
- async verify(signature, message, publicKey) {
32
- const multikey = new Uint8Array(ED25519_PUB_MULTICODEC_HEADER.length + publicKey.length);
33
- multikey.set(ED25519_PUB_MULTICODEC_HEADER);
34
- multikey.set(publicKey, ED25519_PUB_MULTICODEC_HEADER.length);
35
- const publicKeyMultibase = multibaseEncode(multikey, MultibaseEncoding.BASE58_BTC);
36
- const key = await Ed25519VerificationKey.from({ publicKeyMultibase });
37
- return key.verifier().verify({ data: message, signature });
38
- }
39
- };
40
- /**
41
- * Build a `did:webvh` driver for the security document loader's resolver.
42
- *
43
- * @returns {{ method: string, get: (options: { did?: string, url?: string }) =>
44
- * Promise<Record<string, unknown>> }}
45
- */
46
- export function makeWebvhDriver() {
47
- return {
48
- method: 'webvh',
49
- async get({ did, url } = {}) {
50
- const didOrUrl = did ?? url;
51
- if (!didOrUrl) {
52
- throw new TypeError('A DID or a URL is required to resolve.');
53
- }
54
- // Separate the bare DID from any `?query` or `#fragment`.
55
- const [didAuthority = ''] = didOrUrl.split(/[#?]/);
56
- const fragment = didOrUrl.includes('#')
57
- ? didOrUrl.slice(didOrUrl.indexOf('#') + 1)
58
- : undefined;
59
- const { doc, meta } = await resolveDID(didAuthority, {
60
- verifier: webvhLogVerifier
61
- });
62
- if (!doc) {
63
- throw new Error(meta?.problemDetails?.detail ?? `Could not resolve "${didAuthority}".`);
64
- }
65
- if (fragment) {
66
- // Dereference an individual subnode (key or service) by id.
67
- return getNode({ didDocument: doc, id: `${doc.id}#${fragment}` });
68
- }
69
- return doc;
70
- }
71
- };
72
- }
73
- //# sourceMappingURL=webvh-driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"webvh-driver.js","sourceRoot":"","sources":["../../src/keys/webvh-driver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,UAAU,EACX,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAEnD;;;GAGG;AACH,MAAM,6BAA6B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,CAAC,MAAM,CACV,SAAqB,EACrB,OAAmB,EACnB,SAAqB;QAErB,MAAM,QAAQ,GAAG,IAAI,UAAU,CAC7B,6BAA6B,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CACxD,CAAA;QACD,QAAQ,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;QAC3C,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAA;QAC7D,MAAM,kBAAkB,GAAG,eAAe,CACxC,QAAQ,EACR,iBAAiB,CAAC,UAAU,CAC7B,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAA;QACrE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;IAC5D,CAAC;CACF,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe;IAI7B,OAAO;QACL,MAAM,EAAE,OAAO;QACf,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;YACzB,MAAM,QAAQ,GAAG,GAAG,IAAI,GAAG,CAAA;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAA;YAC/D,CAAC;YACD,0DAA0D;YAC1D,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACrC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3C,CAAC,CAAC,SAAS,CAAA;YAEb,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE;gBACnD,QAAQ,EAAE,gBAAgB;aAC3B,CAAC,CAAA;YACF,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CACb,IAAI,EAAE,cAAc,EAAE,MAAM,IAAI,sBAAsB,YAAY,IAAI,CACvE,CAAA;YACH,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,4DAA4D;gBAC5D,OAAO,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC"}