@enbox/dids 0.0.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 (104) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -0
  3. package/dist/browser.js +77 -0
  4. package/dist/browser.js.map +7 -0
  5. package/dist/browser.mjs +77 -0
  6. package/dist/browser.mjs.map +7 -0
  7. package/dist/cjs/index.js +6303 -0
  8. package/dist/cjs/index.js.map +7 -0
  9. package/dist/cjs/package.json +1 -0
  10. package/dist/cjs/utils.js +245 -0
  11. package/dist/cjs/utils.js.map +7 -0
  12. package/dist/esm/bearer-did.js +201 -0
  13. package/dist/esm/bearer-did.js.map +1 -0
  14. package/dist/esm/did-error.js +62 -0
  15. package/dist/esm/did-error.js.map +1 -0
  16. package/dist/esm/did.js +114 -0
  17. package/dist/esm/did.js.map +1 -0
  18. package/dist/esm/index.js +16 -0
  19. package/dist/esm/index.js.map +1 -0
  20. package/dist/esm/methods/did-dht.js +1241 -0
  21. package/dist/esm/methods/did-dht.js.map +1 -0
  22. package/dist/esm/methods/did-ion.js +570 -0
  23. package/dist/esm/methods/did-ion.js.map +1 -0
  24. package/dist/esm/methods/did-jwk.js +298 -0
  25. package/dist/esm/methods/did-jwk.js.map +1 -0
  26. package/dist/esm/methods/did-key.js +983 -0
  27. package/dist/esm/methods/did-key.js.map +1 -0
  28. package/dist/esm/methods/did-method.js +53 -0
  29. package/dist/esm/methods/did-method.js.map +1 -0
  30. package/dist/esm/methods/did-web.js +83 -0
  31. package/dist/esm/methods/did-web.js.map +1 -0
  32. package/dist/esm/resolver/resolver-cache-level.js +101 -0
  33. package/dist/esm/resolver/resolver-cache-level.js.map +1 -0
  34. package/dist/esm/resolver/resolver-cache-noop.js +24 -0
  35. package/dist/esm/resolver/resolver-cache-noop.js.map +1 -0
  36. package/dist/esm/resolver/universal-resolver.js +187 -0
  37. package/dist/esm/resolver/universal-resolver.js.map +1 -0
  38. package/dist/esm/types/did-core.js +51 -0
  39. package/dist/esm/types/did-core.js.map +1 -0
  40. package/dist/esm/types/did-resolution.js +12 -0
  41. package/dist/esm/types/did-resolution.js.map +1 -0
  42. package/dist/esm/types/multibase.js +2 -0
  43. package/dist/esm/types/multibase.js.map +1 -0
  44. package/dist/esm/types/portable-did.js +2 -0
  45. package/dist/esm/types/portable-did.js.map +1 -0
  46. package/dist/esm/utils.js +458 -0
  47. package/dist/esm/utils.js.map +1 -0
  48. package/dist/types/bearer-did.d.ts +143 -0
  49. package/dist/types/bearer-did.d.ts.map +1 -0
  50. package/dist/types/did-error.d.ts +50 -0
  51. package/dist/types/did-error.d.ts.map +1 -0
  52. package/dist/types/did.d.ts +125 -0
  53. package/dist/types/did.d.ts.map +1 -0
  54. package/dist/types/index.d.ts +18 -0
  55. package/dist/types/index.d.ts.map +1 -0
  56. package/dist/types/methods/did-dht.d.ts +682 -0
  57. package/dist/types/methods/did-dht.d.ts.map +1 -0
  58. package/dist/types/methods/did-ion.d.ts +492 -0
  59. package/dist/types/methods/did-ion.d.ts.map +1 -0
  60. package/dist/types/methods/did-jwk.d.ts +236 -0
  61. package/dist/types/methods/did-jwk.d.ts.map +1 -0
  62. package/dist/types/methods/did-key.d.ts +499 -0
  63. package/dist/types/methods/did-key.d.ts.map +1 -0
  64. package/dist/types/methods/did-method.d.ts +238 -0
  65. package/dist/types/methods/did-method.d.ts.map +1 -0
  66. package/dist/types/methods/did-web.d.ts +37 -0
  67. package/dist/types/methods/did-web.d.ts.map +1 -0
  68. package/dist/types/resolver/resolver-cache-level.d.ts +86 -0
  69. package/dist/types/resolver/resolver-cache-level.d.ts.map +1 -0
  70. package/dist/types/resolver/resolver-cache-noop.d.ts +9 -0
  71. package/dist/types/resolver/resolver-cache-noop.d.ts.map +1 -0
  72. package/dist/types/resolver/universal-resolver.d.ts +109 -0
  73. package/dist/types/resolver/universal-resolver.d.ts.map +1 -0
  74. package/dist/types/types/did-core.d.ts +523 -0
  75. package/dist/types/types/did-core.d.ts.map +1 -0
  76. package/dist/types/types/did-resolution.d.ts +85 -0
  77. package/dist/types/types/did-resolution.d.ts.map +1 -0
  78. package/dist/types/types/multibase.d.ts +28 -0
  79. package/dist/types/types/multibase.d.ts.map +1 -0
  80. package/dist/types/types/portable-did.d.ts +59 -0
  81. package/dist/types/types/portable-did.d.ts.map +1 -0
  82. package/dist/types/utils.d.ts +378 -0
  83. package/dist/types/utils.d.ts.map +1 -0
  84. package/dist/utils.js +28 -0
  85. package/dist/utils.js.map +7 -0
  86. package/package.json +116 -0
  87. package/src/bearer-did.ts +287 -0
  88. package/src/did-error.ts +75 -0
  89. package/src/did.ts +186 -0
  90. package/src/index.ts +21 -0
  91. package/src/methods/did-dht.ts +1637 -0
  92. package/src/methods/did-ion.ts +887 -0
  93. package/src/methods/did-jwk.ts +410 -0
  94. package/src/methods/did-key.ts +1248 -0
  95. package/src/methods/did-method.ts +276 -0
  96. package/src/methods/did-web.ts +96 -0
  97. package/src/resolver/resolver-cache-level.ts +163 -0
  98. package/src/resolver/resolver-cache-noop.ts +26 -0
  99. package/src/resolver/universal-resolver.ts +238 -0
  100. package/src/types/did-core.ts +580 -0
  101. package/src/types/did-resolution.ts +93 -0
  102. package/src/types/multibase.ts +29 -0
  103. package/src/types/portable-did.ts +64 -0
  104. package/src/utils.ts +532 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-key.js","sourceRoot":"","sources":["../../../src/methods/did-key.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ /**
11
+ * Base abstraction for all Decentralized Identifier (DID) method implementations.
12
+ *
13
+ * This base class serves as a foundational structure upon which specific DID methods
14
+ * can be implemented. Subclasses should furnish particular method and data models adherent
15
+ * to various DID methods, taking care to adhere to the
16
+ * {@link https://www.w3.org/TR/did-core/ | W3C DID Core specification} and the
17
+ * respective DID method specifications.
18
+ */
19
+ export class DidMethod {
20
+ /**
21
+ * MUST be implemented by all DID method implementations that extend {@link DidMethod}.
22
+ *
23
+ * Given the W3C DID Document of a DID, return the verification method that will be used for
24
+ * signing messages and credentials. If given, the `methodId` parameter is used to select the
25
+ * verification method. If not given, each DID method implementation will select a default
26
+ * verification method from the DID Document.
27
+ *
28
+ * @param _params - The parameters for the `getSigningMethod` operation.
29
+ * @param _params.didDocument - DID Document to get the verification method from.
30
+ * @param _params.methodId - ID of the verification method to use for signing.
31
+ * @returns Verification method to use for signing.
32
+ */
33
+ static getSigningMethod(_params) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ throw new Error(`Not implemented: Classes extending DidMethod must implement getSigningMethod()`);
36
+ });
37
+ }
38
+ /**
39
+ * MUST be implemented by all DID method implementations that extend {@link DidMethod}.
40
+ *
41
+ * Resolves a DID URI to a DID Document.
42
+ *
43
+ * @param _didUri - The DID to be resolved.
44
+ * @param _options - Optional parameters for resolving the DID.
45
+ * @returns A Promise resolving to a {@link DidResolutionResult} object representing the result of the resolution.
46
+ */
47
+ static resolve(_didUri, _options) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ throw new Error(`Not implemented: Classes extending DidMethod must implement resolve()`);
50
+ });
51
+ }
52
+ }
53
+ //# sourceMappingURL=did-method.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-method.js","sourceRoot":"","sources":["../../../src/methods/did-method.ts"],"names":[],"mappings":";;;;;;;;;AAyOA;;;;;;;;GAQG;AACH,MAAM,OAAO,SAAS;IACpB;;;;;;;;;;;;OAYG;IACI,MAAM,CAAO,gBAAgB,CAAC,OAGpC;;YACC,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACpG,CAAC;KAAA;IAED;;;;;;;;OAQG;IACI,MAAM,CAAO,OAAO,CAAC,OAAe,EAAE,QAA+B;;YAC1E,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC3F,CAAC;KAAA;CACF"}
@@ -0,0 +1,83 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { Did } from '../did.js';
11
+ import { DidMethod } from './did-method.js';
12
+ import { EMPTY_DID_RESOLUTION_RESULT } from '../types/did-resolution.js';
13
+ /**
14
+ * The `DidWeb` class provides an implementation of the `did:web` DID method.
15
+ *
16
+ * Features:
17
+ * - DID Resolution: Resolve a `did:web` to its corresponding DID Document.
18
+ *
19
+ * @remarks
20
+ * The `did:web` method uses a web domain's existing reputation and aims to integrate decentralized
21
+ * identities with the existing web infrastructure to drive adoption. It leverages familiar web
22
+ * security models and domain ownership to provide accessible, interoperable digital identity
23
+ * management.
24
+ *
25
+ * @see {@link https://w3c-ccg.github.io/did-method-web/ | DID Web Specification}
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * // DID Resolution
30
+ * const resolutionResult = await DidWeb.resolve({ did: did.uri });
31
+ * ```
32
+ */
33
+ export class DidWeb extends DidMethod {
34
+ /**
35
+ * Resolves a `did:web` identifier to a DID Document.
36
+ *
37
+ * @param didUri - The DID to be resolved.
38
+ * @param _options - Optional parameters for resolving the DID. Unused by this DID method.
39
+ * @returns A Promise resolving to a {@link DidResolutionResult} object representing the result of the resolution.
40
+ */
41
+ static resolve(didUri, _options) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ // Attempt to parse the DID URI.
44
+ const parsedDid = Did.parse(didUri);
45
+ // If parsing failed, the DID is invalid.
46
+ if (!parsedDid) {
47
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didResolutionMetadata: { error: 'invalidDid' } });
48
+ }
49
+ // If the DID method is not "web", return an error.
50
+ if (parsedDid.method !== DidWeb.methodName) {
51
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didResolutionMetadata: { error: 'methodNotSupported' } });
52
+ }
53
+ // Replace ":" with "/" in the identifier and prepend "https://" to obtain the fully qualified
54
+ // domain name and optional path.
55
+ let baseUrl = `https://${parsedDid.id.replace(/:/g, '/')}`;
56
+ // If the domain contains a percent encoded port value, decode the colon.
57
+ baseUrl = decodeURIComponent(baseUrl);
58
+ // Append the expected location of the DID document depending on whether a path was specified.
59
+ const didDocumentUrl = parsedDid.id.includes(':') ?
60
+ `${baseUrl}/did.json` :
61
+ `${baseUrl}/.well-known/did.json`;
62
+ try {
63
+ // Perform an HTTP GET request to obtain the DID document.
64
+ const response = yield fetch(didDocumentUrl);
65
+ // If the response status code is not 200, return an error.
66
+ if (!response.ok)
67
+ throw new Error('HTTP error status code returned');
68
+ // Parse the DID document.
69
+ const didDocument = yield response.json();
70
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didDocument });
71
+ }
72
+ catch (error) {
73
+ // If the DID document could not be retrieved, return an error.
74
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didResolutionMetadata: { error: 'notFound' } });
75
+ }
76
+ });
77
+ }
78
+ }
79
+ /**
80
+ * Name of the DID method, as defined in the DID Web specification.
81
+ */
82
+ DidWeb.methodName = 'web';
83
+ //# sourceMappingURL=did-web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-web.js","sourceRoot":"","sources":["../../../src/methods/did-web.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,MAAO,SAAQ,SAAS;IAOnC;;;;;;OAMG;IACI,MAAM,CAAO,OAAO,CAAC,MAAc,EAAE,QAA+B;;YACzE,gCAAgC;YAChC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEpC,yCAAyC;YACzC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,uCACK,2BAA2B,KAC9B,qBAAqB,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAC9C;YACJ,CAAC;YAED,mDAAmD;YACnD,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC3C,uCACK,2BAA2B,KAC9B,qBAAqB,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,IACtD;YACJ,CAAC;YAED,8FAA8F;YAC9F,iCAAiC;YACjC,IAAI,OAAO,GAAG,WAAW,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YAE3D,yEAAyE;YACzE,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAEtC,8FAA8F;YAC9F,MAAM,cAAc,GAAG,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjD,GAAG,OAAO,WAAW,CAAC,CAAC;gBACvB,GAAG,OAAO,uBAAuB,CAAC;YAEpC,IAAI,CAAC;gBACH,0DAA0D;gBAC1D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,CAAC;gBAE7C,2DAA2D;gBAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;gBAErE,0BAA0B;gBAC1B,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAiB,CAAC;gBAEzD,uCACK,2BAA2B,KAC9B,WAAW,IACX;YAEJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,+DAA+D;gBAC/D,uCACK,2BAA2B,KAC9B,qBAAqB,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAC5C;YACJ,CAAC;QACH,CAAC;KAAA;;AAlED;;GAEG;AACW,iBAAU,GAAG,KAAK,CAAC"}
@@ -0,0 +1,101 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import ms from 'ms';
11
+ import { Level } from 'level';
12
+ /**
13
+ * A Level-based cache implementation for storing and retrieving DID resolution results.
14
+ *
15
+ * This cache uses LevelDB for storage, allowing data persistence across process restarts or
16
+ * browser refreshes. It's suitable for both Node.js and browser environments.
17
+ *
18
+ * @remarks
19
+ * The LevelDB cache keeps data in memory for fast access and also writes to the filesystem in
20
+ * Node.js or indexedDB in browsers. Time-to-live (TTL) for cache entries is configurable.
21
+ *
22
+ * @example
23
+ * ```
24
+ * const cache = new DidResolverCacheLevel({ ttl: '15m' });
25
+ * ```
26
+ */
27
+ export class DidResolverCacheLevel {
28
+ constructor({ db, location = 'DATA/DID_RESOLVERCACHE', ttl = '15m' } = {}) {
29
+ this.cache = db !== null && db !== void 0 ? db : new Level(location);
30
+ this.ttl = ms(ttl);
31
+ }
32
+ /**
33
+ * Retrieves a DID resolution result from the cache.
34
+ *
35
+ * If the cached item has exceeded its TTL, it's scheduled for deletion and undefined is returned.
36
+ *
37
+ * @param did - The DID string used as the key for retrieving the cached result.
38
+ * @returns The cached DID resolution result or undefined if not found or expired.
39
+ */
40
+ get(did) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ try {
43
+ const str = yield this.cache.get(did);
44
+ const cachedDidResolutionResult = JSON.parse(str);
45
+ if (Date.now() >= cachedDidResolutionResult.ttlMillis) {
46
+ // defer deletion to be called in the next tick of the js event loop
47
+ this.cache.nextTick(() => this.cache.del(did));
48
+ return;
49
+ }
50
+ else {
51
+ return cachedDidResolutionResult.value;
52
+ }
53
+ }
54
+ catch (error) {
55
+ // Don't throw when a key wasn't found.
56
+ if (error.notFound) {
57
+ return;
58
+ }
59
+ throw error;
60
+ }
61
+ });
62
+ }
63
+ /**
64
+ * Stores a DID resolution result in the cache with a TTL.
65
+ *
66
+ * @param did - The DID string used as the key for storing the result.
67
+ * @param value - The DID resolution result to be cached.
68
+ * @returns A promise that resolves when the operation is complete.
69
+ */
70
+ set(did, value) {
71
+ const cachedDidResolutionResult = { ttlMillis: Date.now() + this.ttl, value };
72
+ const str = JSON.stringify(cachedDidResolutionResult);
73
+ return this.cache.put(did, str);
74
+ }
75
+ /**
76
+ * Deletes a DID resolution result from the cache.
77
+ *
78
+ * @param did - The DID string used as the key for deletion.
79
+ * @returns A promise that resolves when the operation is complete.
80
+ */
81
+ delete(did) {
82
+ return this.cache.del(did);
83
+ }
84
+ /**
85
+ * Clears all entries from the cache.
86
+ *
87
+ * @returns A promise that resolves when the operation is complete.
88
+ */
89
+ clear() {
90
+ return this.cache.clear();
91
+ }
92
+ /**
93
+ * Closes the underlying LevelDB store.
94
+ *
95
+ * @returns A promise that resolves when the store is closed.
96
+ */
97
+ close() {
98
+ return this.cache.close();
99
+ }
100
+ }
101
+ //# sourceMappingURL=resolver-cache-level.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver-cache-level.js","sourceRoot":"","sources":["../../../src/resolver/resolver-cache-level.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAuD9B;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,qBAAqB;IAOhC,YAAY,EACV,EAAE,EACF,QAAQ,GAAG,wBAAwB,EACnC,GAAG,GAAG,KAAK,KACoB,EAAE;QACjC,IAAI,CAAC,KAAK,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,IAAI,KAAK,CAAiB,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAED;;;;;;;OAOG;IACG,GAAG,CAAC,GAAW;;YACnB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,yBAAyB,GAA8B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAE7E,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,yBAAyB,CAAC,SAAS,EAAE,CAAC;oBACtD,oEAAoE;oBACpE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBAE/C,OAAO;gBACT,CAAC;qBAAM,CAAC;oBACN,OAAO,yBAAyB,CAAC,KAAK,CAAC;gBACzC,CAAC;YAEH,CAAC;YAAC,OAAM,KAAU,EAAE,CAAC;gBACnB,uCAAuC;gBACvC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACnB,OAAO;gBACT,CAAC;gBAED,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;KAAA;IAED;;;;;;OAMG;IACH,GAAG,CAAC,GAAW,EAAE,KAA0B;QACzC,MAAM,yBAAyB,GAA8B,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;QACzG,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QAEtD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * No-op cache that is used as the default cache for did-resolver.
3
+ *
4
+ * The motivation behind using a no-op cache as the default stems from the desire to maximize the
5
+ * potential for this library to be used in as many JS runtimes as possible.
6
+ */
7
+ export const DidResolverCacheNoop = {
8
+ get: function (_key) {
9
+ return null;
10
+ },
11
+ set: function (_key, _value) {
12
+ return null;
13
+ },
14
+ delete: function (_key) {
15
+ return null;
16
+ },
17
+ clear: function () {
18
+ return null;
19
+ },
20
+ close: function () {
21
+ return null;
22
+ }
23
+ };
24
+ //# sourceMappingURL=resolver-cache-noop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver-cache-noop.js","sourceRoot":"","sources":["../../../src/resolver/resolver-cache-noop.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAqB;IACpD,GAAG,EAAE,UAAU,IAAY;QACzB,OAAO,IAAW,CAAC;IACrB,CAAC;IACD,GAAG,EAAE,UAAU,IAAY,EAAE,MAA2B;QACtD,OAAO,IAAW,CAAC;IACrB,CAAC;IACD,MAAM,EAAE,UAAU,IAAY;QAC5B,OAAO,IAAW,CAAC;IACrB,CAAC;IACD,KAAK,EAAE;QACL,OAAO,IAAW,CAAC;IACrB,CAAC;IACD,KAAK,EAAE;QACL,OAAO,IAAW,CAAC;IACrB,CAAC;CACF,CAAC"}
@@ -0,0 +1,187 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { Did } from '../did.js';
11
+ import { DidErrorCode } from '../did-error.js';
12
+ import { DidResolverCacheNoop } from './resolver-cache-noop.js';
13
+ import { EMPTY_DID_RESOLUTION_RESULT } from '../types/did-resolution.js';
14
+ /**
15
+ * The `DidResolver` class provides mechanisms for resolving Decentralized Identifiers (DIDs) to
16
+ * their corresponding DID documents.
17
+ *
18
+ * The class is designed to handle various DID methods by utilizing an array of `DidMethodResolver`
19
+ * instances, each responsible for a specific DID method.
20
+ *
21
+ * Providing a cache implementation can significantly enhance resolution performance by avoiding
22
+ * redundant resolutions for previously resolved DIDs. If omitted, a no-operation cache is used,
23
+ * which effectively disables caching.
24
+ *
25
+ * Usage:
26
+ * - Construct the `DidResolver` with an array of `DidMethodResolver` instances and an optional cache.
27
+ * - Use `resolve` to resolve a DID to its DID Resolution Result.
28
+ * - Use `dereference` to extract specific resources from a DID URL, like service endpoints or verification methods.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * const resolver = new DidResolver({
33
+ * didResolvers: [<array of DidMethodResolver instances>],
34
+ * cache: new DidResolverCacheNoop()
35
+ * });
36
+ *
37
+ * const resolutionResult = await resolver.resolve('did:example:123456');
38
+ * const dereferenceResult = await resolver.dereference({ didUri: 'did:example:123456#key-1' });
39
+ * ```
40
+ */
41
+ export class UniversalResolver {
42
+ /**
43
+ * Constructs a new `DidResolver`.
44
+ *
45
+ * @param params - The parameters for constructing the `DidResolver`.
46
+ */
47
+ constructor({ cache, didResolvers }) {
48
+ /**
49
+ * A map to store method resolvers against method names.
50
+ */
51
+ this.didResolvers = new Map();
52
+ this.cache = cache || DidResolverCacheNoop;
53
+ for (const resolver of didResolvers) {
54
+ this.didResolvers.set(resolver.methodName, resolver);
55
+ }
56
+ }
57
+ /**
58
+ * Resolves a DID to a DID Resolution Result.
59
+ *
60
+ * If the DID Resolution Result is present in the cache, it returns the cached result. Otherwise,
61
+ * it uses the appropriate method resolver to resolve the DID, stores the resolution result in the
62
+ * cache, and returns the resolultion result.
63
+ *
64
+ * @param didUri - The DID or DID URL to resolve.
65
+ * @returns A promise that resolves to the DID Resolution Result.
66
+ */
67
+ resolve(didUri, options) {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ const parsedDid = Did.parse(didUri);
70
+ if (!parsedDid) {
71
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didResolutionMetadata: {
72
+ error: DidErrorCode.InvalidDid,
73
+ errorMessage: `Invalid DID URI: ${didUri}`
74
+ } });
75
+ }
76
+ const resolver = this.didResolvers.get(parsedDid.method);
77
+ if (!resolver) {
78
+ return Object.assign(Object.assign({}, EMPTY_DID_RESOLUTION_RESULT), { didResolutionMetadata: {
79
+ error: DidErrorCode.MethodNotSupported,
80
+ errorMessage: `Method not supported: ${parsedDid.method}`
81
+ } });
82
+ }
83
+ const cachedResolutionResult = yield this.cache.get(parsedDid.uri);
84
+ if (cachedResolutionResult) {
85
+ return cachedResolutionResult;
86
+ }
87
+ else {
88
+ const resolutionResult = yield resolver.resolve(parsedDid.uri, options);
89
+ if (!resolutionResult.didResolutionMetadata.error) {
90
+ // Cache the resolution result if it was successful.
91
+ yield this.cache.set(parsedDid.uri, resolutionResult);
92
+ }
93
+ return resolutionResult;
94
+ }
95
+ });
96
+ }
97
+ /**
98
+ * Dereferences a DID (Decentralized Identifier) URL to a corresponding DID resource.
99
+ *
100
+ * This method interprets the DID URL's components, which include the DID method, method-specific
101
+ * identifier, path, query, and fragment, and retrieves the related resource as per the DID Core
102
+ * specifications.
103
+ *
104
+ * The dereferencing process involves resolving the DID contained in the DID URL to a DID document,
105
+ * and then extracting the specific part of the document identified by the fragment in the DID URL.
106
+ * If no fragment is specified, the entire DID document is returned.
107
+ *
108
+ * This method supports resolution of different components within a DID document such as service
109
+ * endpoints and verification methods, based on their IDs. It accommodates both full and
110
+ * DID URLs as specified in the DID Core specification.
111
+ *
112
+ * More information on DID URL dereferencing can be found in the
113
+ * {@link https://www.w3.org/TR/did-core/#did-url-dereferencing | DID Core specification}.
114
+ *
115
+ * TODO: This is a partial implementation and does not fully implement DID URL dereferencing. (https://github.com/TBD54566975/web5-js/issues/387)
116
+ *
117
+ * @param didUrl - The DID URL string to dereference.
118
+ * @param [_options] - Input options to the dereference function. Optional.
119
+ * @returns a {@link DidDereferencingResult}
120
+ */
121
+ dereference(didUrl, _options) {
122
+ return __awaiter(this, void 0, void 0, function* () {
123
+ // Validate the given `didUrl` confirms to the DID URL syntax.
124
+ const parsedDidUrl = Did.parse(didUrl);
125
+ if (!parsedDidUrl) {
126
+ return {
127
+ dereferencingMetadata: { error: DidErrorCode.InvalidDidUrl },
128
+ contentStream: null,
129
+ contentMetadata: {}
130
+ };
131
+ }
132
+ // Obtain the DID document for the input DID by executing DID resolution.
133
+ const { didDocument, didResolutionMetadata, didDocumentMetadata } = yield this.resolve(parsedDidUrl.uri);
134
+ if (!didDocument) {
135
+ return {
136
+ dereferencingMetadata: { error: didResolutionMetadata.error },
137
+ contentStream: null,
138
+ contentMetadata: {}
139
+ };
140
+ }
141
+ // Return the entire DID Document if no query or fragment is present on the DID URL.
142
+ if (!parsedDidUrl.fragment || parsedDidUrl.query) {
143
+ return {
144
+ dereferencingMetadata: { contentType: 'application/did+json' },
145
+ contentStream: didDocument,
146
+ contentMetadata: didDocumentMetadata
147
+ };
148
+ }
149
+ const { service = [], verificationMethod = [] } = didDocument;
150
+ // Create a set of possible id matches. The DID spec allows for an id to be the entire
151
+ // did#fragment or just #fragment.
152
+ // @see {@link }https://www.w3.org/TR/did-core/#relative-did-urls | Section 3.2.2, Relative DID URLs}.
153
+ // Using a Set for fast string comparison since some DID methods have long identifiers.
154
+ const idSet = new Set([didUrl, parsedDidUrl.fragment, `#${parsedDidUrl.fragment}`]);
155
+ let didResource;
156
+ // Find the first matching verification method in the DID document.
157
+ for (let vm of verificationMethod) {
158
+ if (idSet.has(vm.id)) {
159
+ didResource = vm;
160
+ break;
161
+ }
162
+ }
163
+ // Find the first matching service in the DID document.
164
+ for (let svc of service) {
165
+ if (idSet.has(svc.id)) {
166
+ didResource = svc;
167
+ break;
168
+ }
169
+ }
170
+ if (didResource) {
171
+ return {
172
+ dereferencingMetadata: { contentType: 'application/did+json' },
173
+ contentStream: didResource,
174
+ contentMetadata: didResolutionMetadata
175
+ };
176
+ }
177
+ else {
178
+ return {
179
+ dereferencingMetadata: { error: DidErrorCode.NotFound },
180
+ contentStream: null,
181
+ contentMetadata: {},
182
+ };
183
+ }
184
+ });
185
+ }
186
+ }
187
+ //# sourceMappingURL=universal-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"universal-resolver.js","sourceRoot":"","sources":["../../../src/resolver/universal-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Represents the various verification relationships defined in a DID document.
3
+ *
4
+ * These verification relationships indicate the intended usage of verification methods within a DID
5
+ * document. Each relationship signifies a different purpose or context in which a verification
6
+ * method can be used, such as authentication, assertionMethod, keyAgreement, capabilityDelegation,
7
+ * and capabilityInvocation. The array provides a standardized set of relationship names for
8
+ * consistent referencing and implementation across different DID methods.
9
+ *
10
+ * @see {@link https://www.w3.org/TR/did-core/#verification-relationships | DID Core Specification, § Verification Relationships}
11
+ */
12
+ export var DidVerificationRelationship;
13
+ (function (DidVerificationRelationship) {
14
+ /**
15
+ * Specifies how the DID subject is expected to be authenticated. This is commonly used for
16
+ * purposes like logging into a website or participating in challenge-response protocols.
17
+ *
18
+ * @see {@link https://www.w3.org/TR/did-core/#authentication | DID Core Specification, § Authentication}
19
+ */
20
+ DidVerificationRelationship["authentication"] = "authentication";
21
+ /**
22
+ * Specifies how the DID subject is expected to express claims, such as for issuing Verifiable
23
+ * Credentials. This relationship is typically used when the DID subject is the issuer of a
24
+ * credential.
25
+ *
26
+ * @see {@link https://www.w3.org/TR/did-core/#assertion | DID Core Specification, § Assertion}
27
+ */
28
+ DidVerificationRelationship["assertionMethod"] = "assertionMethod";
29
+ /**
30
+ * Specifies how an entity can generate encryption material to communicate confidentially with the
31
+ * DID subject. Often used in scenarios requiring secure communication channels.
32
+ *
33
+ * @see {@link https://www.w3.org/TR/did-core/#key-agreement | DID Core Specification, § Key Agreement}
34
+ */
35
+ DidVerificationRelationship["keyAgreement"] = "keyAgreement";
36
+ /**
37
+ * Specifies a verification method used by the DID subject to invoke a cryptographic capability.
38
+ * This is frequently associated with authorization actions, like updating the DID Document.
39
+ *
40
+ * @see {@link https://www.w3.org/TR/did-core/#capability-invocation | DID Core Specification, § Capability Invocation}
41
+ */
42
+ DidVerificationRelationship["capabilityInvocation"] = "capabilityInvocation";
43
+ /**
44
+ * Specifies a mechanism used by the DID subject to delegate a cryptographic capability to another
45
+ * party. This can include delegating access to a specific resource or API.
46
+ *
47
+ * @see {@link https://www.w3.org/TR/did-core/#capability-delegation | DID Core Specification, § Capability Delegation}
48
+ */
49
+ DidVerificationRelationship["capabilityDelegation"] = "capabilityDelegation";
50
+ })(DidVerificationRelationship || (DidVerificationRelationship = {}));
51
+ //# sourceMappingURL=did-core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-core.js","sourceRoot":"","sources":["../../../src/types/did-core.ts"],"names":[],"mappings":"AA+gBA;;;;;;;;;;GAUG;AACH,MAAM,CAAN,IAAY,2BAyCX;AAzCD,WAAY,2BAA2B;IACrC;;;;;OAKG;IACH,gEAAiC,CAAA;IAEjC;;;;;;OAMG;IACH,kEAAmC,CAAA;IAEnC;;;;;OAKG;IACH,4DAA6B,CAAA;IAE7B;;;;;OAKG;IACH,4EAA6C,CAAA;IAE7C;;;;;OAKG;IACH,4EAA6C,CAAA;AAC/C,CAAC,EAzCW,2BAA2B,KAA3B,2BAA2B,QAyCtC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * A constant representing an empty DID Resolution Result. This object is used as the basis for a
3
+ * result of DID resolution and is typically augmented with additional properties by the
4
+ * DID method resolver.
5
+ */
6
+ export const EMPTY_DID_RESOLUTION_RESULT = {
7
+ '@context': 'https://w3id.org/did-resolution/v1',
8
+ didResolutionMetadata: {},
9
+ didDocument: null,
10
+ didDocumentMetadata: {},
11
+ };
12
+ //# sourceMappingURL=did-resolution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did-resolution.js","sourceRoot":"","sources":["../../../src/types/did-resolution.ts"],"names":[],"mappings":"AAkFA;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAwB;IAC9D,UAAU,EAAc,oCAAoC;IAC5D,qBAAqB,EAAG,EAAE;IAC1B,WAAW,EAAa,IAAI;IAC5B,mBAAmB,EAAK,EAAE;CAC3B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=multibase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multibase.js","sourceRoot":"","sources":["../../../src/types/multibase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=portable-did.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portable-did.js","sourceRoot":"","sources":["../../../src/types/portable-did.ts"],"names":[],"mappings":""}