jaromil / W3C-DID

Dyne.org's W3C-DID implementation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

W3C-DID

Dyne.org W3C-DID implementation.

The documentation of the W3C-DID Document specs is at https://dyne.github.io/W3C-DID/

The OpenAPI of the W3C-DID controller can be seen at https://did.dyne.org/docs/

Quickstart

Users need not to run a DID, but can use our official instance at https://did.dyne.org/docs

To run a local instance however, make sure npm is installed and use:

make install-deps
make run-local

To generate DID documents one needs registered ECDH and EDDSA public keys to be listed inside an admin DID document, i.e: did:dyne:DID-spec.A or did:dyne:admin.

To run simple tests one can generate a fake keyring:

zenroom -k client/v1/did-setting.json -z client/v1/sandbox/sandbox-keygen.zen > sandbox-admin-keyring.json`

that is associated to the DID document whose DID id did:dyne:sandbox.A:8REPQXUsFmaN6avGN6aozQtkhLNC9xUmZZNRM7u2UqEZ.

This fake keyring is able to write inside did:dyne:sandbox for testing purposes (saved data will be lost once in a while!)

To test the creation of a DID document on the local running instance:

make generate-sandbox-did-local

DID document specs

We call "DID spec" any word following the did:dyne: namespace. DID specs are governed by specific contracts subdirectories carrying the same name.

Any "DID spec" has one or more admins that have the permission to create, update or delete the DID document under their "DID spec". These admins can be recognized from their DID, indeed it will be of the from did:dyne:DID-spec.A: and they will govern all the DID documents whose DID starts with did:dyne:DID-spec:.

For example did:dyne:zenflows.A manages DIDs for the did:dyne:zenflows: namespace.

The special did:dyne:admin spec is the one governing all admin specs and can create, update and delete admins.

About

Dyne.org's W3C-DID implementation

License:GNU Affero General Public License v3.0


Languages

Language:Shell 88.4%Language:TypeScript 5.1%Language:JavaScript 3.6%Language:Makefile 2.5%Language:Jinja 0.2%Language:Dockerfile 0.1%Language:CSS 0.1%