W3C home > Mailing lists > Public > public-credentials@w3.org > November 2019

Re: Proposed work item: did:key DID Method

From: Manu Sporny <msporny@digitalbazaar.com>
Date: Sun, 24 Nov 2019 10:57:39 -0500
To: Melvin Carvalho <melvincarvalho@gmail.com>
Cc: W3C Credentials Community Group <public-credentials@w3.org>
Message-ID: <fb7b9d6e-82f5-6389-c07c-2919450b9aed@digitalbazaar.com>
On 11/24/19 5:54 AM, Melvin Carvalho wrote:
> Not to be pedantic, but is there an actual working example of this 
> method?

Yes:

https://github.com/digitalbazaar/did-method-key-js

with a minimal test:

https://github.com/digitalbazaar/did-method-key-js/blob/master/tests/driver.spec.js

Orie (Transmute) has also put together an implementation here:

https://github.com/transmute-industries/did-key

with a demo here:

https://did-key.web.app/

> The above JSON gives syntax errors (even after removing the "..." 
> parts)

Yes, I was just providing a rough sketch of how we could achieve what
Orie was asking for... it wasn't meant to be a fully baked working
example since it speculates on where the DID WG might land on whether or
not to allow two parallel key expressions for the same key (base58 and
JWK, for example).

> But controller doesnt seem to be explained anywhere in that 
> document.

Yes, the document is out of date... things are moving quickly in the DID
WG and we're trying to see where things settle before putting something
permanently into the Linked Data Security vocabulary/context. We've
found in the past that when we add stuff that's experimental, and note
that it's experimental, that developers end up relying on it and then we
can't remove the experimental stuff... ever. So, the published
vocabularies and JSON-LD Contexts are usually the *last* thing to get
updated... typically during CR. In the meantime, we publish static
copies of the documents via stuff like:

https://github.com/w3c-dvcg/security-vocab/blob/master/contexts/security-v2.jsonld#L39

which is published here:

https://www.npmjs.com/package/security-context

That package can be npm installed and then used with the JSON-LD
document loader mechanism to automatically load the latest security
context, example here:

https://github.com/digitalbazaar/bedrock-security-context/blob/master/lib/index.js#L7

Hope that helps... don't expect all of this stuff to be production ready
yet... we're putting these items into the group early in the process so
that we can work out the kinks together. We've used it internally, we're
pretty sure it works for our use cases, we still need to see if others
in this group can find issues with the proposal and see if they have
other use cases they want the spec to cover. Expect the spec and design
to change over the next couple of months. :)

-- manu

-- 
Manu Sporny (skype: msporny, twitter: manusporny)
Founder/CEO - Digital Bazaar, Inc.
blog: Veres One Decentralized Identifier Blockchain Launches
https://tinyurl.com/veres-one-launches
Received on Sunday, 24 November 2019 15:57:46 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:19:03 UTC