The Decentralized
Web Platform
Web5:
A new evolution of the Web that enables decentralized apps and protocols.
LET’S GO >
Today
The Web We Want
Evolving the Web
2
In the current Web model, people are users who do not own their data or identity. They are given accounts by companies and their data is held captive in app silos.
To create a new class of decentralized apps and protocols (e.g. tbDEX) that put individuals at the center, we must empower them with self-owned identity and restore control over their data.
Personal and social communications
Financial interactions
All the apps we love
Apps built for Web5 store their data with you
WEB 2
WEB 3
WEB 5
,
The Decentralized Web Platform (DWP) enables developers to write Decentralized Web Apps (DWAs) using Decentralized Identifiers (DIDs) and Decentralized Web Nodes (DWNs), returning ownership and control over identity and data to individuals <-- We are calling this Web5
3
3
The Pillars of Web5
Self-owned identifiers that enable decentralized identity authentication and routing.
Data storage and message relay nodes that serve as the foundation for decentralized apps and protocols.
Data formats and models for cryptographic presentation and verification of claims.
4
did://
Decentralized Identifiers
Verifiable Credentials
Decentralized �Web Nodes
Decentralized Identifiers (DIDs)
5
Alice self-generates her DIDs and anchors PKI (key and endpoint) state changes in the network.
Bob can discover all DIDs indexed in the network to independently resolve and verify them.
{…} + {…} = {…}
T0
TN
Compiled
did:ion:1a2b3c4d…
Verifiable Credentials (VC)
6
Acme Bank�IDV Issuer
PFI�Verifier
iss: did:example:bank�sub: did:example:alice�claims:
acct: 12345678
name: Alice Smith
+ issuer’s digital signature
iss: did:example:bank�sub: did:example:alice�claims:
title: 12345678
name: Alice Smith
+ issuer’s digital signature
+ subject’s digital signature
�
Anchor Issuer’s DID, public keys, and endpoints into ION
id: did:example:hardtron�verificationMethod: { JWK }�
Present Bank Account Proof
Issuance of a Verifiable Credential
Alice’s �Wallet
Resolve public key material
Replicated
Secure
Semantic Discovery
Async Message Threads
Supports any identity type
Universally Addressable
Decentralized Web Nodes
Send and receive messages over a DID-encrypted universal network
Designed to support individuals, companies, machines, or any other entity
Crawlable DID-relative addressing of data
Masterless eventually consistent replication of instances across devices and clouds
Data can be optionally encrypted with an individual's DID keys
Discover any form of published data simply by knowing its semantic type
7
Decentralized Web Nodes (DWN, DWeb Nodes) is an emerging standard for data storage and relay that enables entities of any type (people, organizations, etc.) to send and store encrypted or public messages and data, enabling a wide variety of decentralized apps and protocols to be built on top.
Features
DID Functions
Data Management
DID Auth
Context Management
Credential Functions
The Anatomy of an Identity Wallet
Support create, update, and recovery of DIDs across all supported DID Methods
Provide UI and functionality to manage credentials and app data stored in DWNs
Perform authentication and manage authorizations (e.g. DWN authz capabilities)
Maintain and enforce which DIDs are used with different people, apps, and services
Sign, verify, discover, and present credentials to verifying parties
8
Web5 Network Topology
9
Alice’s remote DWN
Bob’s �remote DWN
DID Resolver
Alice resolves Bob’s DID
Alice sends a message to Bob’s DWN
Bob’s DWN relays the message
Bob sends a response to Alice’s DWN
Bob resolves Alice’s DID
Alice’s DWN relays Bob’s response
Alice’s local DWN
Bob’s local DWN
The combination of Decentralized Identifiers and Decentralized Web Nodes produces a Web of DID-secured messaging, data sharing, and credential exchange that can replace one-off protocols (encrypted messaging, photo sharing, etc.) with universal standards for all types of semantic data exchange.
1
4
3
5
6
2
DWAs
DWP
Visualizing Web5 and the DWP Stack
10
Decentralized Identifiers
Decentralized Web Nodes
DWA Model
tbDEX, Other Apps
Progressive
Responsive
Work Offline
App-Like
Fresh
Safe
Discoverable
Re-engageable
Installable
Linkable
What are PWAs?
PWA stands for Progressive Web App, a standard for installable web apps that is implemented in all major browsers today. PWAs are websites that took their vitamins and have special powers.
11
Web App
Service
Worker
Local Cache
Web App
Service
Worker
Local Cache
PWA
DWA
+
DWN
SDK
Centralized App Server
Decentralized Web Node
From PWAs to DWAs
12
Acme Bank? Is this legit?
13
Many activities in our world require the establishment of trust between participants. DIDs + DWeb Nodes allow individuals, organizations, and companies to publish credentials anyone can discover and independently verify.
Bank’s Node
DID Resolver
Alice resolves the Bank’s DID
Alice fetches credentials from the Bank’s DWeb Node based on the schema of the desired credential
navigator.did.request({� schema: “banking.org/charter”�})
1
2
tbDEX Message Threads
14
When viewed from 10,000 feet, tbDEX is a DWN-based threaded messaging and data exchange protocol layer that runs atop the substrate of DIDs and Decentralized Web Nodes.
PFI 1
Alice’s tbDEX-aware app knows the DIDs of various PFIs and sends them Ask messages to initiate an exchange.
navigator.did.send({� schema: “tbd.website/schemas/ask”�})
Alice’s local DWN
PFIs respond to Alice’s Asks via Bid messages sent back to Alice’s DWeb Node.
navigator.did.send({� schema: “tbd.website/schemas/bid”�})
Alice’s remote DWN
1
2
PFI 2
PFI 3
Music to my ears
It’s not fun to regurgitate your playlists over and over again for different music apps, so let’s stop doing that.
15
Alice’s remote DWN
TIDAL
Groove
Groove secures the ability to write schema.org/MusicPlaylist objects to Alice’s DWNs, and adds a new entry.
TIDAL, which previously secured the ability to read Alice’s schema.org/MusicPlaylist entries, can read the entry Groove added.
1
2
navigator.did.store({� schema: “schema.org/MusicPlaylist”,� data: { ... }�})
navigator.did.request({� schema: “schema.org/MusicPlaylist”,� data: { ... }�})
Hotel me your travel plans
Your preferences, tickets, reservations, and other travel data are strewn across 100s of different hotel, airline, and travel apps in a massive, unworkable mess. DIDs + Decentralized Web Nodes can help unify these flows and experiences.
16
Alice’s remote DWN
Alice grants her hotel, airline, and rental car provider the ability to add schema.org/Reservation objects to her collection of trip-related data.
Alice can grant any app she chooses access to reservations and tickets stored in her schema.org/Trip data to help her visualize her itinerary.
1
2
navigator.did.store({� schema: “schema.org/Reservation”,� data: { ... }�})
navigator.did.request({
schema: “schema.org/Trip”�})
Hotel
Car Rental
Airline
Travel App
We’re building an app platform?
Always have been
Web5 is a Decentralized Web Platform that enables developers to leverage Decentralized Identifiers, Verifiable Credentials, and Decentralized Web Nodes to write Decentralized Web Apps, returning ownership and control over identity and data to individuals.