Angie Jones PRO
Senior Developer Advocate specializing in test automation. International Keynote Speaker. Master Inventor.
Decentralized Web Platform
a new layer for the Web that enables decentralized apps and protocols
Angie Jones | Head of Developer Relations, TBD | @techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
Web2 🤝 Web3 = Web5
a new layer for the Web that enables decentralized apps and protocols
@techgirl1908
Decentralized Identifiers
Verifiable Credentials
Decentralized Web Nodes
self-owned IDs
verification of claims
personal data stores
@techgirl1908
self-owned identifiers that enable
decentralized authorization
Pillar
@techgirl1908
W3C standard
DID Method
DID Method Specific String
Scheme
@techgirl1908
string stored on a blockchain
*
@techgirl1908
DID -> DID Document
DID
resolves to
@techgirl1908
did.json
{
"@context": "https://www.w3.org/ns/did/v1",
"id": "did:ion:EiClkZMDxPKqC9c-umQfTkR8",
"verificationMethod": [
{
"id": "did:ion:EiClkZMDxPKqC9c-umQfTkR8",
"type": "Secp256k1VerificationKey2018",
"controller": "did:ion:EiClkZMDxPKqC9c-umQfTkR8"
}
],
"authentication": ["did:ion:EiClkZMDxPKqC9c-umQfTkR8"]
}
@techgirl1908
tamper-evident credentials that cryptographically verify a claim
Pillar
@techgirl1908
issuer: did:example:acme
subject: did:example:alice
claims:
  name: Alice Smith
  salary: $120,000
+ issuer’s digital signature
Verifiable Credential
Acme
issues
to
Alice
issuer: did:example:acme
subject: did:example:alice
claims:
  name: Alice Smith
  salary: $120,000
+ issuer’s digital signature
Acme
to
Alice
issuer: did:example:acme
subject: did:example:alice
claims:
  name: Alice Smith
  salary: $120,000
+ issuer’s digital signature
issues
Verifiable Credential
@techgirl1908
issuer: did:example:acme
subject: did:example:alice
claims:
  name: Alice Smith
  salary: $120,000
+ issuer’s digital signature
Acme
to
Alice
Alice
provides
issuer: did:example:acme
subject: did:example:alice
claims:
  name: Alice Smith
  salary: $120,000
+ issuer’s digital signature
+ subject’s digital signature
Verifiable Credential
to
Lender
issues
Verifiable Credential
@techgirl1908
@techgirl1908
personal data stores for public and encrypted data
Pillar
@techgirl1908
@techgirl1908
public
encrypted
@techgirl1908
data
Web App
Alice's DWN Instance
local
remote
@techgirl1908
@techgirl1908
https://example.com/u/alice/did.json
{
"@context": "https://www.w3.org/ns/did/v1",
"id": "did:web:example.com:u:alice",
"service": [{
"id":"#dwn",
"type": "DecentralizedWebNode",
"serviceEndpoint": {
"nodes": ["https://dwn.example.com",
"00:11:22:33:FF:EE"]
}
}],
"verificationMethod": [{
"id": "did:web:example.com:u:alice",
"type": "Secp256k1VerificationKey2018",
"controller": "did:web:example.com:u:alice",
"ethereumAddress": "0xb9c5714089478a327f09197987f16f9e5d936e8a"
}],
"authentication": [
"did:web:example.com:u:alice"
]
}
@techgirl1908
HTTP requests
POST https://dwn.example.com/
BODY {
"requestId": "c5784162-84af-4aab-aff5-f1f8438dfc3d",
"target": "did:example:123",
"messages": [
{
"descriptor": {
"method": "CollectionsQuery",
"schema": "https://schema.org/SocialMediaPosting"
}
},
{...}
]
}
@techgirl1908
structured JSON objects
{
"requestId": "c5784162-84af-4aab-aff5-f1f8438dfc3d",
"replies": [
{
"messageId": "bm4vvfvsdfovsj...",
"status": { "code": 200, "text": "OK" },
"entries": [...]
}
]
}
@techgirl1908
Provide UI and functionality to manage credentials and other data stored in DWNs
Support create, update, and recovery of DIDs
Maintain and enforce which DIDs are used with a given contact, app, or context
Sign, verify, discover, and present credentials to verifying parties
Perform authentication and manage authorizations
@techgirl1908
Decentralized
Web Nodes
Verifiable Credentials
Decentralized
Identifiers
Your
App
@techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
@techgirl1908
2021 | Amazon | $823.9M |
2021 | $247M | |
2021 | $165M | |
2021 | $66M | |
2020 | H&M | $39M |
2020 | British Airways | $26M |
2020 | Marriott | $24.3M |
2019 | $55M |
@techgirl1908
@techgirl1908
Alice's DWN
Tidal
Spotify
navigator.did.request({
schema: “schema.org/MusicPlaylist”,
data: { ... }
})
navigator.did.request({
schema: “schema.org/MusicPlaylist”
})
@techgirl1908
Alice's DWN
navigator.did.store({
schema: “schema.org/Trip”,
data: { ... }
})
@techgirl1908
Alice's DWN
navigator.did.store({
schema: “schema.org/Patient”,
data: { ... }
})
Alice's PCP
Alice's GYN
Alice's FAAD
@techgirl1908
@techgirl1908
self custody is hard
@techgirl1908
how do we prevent abuse?
@techgirl1908
apps need to speak the same language
@techgirl1908
tbd.website
By Angie Jones
Decentralized Web Platform is a new layer for the web that enables decentralized apps and protocols, allowing users to own and control their data.
Senior Developer Advocate specializing in test automation. International Keynote Speaker. Master Inventor.