{"_id":"https-did-resolver","_rev":"4578847","name":"https-did-resolver","description":"Resolve DID documents from an https domain","dist-tags":{"alpha":"0.1.0-alpha1","latest":"1.0.0"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"time":{"modified":"2026-04-10T15:52:13.000Z","created":"2018-10-08T13:35:38.548Z","1.0.0":"2019-08-19T15:58:12.689Z","0.1.0":"2019-01-14T20:43:17.712Z","0.1.0-alpha1":"2019-01-11T00:25:04.397Z","0.0.3":"2018-10-16T19:05:42.366Z","0.0.2":"2018-10-10T20:06:30.982Z","0.0.1":"2018-10-08T13:35:38.548Z"},"users":{},"author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"versions":{"1.0.0":{"name":"https-did-resolver","version":"1.0.0","description":"Resolve DID documents from an https domain","main":"lib/resolver.js","types":"lib/resolver.d.ts","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"1.0.0","xmlhttprequest":"^1.8.0"},"scripts":{"build":"tsc","test":"jest","dev":"tsc --watch","format":"prettier"},"browser":{"xmlhttprequest":false},"devDependencies":{"@types/jest":"^23.3.10","jest":"^23.6.0","prettier":"^1.15.3","regenerator-runtime":"^0.12.1","ts-jest":"^23.10.5","tslint":"^5.12.0","tslint-config-prettier":"^1.17.0","tslint-eslint-rules":"^5.4.0","typescript":"^3.2.2","xhr-mock":"^2.4.1"},"jest":{"transform":{"^.+\\.tsx?$":"ts-jest"},"testRegex":"(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$","moduleFileExtensions":["ts","tsx","js","jsx","json"],"coverageDirectory":"./coverage/","collectCoverageFrom":["src/**/*.{ts,tsx}","!src/**/*.d.ts","!**/node_modules/**"]},"gitHead":"8a06fe89182ab60ea248be63983d900b2eb92d06","_id":"https-did-resolver@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.0","_npmUser":{"name":"mike.xu","email":"mike.xu@consensys.net"},"dist":{"shasum":"ec4614e3b87c84d5de3505bc030300417779c16d","size":4544,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-1.0.0.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_1.0.0_1566230292568_0.8381249416768779"},"_hasShrinkwrap":false,"publish_time":1566230292689,"_cnpm_publish_time":1566230292689,"_cnpmcore_publish_time":"2021-12-16T17:20:45.450Z"},"0.1.0":{"name":"https-did-resolver","version":"0.1.0","description":"Resolve DID documents from an https domain","main":"lib/register.js","types":"lib/register.d.ts","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"0.0.6","xmlhttprequest":"^1.8.0"},"scripts":{"build":"tsc","test":"jest","dev":"tsc --watch","format":"prettier"},"browser":{"xmlhttprequest":false},"devDependencies":{"@types/jest":"^23.3.10","jest":"^23.6.0","prettier":"^1.15.3","regenerator-runtime":"^0.12.1","ts-jest":"^23.10.5","tslint":"^5.12.0","tslint-config-prettier":"^1.17.0","tslint-eslint-rules":"^5.4.0","typescript":"^3.2.2","xhr-mock":"^2.4.1"},"jest":{"transform":{"^.+\\.tsx?$":"ts-jest"},"testRegex":"(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$","moduleFileExtensions":["ts","tsx","js","jsx","json"],"coverageDirectory":"./coverage/","collectCoverageFrom":["src/**/*.{ts,tsx}","!src/**/*.d.ts","!**/node_modules/**"]},"gitHead":"d6d9fcf4d3db06fbd2388beb2a45921e178ffa26","_id":"https-did-resolver@0.1.0","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"mike.xu","email":"mike.xu@consensys.net"},"dist":{"shasum":"d55fa1d165a717c0cba8385e0b7a7af87d411c85","size":4207,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-0.1.0.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_0.1.0_1547498597568_0.2888451677301973"},"_hasShrinkwrap":false,"publish_time":1547498597712,"_cnpm_publish_time":1547498597712,"_cnpmcore_publish_time":"2021-12-16T17:20:45.817Z"},"0.1.0-alpha1":{"name":"https-did-resolver","version":"0.1.0-alpha1","description":"Resolve DID documents from an https domain","main":"lib/register.js","types":"lib/register.d.ts","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"0.0.6-alpha5","xmlhttprequest":"^1.8.0"},"scripts":{"build":"tsc","test":"jest","dev":"tsc --watch","format":"prettier"},"browser":{"xmlhttprequest":false},"devDependencies":{"@types/jest":"^23.3.10","jest":"^23.6.0","prettier":"^1.15.3","regenerator-runtime":"^0.12.1","ts-jest":"^23.10.5","tslint":"^5.12.0","tslint-config-prettier":"^1.17.0","tslint-eslint-rules":"^5.4.0","typescript":"^3.2.2","xhr-mock":"^2.4.1"},"jest":{"transform":{"^.+\\.tsx?$":"ts-jest"},"testRegex":"(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$","moduleFileExtensions":["ts","tsx","js","jsx","json"],"coverageDirectory":"./coverage/","collectCoverageFrom":["src/**/*.{ts,tsx}","!src/**/*.d.ts","!**/node_modules/**"]},"readmeFilename":"README.md","gitHead":"1ff3dacb8b6d8414cf747810657d6e01a1530fcd","_id":"https-did-resolver@0.1.0-alpha1","_npmVersion":"6.4.1","_nodeVersion":"11.5.0","_npmUser":{"name":"pelleb","email":"pelleb@gmail.com"},"dist":{"shasum":"868669073de6e837cf072c91d3979f7967cc8599","size":4217,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-0.1.0-alpha1.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-0.1.0-alpha1.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_0.1.0-alpha1_1547166304194_0.11385499968325918"},"_hasShrinkwrap":false,"publish_time":1547166304397,"_cnpm_publish_time":1547166304397,"_cnpmcore_publish_time":"2021-12-16T17:20:46.034Z"},"0.0.3":{"name":"https-did-resolver","version":"0.0.3","description":"Resolve DID documents from an https domain","main":"lib/register.js","types":"lib/register.d.ts","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"^0.0.4","xmlhttprequest":"^1.8.0"},"scripts":{"build":"tsc","test":"jest","dev":"tsc --watch","format":"prettier"},"browser":{"xmlhttprequest":false},"devDependencies":{"@types/jest":"^23.1.1","jest":"^23.6.0","prettier":"^1.14.2","regenerator-runtime":"^0.12.1","ts-jest":"^23.1.4","tslint":"^5.11.0","tslint-config-prettier":"^1.15.0","tslint-eslint-rules":"^5.4.0","typescript":"^3.0.3","xhr-mock":"^2.4.1"},"jest":{"transform":{"^.+\\.tsx?$":"ts-jest"},"testRegex":"(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$","moduleFileExtensions":["ts","tsx","js","jsx","json"],"coverageDirectory":"./coverage/","collectCoverageFrom":["src/**/*.{ts,tsx}","!src/**/*.d.ts","!**/node_modules/**"]},"gitHead":"8cd2529c5577977ff4ad69b53434d27cffcfa3a1","_id":"https-did-resolver@0.0.3","_npmVersion":"6.0.1","_nodeVersion":"8.4.0","_npmUser":{"name":"mike.xu","email":"mike.xu@consensys.net"},"dist":{"shasum":"00fd634042cebf468fe45ecec2a45c1b85a9263a","size":4430,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-0.0.3.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_0.0.3_1539716742222_0.1526888276296987"},"_hasShrinkwrap":false,"publish_time":1539716742366,"_cnpm_publish_time":1539716742366,"_cnpmcore_publish_time":"2021-12-16T17:20:46.273Z"},"0.0.2":{"name":"https-did-resolver","version":"0.0.2","description":"Resolve DID documents from an https domain","main":"lib/register.js","types":"lib/register.d.ts","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"^0.0.4","xmlhttprequest":"^1.8.0"},"scripts":{"build":"tsc","test":"jest","dev":"tsc --watch","format":"prettier"},"browser":{"xmlhttprequest":false},"devDependencies":{"@types/jest":"^23.1.1","jest":"^23.6.0","prettier":"^1.14.2","regenerator-runtime":"^0.12.1","ts-jest":"^23.1.4","tslint":"^5.11.0","tslint-config-prettier":"^1.15.0","tslint-eslint-rules":"^5.4.0","typescript":"^3.0.3","xhr-mock":"^2.4.1"},"jest":{"transform":{"^.+\\.tsx?$":"ts-jest"},"testRegex":"(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$","moduleFileExtensions":["ts","tsx","js","jsx","json"],"coverageDirectory":"./coverage/","collectCoverageFrom":["src/**/*.{ts,tsx}","!src/**/*.d.ts","!**/node_modules/**"]},"gitHead":"f1c4b1a25b05eb8be0061c734e5c758e4ebdff9b","_id":"https-did-resolver@0.0.2","_npmVersion":"6.0.1","_nodeVersion":"8.4.0","_npmUser":{"name":"mike.xu","email":"mike.xu@consensys.net"},"dist":{"shasum":"e3c5a699b114de293eba200af3da880c6e6eb370","size":4425,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-0.0.2.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_0.0.2_1539201990864_0.23614297633869774"},"_hasShrinkwrap":false,"publish_time":1539201990982,"_cnpm_publish_time":1539201990982,"_cnpmcore_publish_time":"2021-12-16T17:20:46.471Z"},"0.0.1":{"name":"https-did-resolver","version":"0.0.1","description":"Resolve DID documents from an https domain","main":"lib/register.js","author":{"name":"Mike Xu","email":"mike.xu@consensys.net"},"license":"Apache-2.0","dependencies":{"did-resolver":"^0.0.4","xmlhttprequest":"^1.8.0"},"scripts":{"type-check":"tsc --noEmit","type-check:watch":"npm run type-check -- --watch","build":"npm run build:types && npm run build:js","build:types":"tsc --emitDeclarationOnly","build:js":"babel src --out-dir lib --extensions \".ts,.tsx\" --source-maps inline","test":"jest"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.1","@babel/plugin-proposal-class-properties":"^7.0.0","@babel/plugin-proposal-object-rest-spread":"^7.0.0","@babel/plugin-transform-runtime":"^7.1.0","@babel/preset-env":"^7.0.0","@babel/preset-typescript":"^7.0.0","@types/jest":"^23.3.2","babel-core":"7.0.0-bridge.0","babel-jest":"^23.6.0","jest":"^23.6.0","prettier":"^1.14.2","regenerator-runtime":"^0.12.1","ts-jest":"^23.1.4","typescript":"^3.0.3","xhr-mock":"^2.4.1"},"jest":{"coverateDirectory":"./coverage/","collectCoverage":true},"gitHead":"f2a40d43840939ae9a1721eb50501764e37739b1","_id":"https-did-resolver@0.0.1","_npmVersion":"6.0.1","_nodeVersion":"8.4.0","_npmUser":{"name":"mike.xu","email":"mike.xu@consensys.net"},"dist":{"shasum":"509940d713683762f73308d482ad4c8d92d35508","size":12600,"noattachment":false,"key":"/https-did-resolver/-/https-did-resolver-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/https-did-resolver/download/https-did-resolver-0.0.1.tgz"},"maintainers":[{"name":"mike.xu","email":""},{"name":"mirceanis","email":""},{"name":"pelleb","email":""},{"name":"simonas-notcat","email":""},{"name":"uport-automation-bot","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/https-did-resolver_0.0.1_1539005738393_0.6566679754867262"},"_hasShrinkwrap":false,"publish_time":1539005738548,"_cnpm_publish_time":1539005738548,"_cnpmcore_publish_time":"2021-12-16T17:20:46.692Z"}},"readme":"---\ntitle: \"HTTPS DID Resolver\"\nindex: 0\ncategory: \"https-did-resolver\"\ntype: \"reference\"\nsource: \"https://github.com/uport-project/https-did-resolver/blob/develop/README.md\"\n---\n\n# HTTPS DID Resolver\n\nThis library is intended to use domains accessed through https as [Decentralized Identifiers](https://w3c-ccg.github.io/did-spec/#decentralized-identifiers-dids) and retrieve an associated [DID Document](https://w3c-ccg.github.io/did-spec/#did-documents)\n\nIt supports the proposed [Decentralized Identifiers](https://w3c-ccg.github.io/did-spec/) spec from the [W3C Credentials Community Group](https://w3c-ccg.github.io).\n\nIt requires the `did-resolver` library, which is the primary interface for resolving DIDs.\n\n## DID method\n\nTo encode a DID for an HTTPS domain, simply prepend `did:https:` to domain name.\n\neg: `https://example.com -> did:https:example.com`\n\n## DID Document\n\nThe DID resolver takes the domain and forms a [well-known URI](https://tools.ietf.org/html/rfc5785) to access the DID Document.\n\nFor a did `did:https:example.com`, the resolver will attempt to access the document at `https://example.com/.well-known/did.json`\n\nA minimal DID Document might contain the following information:\n\n```js\n{\n  '@context': 'https://w3id.org/did/v1',\n  id: 'did:https:example.com',\n  publicKey: [{\n       id: 'did:https:example.com#owner',\n       type: 'Secp256k1VerificationKey2018',\n       owner: 'did:https:example.com',\n       ethereumAddress: '0xb9c5714089478a327f09197987f16f9e5d936e8a'}],\n  authentication: [{\n       type: 'Secp256k1SignatureAuthentication2018',\n       publicKey: 'did:https:example.com#owner'}]\n}\n```\n\nNote this uses the `Secp256k1VerificationKey2018` type and an `ethereumAddress` instead of a `publicKeyHex`, meaning that this DID is owned by an entity that controls the private key associated with that address.\n\n## Resolving a DID document\n\nThe resolver presents a simple `resolver()` function that returns a ES6 Promise returning the DID document.\n\n```js\nimport { Resolver } from 'did-resolver'\nimport getResolver from 'https-did-resolver'\n\nconst httpsResolver = getResolver()\nconst didResolver = new Resolver(httpsResolver)\ndidResolver.resolve('did:https:example.com').then(doc => console.log)\n\n// You can also use ES7 async/await syntax\nconst doc = await didResolver.resolve('did:https:example.com')\n```\n","_attachments":{},"license":"Apache-2.0"}