At the Ethereum Enterprise Alliance meetup in October 2017, I had the chance to listen to amazing speakers talk about exciting progressions in the space of blockchain technology. One such speaker was Rouven Heck, Project Lead at Consensys, who spoke about their flagship identity management product, uPort.
uPort is a user-owned identity management solution built on the Ethereum blockchain. uPort, at its core, is simply a user friendly interface for your identity on the blockchain.
Why do we need this?
Across a variety of sites, corporations are building large reserves of digital information about individuals. Facebook for instance, with its sign in feature, is slowly becoming a users key to the internet. By entrusting one organisation with information about approximately 2.13 billion users, we create a large honeypot for attackers to concentrate their efforts towards. Inherently, the blockchain solves this problem by storing information on individual devices making it economically unattractive to devote man hours too. Now, each user is entrusted with handling and protecting their own data.
For organisations that require a KYC verification, uPort can provide a very elegant solution. Typically a KYC verification process will require some combination of address proof, passport, drivers license etc.. We can use uPort to make official, digital versions of these documents through transactions on the blockchain. Consider two identities on the blockchain : my individual uPort identity and the DMV’s uPort identity. The DMV identity has the ability to digitally sign a transaction that uploads some metadata to the blockchain that proves a digital file to be official (see checksum) and connected with an individual (see public key). In the future, corporations asking for official and valid documentation will only need to look up the DMV’s transaction on the blockchain and verify that the digital document they are looking at is the same one that the DMV uploaded to the blockchain.
How does it work?
The concept of signing is clearly illustrated in these screenshots of the uPort demo app.
I, as a user, am attempting to buy shares on the demo uPort app. To do so, I must login with some relevant information. The login request routes me back to the uPort app that stores my information locally and asks me to provide it to the demo app. By clicking continue, I am given access and can buy shares. This prompts another transaction which when approved publishes a transaction to the blockchain, in an immutable fashion, cementing my ownership of the 10 shares. I sign this with my private key (password) that is locally managed for me by the uPort application. uPort also provides me the capability of linking my ether wallet address so that I can pay for these shares in ether!
uPort also recently registered a citizen from Zug, Switzerland on the Ethereum blockchain. Working with the Zug government, the goal is to utilize uPort to digitally sign documents, pay parking fees and to test an e-voting system in Spring 2018.
One of the major UX issues for apps hosted on the blockchain is the delicate nature of the private key. If you lose the private key and you are locked out of the system. uPort has paid special attention to this problem by working on a password recovery feature. It decreases security slightly, but it’s important to make these tradeoffs when making your application user friendly. With the recovery feature, uPort allows its users to identify 3 members in their network who can verify your account. For instance, when purchasing a new phone, you simply have to publish your new device’s public key to these members and have 2 of them verify this as being true. Once completed, uPort will consider you verified and restore access to your uPort account.
uPort is also actively working towards developing an ecosystem that encourages developers to integrate their applications. Without a thriving ecosystem of compatible applications , uPort loses a lot of value. uPorts AppManager (see here) allows developers to create identities for their applications within the uPort ecosystem that empowers them to interact with users on the blockchain.
With Facebook sign in essentially acting as your key to the internet, I believe uPort can be your key to the blockchain!