A Complete List of uPort’s Protocols, Libraries and Solutions

Want a complete list of uPort’s protocols, libraries and solutions? Congratulations! You’ve come to the right place.

A decentralized identity protocol requires many, many layers to be complete. Hence, this article serves as brief introduction to the range of uPort offerings.

Below you will find a list of our specifications, smart contracts, Javascript libraries and even our AWS lambda functions we use to fund smart contract transaction signing in mid-flight i.e. MetaTransactions.

If you have any questions, please join the uPort Community Channel, create an issue on Github, send us Tweet at @uport_me or contact us directly via email.

decentralize all the things!

The Living “Breathing” White Paper

The industry standard is to publish a white paper. Assess the current centralized and decentralized landscape. Describe the proposed protocol from a very high level. Start buidling.

🚢hodl. buidl. sihp! 🏗

However, the uPort protocol specification is constantly improving and evolving, which is why we removed uPort’s original white paper from the website, in favor of a “living and breathing” specification document.

uPort is nimble and ready to mingle… with other decentralized protocols!

As a developer, if you want to understand how uPort utilizes the Ethereum blockchain and other decentralized solutions, like the InterPlanetary File System (IPFS) the best place to review is our regularly updated specifications.

Again, if you have questions, please join the uPort Community Channel or add an issue to the GitHub repo.

Decentralized Technology — The Foundation

To build decentralized identity requires building atop decentralized solutions. Below is the list of specifications, libraries and protocols built by the uPort team, utilizing decentralized technologies like the Ethereum blockchain and InterPlanetary File System (IPFS) to establish scalable decentralized identity.

Decentralized Identities (DIDs)

uPort Decentralized Identity — The “smart contract” Era

IdentityManager/Proxy Smart Contracts

uPort Decentralized Identity — The “ethr-did” Era

At the time of this writing (June 2018) the underlying uPort decentralized identity protocol is undergoing a major update.

The recently published ethr-did specification and libraries forgo the requirement for smart contracts as the on-chain anchor used in our original decentralized identity protocol specification. Using the new ethr-did protocol, creating decentralized identities is an order of magnitudes cheaper.

Now any Ethereum account (public/private key-pair) can now be considered a valid decentralized identity using the new ethr-did decentralized identity protocol at outlined in the ERC 1056 specification. It’s a big deal. BIG!

Ethereum Decentralized Identity (ethr-did)

Ethereum Decentralized Identity Registry

JSON Web Tokens (JWT) & Resolvers

uPort and DID compliant JWT

Generic DID Resolver

Decentralized Identity Resolver

DID resolver for uPort identities

DID resolver for Ethereum Addresses

Javascript Libraries

Backend Library

Frontend Library

Modular uPort Library

Minimal Javascript Implementation

Backend Services

Push Notification Service

Private Network Support

Event Hub Service

Creator of Identities

Transaction Funding Service

The Summary

I like to describe decentralized identity as a digital verification protocol that utilizes Web 3.0 technologies to provide sybil resistant mechanisms for decentralized Internet infrastructure, built atop cryptographic primitives.

The Decentralized Identity Foundation describes DIDs as “Decentralized identities are anchored by blockchain IDs linked to zero-trust datastores that are universally discoverable”, which is also a fantastic elevator pitch.

But no matter how you break it down, building a decentralized identity platform requires crafting and maintaining a lot different building blocks, across multiple technology stacks, both centralized and decentralized.

Whether you want to learn more, contribute to Open Source code, get help from seasoned developers or simply join the decentralized identity discussion please join us the uPort Community Channel 😃today!