did-io v0.8.3
DID Client (did-io)
A DID (Decentralized Identifier) resolution library for Javascript
Table of Contents
Security
TBD
Background
TBD
See also (related specs):
- Decentralized Identifiers (DIDs) - Data Model and Syntaxes
- Veres One DID Method
- Web Ledger Protocol
- Linked Data Cryptographic Suite Registry
- Linked Data Proofs
- Object Capabilities for Linked Data
Install
Requires Node.js 8.3+
To install locally (for development):
git clone https://github.com/digitalbazaar/did-io.git
cd did-io
npm install
To install as a dependency in another project, add this to your package.json
:
"did-io": "^0.7.0"
Usage
Configuring method-specific drivers
did-io
is meant to be a DID resolver harness for use with one or more
method-specific drivers (no drivers are included by default). It uses a
Chai-like plugin architecture, where each driver
is loaded via didIo.use(method, driver)
.
That means that you need to create instances of specific driver libraries for each method that you want to use.
Creating a did-io
Client Instance
const didIo = require('did-io');
// You can now specify which DID methods you want via `.use(method, driver)`
Supported Drivers
Veres One DID Method
- Veres One Method spec
did-veres-one
driver docs
const v1 = require('did-veres-one');
// See did-veres-one repo for instructions on how to set up the httpsAgent etc
const veresDriver = v1.driver({ mode: 'dev', httpsAgent, documentLoader });
// to use the did:v1 / Veres One method
didIo.use('v1', veresOneDriver);
// Now you can start using the API (inside an async function)
const didDoc = await didIo.get({did});
console.log(didDoc);
didIo.methods['v1'].generate({...});
// or
veresDriver.generate({...})
Some operations are method-specific, and can be only called on individual drivers:
Veres One Supported Operations
register()
get()
update()
did:key
DID Method
did-key-driver
driver docs
const keyDriver = require('did-method-key');
// to use the did:key method
didIo.use('key', keyDriver);
did-key
Supported Operations
get()
Contribute
See the contribute file!
PRs accepted.
Small note: If editing the Readme, please conform to the standard-readme specification.
Commercial Support
Commercial support for this library is available upon request from Digital Bazaar: support@digitalbazaar.com
License
New BSD License (3-clause) © Digital Bazaar
5 years ago
5 years ago
5 years ago
5 years ago
7 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago