This talk will demystify Decentralized Identifiers (DIDs) via the simple Bitcoin Reference (BTCR) DID Method. Kim will introduce the basics of DIDs and show how they work in action through demos of the creation/updating and resolution process in BTCR. We'll build on this knowledge by discussing advanced features enabled by DIDs, along with a brief survey of other DID methods. By the end of the talk, you'll be able to create and resolve your own BTCR DIDs through the live BTCR playground.
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
DIDs Demystified: A hands-on intro to DIDs via the Bitcoin Reference (BTCR) DID Method
1. twitter.com/kimdhamilton
DIDs Demystified
A hands-on intro to DIDs via the BTCR DID Method
June 6, 2018
SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
Kim Hamilton Duffy
CTO of Learning Machine, Principal Architect of Blockcerts and co-chair W3C Credentials
Community Group
2. 1. Empower global SSI communities
2. Open to everyone interested in SSI
3. All content is shared with CC BY SA
SSIMeetup.org
Alex Preukschat @SSIMeetup @AlexPreukschat
Coordinating Node SSIMeetup.org
https://creativecommons.org/licenses/by-sa/4.0/
SSIMeetup objectives
6 June 2018
3. How I got involved with SSI
● CTO of Learning Machine
● Principal Architect of Blockcerts
● Open source/open standards for blockchain verification of
credentials
● Open Badges and Verifiable Credentials Alignment
● JSON-LD signatures and suites
● RWoT => Involvement with Decentralized Identifiers (DIDs)
and the BTCR Method Spec
● Co-chair W3C Credentials Community Group
SSIMeetup.org
4. Orientation
From Drummond Reed’s SSI Meetup 2 (DIDs)
Method DID prefix
Sovrin did:sov:
Bitcoin Reference did:btcr:
Ethereum uPort did:uport:
Blockstack did:stack:
Veres One did:v1:
IPFS did:ipld:
SSIMeetup.org
5. Why BTCR is interesting
● Long-lived, recipient-owned EDU/OCC verifiable credentials
● “Subject” of credentials => the biggest challenge is identity
● User-friendly approaches to cryptographic key management lacking
● Risk to longevity and usability
● Solution is DIDs
● BTCR’s simplicity
● Bitcoin blockchain already available!
● Simple implementation, minimal feature set => easy to reason about
● Useful baseline from which to understand with more advanced DID capabilities
● Can start experimenting with DIDs immediately
SSIMeetup.org
6. How it works
● An example BTCR DID
● Finding on the Bitcoin blockchain
● Creating
● Updating
● Resolving
7. A BTCR Decentralized Identifier
● References network (mainnet, testnet3, …), block height and position
● Bech32 encoded Transaction Position References
● Proposed extensions
● From this string, a BTCR DID resolver can generate a DID Document
SSIMeetup.org
did:btcr:xkyt-fzgq-qq87-xnhn
12. Resolving a BTCR DID
● Build “implicit” DID from transaction
● Lookup continuation DID Document
● Build final “constructed” DID document
SSIMeetup.org
20. Limitations and Quirks
● NodeJS libraries use
explorers
● Explorer vs Bitcoin node
● C++ libraries offer
more robust options
● Various quirks
● Confirmation time
● Continuation DID
Documents
SSIMeetup.org
Issues: https://github.com/w3c-ccg/didm-btcr/issues
21. What you can do with a BTCR DID
● Sign a Verifiable Credential
● Authenticate (DID Auth)
SSIMeetup.org
23. Get involved
● Incubate
● User stories
● Prototype
● Whitepapers
● Hackathons
● Blockchain Commons (Christopher Allen)
● Draft Specifications
● Contribute Use Cases
● Code and other specs
● BTCR: see references + Ryan Grant/Dan
Pape’s C++ repo
(https://github.com/dcdpr/btcr-DID-method)
● Method Specs
● DID Auth
● Resolver
Internet Identity Workshop Rebooting Web of Trust
Credentials Community Group
Decentralized Identity Foundation
• Credentials CG
• Verifiable Claims WG
• Veres One CG
• DID WG (soon)
SSIMeetup.org
24. References from this talk
● SSI Meetup Webinar Decentralized Identifiers (DIDs), Drummond Reed:
http://ssimeetup.org/decentralized-identifiers-did-fundamental-block-self-sovereign-identity-drummond-reed-webinar-2/
● DID Draft Specification: https://w3c-ccg.github.io/did-spec/
● DID Method Registry: https://w3c-ccg.github.io/did-method-registry/
● How BTCR resolution works, Kim H. Duffy, Christopher Allen, Ryan Grant, Dan Pape:
https://github.com/WebOfTrustInfo/rebooting-the-web-of-trust-spring2018/blob/master/final-documents/btcr-resolver.pdf
● Universal Resolver, Markus Sabadello: https://medium.com/decentralized-identity/a-universal-resolver-for-self-sovereign-identifiers-48e6b4a5cc3c
● BTCR Playground: https://weboftrustinfo.github.io/btcr-tx-playground.github.io/
● Related Libraries:
● https://github.com/WebOfTrustInfo/btcr-did-tools-js
● https://github.com/WebOfTrustInfo/txref-conversion-js
● Bech 32 Encoded Transaction Position References, Jonas Schnelli:
https://github.com/veleslavs/bips/blob/c83837536d6629f754ce5a88bbe245e0a615e76e/bip-XXXX-Bech32_Encoded_Transaction_Position_Referenc
es.mediawiki
● Summary of Proposed Extensions: https://github.com/w3c-ccg/didm-btcr/issues/1
● Proposal, Dan Pape: https://github.com/danpape/bips/blob/Bech32_Encoded_TxRef/bip-0136.mediawiki
● Blockcerts: https://www.blockcerts.org/
● Groups:
● W3C Credentials Community Group: https://www.w3.org/community/credentials/
● Internet Identity Workshop: https://www.internetidentityworkshop.com/
● Rebooting Web of Trust: http://www.weboftrust.info/
● Decentralized Identity Foundation: http://identity.foundation/
SSIMeetup.org
25. twitter.com/kimdhamilton
DIDs Demystified
A hands-on intro to DIDs via the BTCR DID Method
June 6, 2018
SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
Kim Hamilton Duffy
CTO of Learning Machine, Principal Architect of Blockcerts and co-chair W3C Credentials
Community Group