Identity-centric interoperability with the Ceramic Protocol

SSIMeetup
Ceramic Protocol
Interoperability built around Identities
Joel Thorstensson
Founder & CTO, 3Box
Primary author, Ceramic Protocol
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
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
Ceramic is a protocol for unstoppable documents.
Documents are flexible, can
store any kind of info.
Updates encoded in IPLD,
forming individual “doc chains”.
Docs have permalinks and
versioning is supported.
Verifiable Documents
Documents can reference other
docs to form a graph.
Network is public, permissionless,
and censorship-resistant.
Network is secure, resilient, and
never down.
Universal Graph
Documents can be anchored in
any blockchain.
Updates are batched into a
merkle tree providing scale.
Nodes can choose their own
persistence method.
Configurable Anchoring
Documents need to be signed
by a DID. Any DID will work.
3ID is a complete DID system
entirely built on Ceramic.
3IDs unifies accounts across all
blockchains.
Flexible Accounts
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
The Ceramic Network.
- Nodes decide which
blockchain to trust
BLOCKCHAIN ANCHORS
- No built in persistence
(similar to ipfs)
- Configurable backup
DATA PERSISTENCE
- Updates over libp2p
- IPFS used to sync data
- Only replicate relevant
documents
ONE NETWORK
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
How does it work?
Decentralized Identity standard
provides interoperability.
Documents in Ceramic can
represent DIDs.
Documents in Ceramic can be
owned by DIDs.
DID
InterPlanetary Linked Data,
structured content addressable
data.
Can be used to represent any
linked data structure.
Content addressing provides
native integrity checking.
IPLD
Peer-to-peer stack used by
many decentralized systems.
Peer discovery and message
propagation.
Works across many languages
and environments.
Libp2p
Blockchain agnostic. Ethereum
first.
Used to determine ordering in
Ceramic.
3IDs unifies accounts across all
blockchains.
Blockchain
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
Anatomy of a Ceramic document.
- CID of Anchor Record
- Immutable references
DOCUMENT VERSIONS
- Ordering with anchors
- Earliest anchor wins
CONFLICT RESOLUTION
- Contract / DAO records
RECORD TYPES
- DocId: ceramic://bafy...
- Owned by DID
- Replication over libp2p
DOCUMENT BASICS
v2v1v0
Anchor
Record
Signature
Record
Anchor
Record
Signature
Record
Genesis
Record
Anchor
Record
Proof
Metadata
Blockchain
Transaction
Proof
Metadata
Blockchain
Transaction
Proof
Metadata
Blockchain
Transaction
Blockchain
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
Doctypes.
Generic doctype that supports
any content.
Owned by one or multiple DIDs.
Great for: Schemas, Policies,
Profiles, Metadata, Pinsets
Tiles
DID method built on Ceramic.
Lightweight & scalable.
Secure key revocation.
3ID
Used to link a blockchain
account to a DID.
Allows you to associate your
accounts across blockchains to
one common identifier
Account Links
A doctype defines the state
transition logic used to validate
if an update to a Ceramic
document is valid.
E.g. Verifiable Credential,
Dynamic ruleset, etc...
Your doctype
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
3ID: connecting identity across blockchains.
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
3ID Account template.
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
10
Service Policies.
Image Resizing Service Policy Tile
- Payment options
- Restrictions
- SLA
- Other settings?
SERVICE PROVIDER SETTINGS
- A document that
represents the service
SERVICE DESCRIPTION{
“description”: “Resize images and encode the result using IPLD.”,
“request-endpoint”: {
“url”: “https://image.resize/api/resize-image”,
“request-schema”: “ceramic://bafy1…”,
“response-schema”: “ceramic://bafy2…”
},
“payment”: {
“type”: “payment-channel-connext”,
“address”: “0x12345…”
}
}
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
Ceramic development is lead by 3Box.
1111
A connected metadata layer
for Web 3
● Metadata around blockchains,
p2p databases, and traditional
web2 services
● Let users bring their data
across ecosystems
Community first collaboration.
● Always open source
● Specifications:
https://github.com/ceramicnet
work/specs
PoC protocol implementation in
typescript
● CLI tool & web native
● https://github.com/ceramicnet
work/js-ceramic
This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
Join us in building a web without silos
Made byJoel Thorstensson, @oedth
1 of 12

More Related Content

What's hot(20)

Introduction to Self Sovereign IdentityIntroduction to Self Sovereign Identity
Introduction to Self Sovereign Identity
Heather Vescent1.4K views

Similar to Identity-centric interoperability with the Ceramic Protocol(20)

Recently uploaded(20)

Identity-centric interoperability with the Ceramic Protocol

  • 1. Ceramic Protocol Interoperability built around Identities Joel Thorstensson Founder & CTO, 3Box Primary author, Ceramic Protocol This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 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
  • 3. Ceramic is a protocol for unstoppable documents. Documents are flexible, can store any kind of info. Updates encoded in IPLD, forming individual “doc chains”. Docs have permalinks and versioning is supported. Verifiable Documents Documents can reference other docs to form a graph. Network is public, permissionless, and censorship-resistant. Network is secure, resilient, and never down. Universal Graph Documents can be anchored in any blockchain. Updates are batched into a merkle tree providing scale. Nodes can choose their own persistence method. Configurable Anchoring Documents need to be signed by a DID. Any DID will work. 3ID is a complete DID system entirely built on Ceramic. 3IDs unifies accounts across all blockchains. Flexible Accounts This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 4. The Ceramic Network. - Nodes decide which blockchain to trust BLOCKCHAIN ANCHORS - No built in persistence (similar to ipfs) - Configurable backup DATA PERSISTENCE - Updates over libp2p - IPFS used to sync data - Only replicate relevant documents ONE NETWORK This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 5. How does it work? Decentralized Identity standard provides interoperability. Documents in Ceramic can represent DIDs. Documents in Ceramic can be owned by DIDs. DID InterPlanetary Linked Data, structured content addressable data. Can be used to represent any linked data structure. Content addressing provides native integrity checking. IPLD Peer-to-peer stack used by many decentralized systems. Peer discovery and message propagation. Works across many languages and environments. Libp2p Blockchain agnostic. Ethereum first. Used to determine ordering in Ceramic. 3IDs unifies accounts across all blockchains. Blockchain This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 6. Anatomy of a Ceramic document. - CID of Anchor Record - Immutable references DOCUMENT VERSIONS - Ordering with anchors - Earliest anchor wins CONFLICT RESOLUTION - Contract / DAO records RECORD TYPES - DocId: ceramic://bafy... - Owned by DID - Replication over libp2p DOCUMENT BASICS v2v1v0 Anchor Record Signature Record Anchor Record Signature Record Genesis Record Anchor Record Proof Metadata Blockchain Transaction Proof Metadata Blockchain Transaction Proof Metadata Blockchain Transaction Blockchain This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 7. Doctypes. Generic doctype that supports any content. Owned by one or multiple DIDs. Great for: Schemas, Policies, Profiles, Metadata, Pinsets Tiles DID method built on Ceramic. Lightweight & scalable. Secure key revocation. 3ID Used to link a blockchain account to a DID. Allows you to associate your accounts across blockchains to one common identifier Account Links A doctype defines the state transition logic used to validate if an update to a Ceramic document is valid. E.g. Verifiable Credential, Dynamic ruleset, etc... Your doctype This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 8. 3ID: connecting identity across blockchains. This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 9. 3ID Account template. This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 10. 10 Service Policies. Image Resizing Service Policy Tile - Payment options - Restrictions - SLA - Other settings? SERVICE PROVIDER SETTINGS - A document that represents the service SERVICE DESCRIPTION{ “description”: “Resize images and encode the result using IPLD.”, “request-endpoint”: { “url”: “https://image.resize/api/resize-image”, “request-schema”: “ceramic://bafy1…”, “response-schema”: “ceramic://bafy2…” }, “payment”: { “type”: “payment-channel-connext”, “address”: “0x12345…” } } This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 11. Ceramic development is lead by 3Box. 1111 A connected metadata layer for Web 3 ● Metadata around blockchains, p2p databases, and traditional web2 services ● Let users bring their data across ecosystems Community first collaboration. ● Always open source ● Specifications: https://github.com/ceramicnet work/specs PoC protocol implementation in typescript ● CLI tool & web native ● https://github.com/ceramicnet work/js-ceramic This presentation is released under a Creative Commons license. (CC BY-SA 4.0). SSIMeetup.org
  • 12. Join us in building a web without silos Made byJoel Thorstensson, @oedth