14
uPort universal identity platform Christian Lundkvist Rouven Heck

uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

uPortuniversal identity platform

Christian Lundkvist Rouven Heck

Page 2: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Current Challenges!

Key management

User experience for ‘average Joe’

dApps via mobile

Identity and data ownership

Page 3: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Provide secure key management for everyday users

Provide a persistent identifier

Link attributes and attestations to identifier

1

2

3

Design Goals

Build a form of universal identification that is self-sovereign, reputation-based, and easy-to-use.

Page 4: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

3. Smartphone You scan your fingerprint, and your message

2. Uport mobile application You open your uport app and scan the QR code

1. Real Life You decide you want to sign up for a new trading account, so you head to the site and click “Sign Up”

Mobile Device

deviceKey stored in secure enclave

Controller Contract

Accessed by device key

Relays transactions to Proxy

Contains logic to do multi-sig key recovery

Proxy Contract

Persistent uPort identifier

Address seen asmsg.sender

Application Contract

Receives transaction from msg.sender

🔑

Ethereum blockchain

Design Overview

Page 5: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

DEMO

Page 6: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Mobile dApp integration

Page 7: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Social Recovery

Page 8: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Social Recovery

Page 9: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Vision and Roadmap

Privacy Multiple personas, Selective disclosure,…

ProtectionRecovery options, Hierarchical key access,

Verified contracts…

ExperienceSmart guidance, Automated signatures,…

BusinessIntegration, Entity identities,…

Page 10: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Simple developer integration

• Use standard web3 paradigm • Drop in uport web3 provider

• getAccounts - triggers uPort Connect • sendTransaction - triggers transaction signing

• Generates QR codes and interfacing with mobile • Further customize for deeper integration

Page 11: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Find us hereGitHub:

https://github.com/ConsenSys/uport-registry

https://github.com/ConsenSys/uport-lib

https://github.com/ConsenSys/uport-persona

• Whitepaper (work in progress) https://uport.me/whitepaper.pdf

• Developer Beta - mobile app (Access code: devcon2) iOS: https://uport.me/devbetaAndroid (soon): [email protected]

• Gitter https://gitter.im/ConsenSys/uport-lib

talk to us @ DevCon • Christian @ChrisLundkvist • Pelle @PelleB • Greg @gbugyis • Joel @oed_earth • Michael @somemikesena • Thessy @ThessyMehrain • Andres @ajunge_m • Jeff @jeffscottward • Zach @zachferland • Zac @VoltzRoad • Aldi @AGjoka • Rouven @rh7

[email protected] [email protected]

Page 12: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Backup

Page 13: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

Social Recovery

Page 14: uport devcon2 draft3 - EthFansupyun-assets.ethfans.org/uploads/doc/file/1a176e... · 3. Smartphone You scan your fingerprint, and your message 2. Uport mobile application You open

3. Smartphone You scan your fingerprint, and your message

2. Uport mobile application You open your uport app and scan the QR code

1. Real Life You decide you want to sign up for a new trading account, so you head to the site and click “Sign Up” Registry Contract

ties off-chain attributes to the identifier

Mobile Device

deviceKey stored in secure enclave

Controller Contract

Accessed by device key

Relays transactions to Proxy

Contains logic to do key rotation and recovery

Proxy Contract

Persistent uPort identifier

Address seen asmsg.sender

Registry Contract

Maps Uport identifier to IPFS hash

Cryptographically binds Uport identifier to profile data

Permits selective disclosure of IPFS data

🔑

Ethereum blockchain

IPFS

Data record can contain profile data, attestations, keys for other services, etc.

Follows data spec of Blockstack Profiles - signed JSON Web Tokens, schema.org