際際滷

際際滷Share a Scribd company logo
ERC: Identity
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
Fabian Vogelsteller
Ethereum Wallet
Mist Browser
web3.js
Flat File CMS
ERC-20: Token StandardT
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Claim 1
Physical
Claim 2
New Claim 3
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Its all claims!
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
What is identity?
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
Mastercoin
Counterparty
DigiX
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity
Keys Execution Claims
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity Keys
Can be actors (logins, proofs, access)
Can make transactions
Can sign documents
Can sign claims
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity Execution
Act as your identity (execute contracts, voting, ...)
Add claims to other identities and contracts
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity
Can be added by anyone
Need approval
Can't be changed without your permission, but removed
Contain issuer signature
Contain claim reference (hash, bit-mask)

Claims
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity Claims
{
uint256 claimType;
uint256 scheme;
address issuer;
bytes signature; // holder.address + claimType + claim
bytes data;
string uri;
}
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity Off-Chain Usage
1. Random String
2. Random String +
Identity Address
-> signed
3. getClaim()
4. Check claim
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity On-Chain Usage
2. getClaim()
1. superCoolFunc()
3. Check claim
(check claim
signature get key)
4. Check if claim issuer
still holds key
from signature
Issuer
5. continue execution of
superCoolFunc()
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity Claim Checking
{
uint256 claimType;
address issuer;
uint256 signatureType;
bytes signature; // holder.address + claimType + claim
bytes claim;
string uri;
}
1. Check which signature type is used
2. Build the signed hash
keccak256(address holder_address + uint256 _claimType + bytes _claim)
3. Recover address k from signature
4. Check if issuer identity contract still holds address k
5.
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity
ERC 725 Identity
ERC 735 Claim Holder
https://erc725alliance.org
source: https://erc725.originprotocol.com/#/
source: https://github.com/nick/identity
source: https://edas.intech-lab.com
Fabian Vogelsteller, web3.js Developer at Ethereum, Founder LUKSO
@feindura
lukso.io
ERC: Identity
https://github.com/ethereum/EIPs/issues/735
https://github.com/ethereum/EIPs/issues/725
Contribute!

More Related Content

ERC 725 Public On-Chain Identity