SlideShare a Scribd company logo
Decentralized Digital Identity on the Blockchain
JOEL DUDLEY, CO-MAINTAINER, CORDA
There is an identity problem today
We need digital credentials
{
“properties”: {
“id”: “I1234562”,
“expiry”: “08-31-2018”,
“first_name”: “Joel”,
“last_name”: “Dudley”,
“date_of_birth”: “01/01/1990”
},
“owner”: “Joel Dudley”,
“owner_signature”: “E731EB6B61F1010ED7E7C787F”,
“issuer”: “California DMV”,
“issuer_signature”: “84102C2A86198312D86551A67”
}
Using digital credentials to rent a car
1. Create keypair
3. Use attestations
1.Signature proving Iown pubkey x
2.Part of DMV-signed credential proving Ihave driving licence
“OK, you can go pick upyour rental car”
Icon madeby Freepikfrom www.flaticon.com
{
“properties”: {
“id”: “I1234562”,
“expiry”: “08-31-2018”,
“first_name”: “Joel”,
“last_name”: “Dudley”,
“date_of_birth”: “01/01/1990”
},
“owner”: “Joel Dudley”,
“owner_signature”: “E731EB6B61F1010ED7E7C787F”,
“issuer”: “California DMV”,
“issuer_signature”: “84102C2A86198312D86551A67”
}
Problem: how can we link the owner and issuer to their public
keys?
Icon madeby Freepikfrom www.flaticon.com
Certificate authorities
HLP Indy uses blockchain to create a decentralised identity
system
Anyone can perform
transactions to create
immutable digital IDs
Digital identifier (DID) and DID document example
did:example:123456789abcdefghi
{
“@context”: “https://w3id.org/did/v1”,
“id”: “did:example:123456789abcdefghi”,
“publicKey”: [{
“id”: “did:example:123456789abcdefghi#keys-1”,
“type”: “RSAVerificationKey2018”,
“owner”: “did:example:123456789abcdefghi”,
“publicKeyPem”: “-----BEGIN PUBLIC KEY…END PUBLIC KEY-----rn”
}],
“authentication”: [{
“type”: “RsaSignatureAuthentication2018”,
“publicKey”: “did:example:123456789abcdefghi#keys-1”
}],
“service”: [{
“type”: “ExampleService”,
“serviceEndpoint”: “https://example.com/endpoint/8377464”
}]
}
Based on Self-SovereignIdentity with HyperledgerIndy,Calvin Cheng,FOSSASIA 2018
HLP Indy uses blockchain to create a decentralised identity
system
Anyone can perform
transactions to create
immutable digital IDs
Allowing anyone to:
1. Issue credentials
2. Verify credentials
3. Revoke credentials
Verifiable claim example
{
“@context”: “https://w3id.org/security/v1”,
“id”: “http://example.gov/credentials/3732”,
“type”: [“Credential”, “ProofOfAgeCredential”],
“issuer”: “https://dmv.example.gov”,
“issued”: “https://dmv.example.gov”,
“claim”: {
“id”: “did:example:ebfeb1f712ebc6f1c276e12ec21”,
“ageOver”: 21
},
“revocation”: {
“id”: “http://example.gov/revocations/738”,
“type”: “SimpleRevocation2017”
},
“signature”: {
“type”: “LinkedDataSignature2015”,
“created”: “2016-06-18T21:19:10Z”,
“creator”: “https://example.com/jdoe/keys/1”,
“domain”: “json-ld.org”,
“nonce”: “598c63d6”,
“signatureValue”: “BavEll0/I1zpYw8XNi1bgVg/sCne…”
}
}
Based on Self-SovereignIdentity with HyperledgerIndy,Calvin Cheng,FOSSASIA 2018
HLP Indy uses blockchain to create a decentralised identity
system
Anyone can perform
transactions to create
immutable digital IDs
Allowing anyone to issue,
verify and revoke credentials
Credentials themselves
remain off-chain!
Using digital credentials to rent a car on Indy
Joelcreates a newDID for
speaking tothe DMV and writes it
to theledger
Joellooks up theDMV’s DID on
theledgerand gets theirendpoint
Using digital credentials to rent a car on Indy
Using digital credentials to rent a car on Indy
Joelcreates a newDID for
speaking toAlamo and writes itto
the ledger
Joellooks upAlamo’s DID on theirwebsite
Joellooks up Alamo’s DID on the
ledgerand gets theirendpoint
Using digital credentials to rent a car on Indy
Secure channel
Joelcreatesa secureconnection toAlamo and sends
his newly createdDID
Alamo sends Joela requestforthe can drive attribute of his digital driving licence
credential fromtheDMV
Using digital credentials to rent a car on Indy
Secure channel
Joelsends a proof whereheonly revealsthe can drive attributeof his digital
driving licence credential
Alamo sends through authorisation topick up
therentalcar
Alamo verifies the can drive attributeby comparing
thecredential's signature to theDMV’s public key
HLP Indy is an toolkit for running and interacting with ID
blockchains
indy-node
indy-sdk
…
Other chains
Decentralised Identity with HLP Indy and Corda
: ID wallet on Indy used for bank customer KYC on
Corda
Authenticate
individual
Authenticate
new customer
Provide
verifiable claim
Create account
on-ledger
Icon madeby Freepikfrom www.flaticon.com
Create account
on-ledger
Usersendspassportphotoand phototo
openaccount
Bankwritesdigitalidentity
claimtoIndy
UsersharesidentityclaimfromIndyto
authenticatewithanotherbank
BankA BankB Regulator
Report on
accounts
www.r3.com
Thank you
NewYork
11 West42nd Street, 8th Floor
New York, NY 10036
London
2 London Wall Place,
London, EC2Y 5AU
Singapore
80 Robinson Road, #09-04
Singapore, 068898

More Related Content

Similar to Decentralised Identity with HLP Indy and Corda (20)

PDF
Defi MOOC Fa21 - Decentralized Identity.pptx.pdf
ssuser00208b
 
PPTX
How digital identities will help realise the true potential of DeFi
OliviaJune1
 
PDF
InDITA - Understanding Self-Sovereign Identity
Kaliya "Identity Woman" Young
 
PDF
KYC using Blockchain
ijtsrd
 
PDF
Blockchain based Asset Registration & Management System
IRJET Journal
 
PPT
DevDay: Extending CorDapps with Self-Sovereign Identity: Technology Deepdive ...
R3
 
PPT
Cordacon 2018 - Cordentity - Hyperledger Indy + Corda
Vasiliy Suvorov
 
PDF
Identity and the quest for Self-Sovereign Identity - Daniel Hardman
SSIMeetup
 
PDF
Identity is Changing: The Rise of Self-Sovereign Identity Infrastructure usin...
Kaliya "Identity Woman" Young
 
PDF
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
IRJET Journal
 
PDF
Introduction to Self Sovereign Identity - IIW October 2019
Heather Vescent
 
PPTX
Self-Sovereign-Identity.pptx
SanketKulkarni94
 
PPTX
Blockchain Perspective - Internet of Memorable Things
Tim Lackey
 
PDF
Investigation of Blockchain Based Identity System for Privacy Preserving Univ...
ijtsrd
 
PDF
What is self-sovereign identity (SSI)?
Evernym
 
PDF
Blockchain R&D to Decentralized Identity Deployment
Anil John
 
PDF
Domains of Identity and Self-Sovereign Identity India talk
Kaliya "Identity Woman" Young
 
PPTX
The Future of Online Money: Creating Secure Payments Globally
Jonathan LeBlanc
 
PPTX
SSI, TBDex Overview
AlexLewin7
 
PDF
Hyperledger Indy Platform - Privacy, Security and Power for Digital Identity ...
Gokul Alex
 
Defi MOOC Fa21 - Decentralized Identity.pptx.pdf
ssuser00208b
 
How digital identities will help realise the true potential of DeFi
OliviaJune1
 
InDITA - Understanding Self-Sovereign Identity
Kaliya "Identity Woman" Young
 
KYC using Blockchain
ijtsrd
 
Blockchain based Asset Registration & Management System
IRJET Journal
 
DevDay: Extending CorDapps with Self-Sovereign Identity: Technology Deepdive ...
R3
 
Cordacon 2018 - Cordentity - Hyperledger Indy + Corda
Vasiliy Suvorov
 
Identity and the quest for Self-Sovereign Identity - Daniel Hardman
SSIMeetup
 
Identity is Changing: The Rise of Self-Sovereign Identity Infrastructure usin...
Kaliya "Identity Woman" Young
 
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
IRJET Journal
 
Introduction to Self Sovereign Identity - IIW October 2019
Heather Vescent
 
Self-Sovereign-Identity.pptx
SanketKulkarni94
 
Blockchain Perspective - Internet of Memorable Things
Tim Lackey
 
Investigation of Blockchain Based Identity System for Privacy Preserving Univ...
ijtsrd
 
What is self-sovereign identity (SSI)?
Evernym
 
Blockchain R&D to Decentralized Identity Deployment
Anil John
 
Domains of Identity and Self-Sovereign Identity India talk
Kaliya "Identity Woman" Young
 
The Future of Online Money: Creating Secure Payments Globally
Jonathan LeBlanc
 
SSI, TBDex Overview
AlexLewin7
 
Hyperledger Indy Platform - Privacy, Security and Power for Digital Identity ...
Gokul Alex
 

Recently uploaded (20)

PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Per Axbom: The spectacular lies of maps
Nexer Digital
 
PPTX
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Per Axbom: The spectacular lies of maps
Nexer Digital
 
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Ad

Decentralised Identity with HLP Indy and Corda

  • 1. Decentralized Digital Identity on the Blockchain JOEL DUDLEY, CO-MAINTAINER, CORDA
  • 2. There is an identity problem today
  • 3. We need digital credentials { “properties”: { “id”: “I1234562”, “expiry”: “08-31-2018”, “first_name”: “Joel”, “last_name”: “Dudley”, “date_of_birth”: “01/01/1990” }, “owner”: “Joel Dudley”, “owner_signature”: “E731EB6B61F1010ED7E7C787F”, “issuer”: “California DMV”, “issuer_signature”: “84102C2A86198312D86551A67” }
  • 4. Using digital credentials to rent a car 1. Create keypair 3. Use attestations 1.Signature proving Iown pubkey x 2.Part of DMV-signed credential proving Ihave driving licence “OK, you can go pick upyour rental car” Icon madeby Freepikfrom www.flaticon.com
  • 5. { “properties”: { “id”: “I1234562”, “expiry”: “08-31-2018”, “first_name”: “Joel”, “last_name”: “Dudley”, “date_of_birth”: “01/01/1990” }, “owner”: “Joel Dudley”, “owner_signature”: “E731EB6B61F1010ED7E7C787F”, “issuer”: “California DMV”, “issuer_signature”: “84102C2A86198312D86551A67” } Problem: how can we link the owner and issuer to their public keys?
  • 6. Icon madeby Freepikfrom www.flaticon.com Certificate authorities
  • 7. HLP Indy uses blockchain to create a decentralised identity system Anyone can perform transactions to create immutable digital IDs
  • 8. Digital identifier (DID) and DID document example did:example:123456789abcdefghi { “@context”: “https://w3id.org/did/v1”, “id”: “did:example:123456789abcdefghi”, “publicKey”: [{ “id”: “did:example:123456789abcdefghi#keys-1”, “type”: “RSAVerificationKey2018”, “owner”: “did:example:123456789abcdefghi”, “publicKeyPem”: “-----BEGIN PUBLIC KEY…END PUBLIC KEY-----rn” }], “authentication”: [{ “type”: “RsaSignatureAuthentication2018”, “publicKey”: “did:example:123456789abcdefghi#keys-1” }], “service”: [{ “type”: “ExampleService”, “serviceEndpoint”: “https://example.com/endpoint/8377464” }] } Based on Self-SovereignIdentity with HyperledgerIndy,Calvin Cheng,FOSSASIA 2018
  • 9. HLP Indy uses blockchain to create a decentralised identity system Anyone can perform transactions to create immutable digital IDs Allowing anyone to: 1. Issue credentials 2. Verify credentials 3. Revoke credentials
  • 10. Verifiable claim example { “@context”: “https://w3id.org/security/v1”, “id”: “http://example.gov/credentials/3732”, “type”: [“Credential”, “ProofOfAgeCredential”], “issuer”: “https://dmv.example.gov”, “issued”: “https://dmv.example.gov”, “claim”: { “id”: “did:example:ebfeb1f712ebc6f1c276e12ec21”, “ageOver”: 21 }, “revocation”: { “id”: “http://example.gov/revocations/738”, “type”: “SimpleRevocation2017” }, “signature”: { “type”: “LinkedDataSignature2015”, “created”: “2016-06-18T21:19:10Z”, “creator”: “https://example.com/jdoe/keys/1”, “domain”: “json-ld.org”, “nonce”: “598c63d6”, “signatureValue”: “BavEll0/I1zpYw8XNi1bgVg/sCne…” } } Based on Self-SovereignIdentity with HyperledgerIndy,Calvin Cheng,FOSSASIA 2018
  • 11. HLP Indy uses blockchain to create a decentralised identity system Anyone can perform transactions to create immutable digital IDs Allowing anyone to issue, verify and revoke credentials Credentials themselves remain off-chain!
  • 12. Using digital credentials to rent a car on Indy Joelcreates a newDID for speaking tothe DMV and writes it to theledger Joellooks up theDMV’s DID on theledgerand gets theirendpoint
  • 13. Using digital credentials to rent a car on Indy
  • 14. Using digital credentials to rent a car on Indy Joelcreates a newDID for speaking toAlamo and writes itto the ledger Joellooks upAlamo’s DID on theirwebsite Joellooks up Alamo’s DID on the ledgerand gets theirendpoint
  • 15. Using digital credentials to rent a car on Indy Secure channel Joelcreatesa secureconnection toAlamo and sends his newly createdDID Alamo sends Joela requestforthe can drive attribute of his digital driving licence credential fromtheDMV
  • 16. Using digital credentials to rent a car on Indy Secure channel Joelsends a proof whereheonly revealsthe can drive attributeof his digital driving licence credential Alamo sends through authorisation topick up therentalcar Alamo verifies the can drive attributeby comparing thecredential's signature to theDMV’s public key
  • 17. HLP Indy is an toolkit for running and interacting with ID blockchains indy-node indy-sdk … Other chains
  • 19. : ID wallet on Indy used for bank customer KYC on Corda Authenticate individual Authenticate new customer Provide verifiable claim Create account on-ledger Icon madeby Freepikfrom www.flaticon.com Create account on-ledger Usersendspassportphotoand phototo openaccount Bankwritesdigitalidentity claimtoIndy UsersharesidentityclaimfromIndyto authenticatewithanotherbank BankA BankB Regulator Report on accounts
  • 20. www.r3.com Thank you NewYork 11 West42nd Street, 8th Floor New York, NY 10036 London 2 London Wall Place, London, EC2Y 5AU Singapore 80 Robinson Road, #09-04 Singapore, 068898

Editor's Notes

  • #2: http://getwallpapers.com/collection/rene-magritte-wallpaper
  • #3: This is a cartoon from the New Yorker from 1993. A dog is browsing the internet, turns to another dog, and says, “On the internet, nobody knows you’re a dog.” That was 25 years ago, and we still haven’t solved the problem. Identity on the internet is a litany of failures: Fragmented: Hundreds of logins split across hundreds of databases Manual: Old-fashioned out-of-band processes (phone calls and meetings to set up online banking services…) Blind trust (“Are you over 18?”) Out of your control
  • #4: What we need are digital credentials. The digital equivalent of passports, home-ownership documents, address information that can be shown to prove identity without relinquishing our information to some external database. Here’s an example of what a digital driver’s licence could look like. A simple data object, signed by the issuer (to prove integrity of the information) and the owner (to prove ownership of the information).
  • #5: https://en.wikipedia.org/wiki/California_Department_of_Motor_Vehicles https://en.wikipedia.org/wiki/Alamo_Rent_a_Car
  • #6: We need to create digital credentials – the digital equivalent of a passport
  • #7: One approach to linking identities to public keys is to use a few hundred certificate authorities. These are parties that are trusted to use standard KYC processes to link identities to public keys. However, obtaining a certificate from a certificate authority is very slow and expensive, restricted to large companies. If one of these certificate authorities makes a mistake, is hacked, or goes out of business – especially if they’re one of the top-level, high-powered certificate authorities known as root certificate authorities. We don’t want a small number of digital identities restricted to large companies and issued by centralized parties. We want identity for all, at low cost, and safe from breaches. Let us introduce Hyperledger Indy.
  • #18: Hyperledger Indy is a toolkit for spinning up, managing and interacting with Sovrin-like blockchains. “This code is independent from but commonly associated with Sovrin. Sovrin is a public utility for identity, built on top of this codebase. People who install sovrin packages (e.g., with sudo apt install sovrin) get prepackaged genesis transactions that integrate with an Indy validator pool using Sovrin's governance and trust framework. However, it is possible to use Indy Node with a different network, using whatever conventions a community chooses.” Indy design choices: Nodes: Consensus with plenum BFT (specifically Redundant BFT) Client-node and node-node network communication with Curve ZMQ Ledger: Replicated across all nodes, backed by merkle tree State: Ethereum’s Patrica trie Storage: LevelDB as key-value storage for ledger and state AnonCred: Anonymous credentials with type-3 revocation (prove identity satisfy certain properties in uncorrelated way without revealing other identity details)
  • #20: Gemalto Trust ID Network is a a decentralized digital ID platform allowing banks to simplify customer identity management and streamline the onboarding process of new customers while enabling end users to be in total control of their identity. Each user gets a mobile wallet that uses Indy to manage digital identities and claims, and allows Corda nodes to interact with these digital identities and claims. Workflow: Scan passport -> take selfie -> goes to the Gemalto server (check passport security + match selfie to photo automatically) -> creates passport credential with verifiable claims and associated DID -> you can now share these credentials Similar process for email address (certified by clicking an email link) and phone (certified by receiving a text)