The Social Impact of “being”

To be or not to be is not a question nowadays. To the normal citizen, you have your birth certificate that enables you to have an identity, a driver’s license, a passport and voilá: You are.

Even that digitally seems quite common and straightforward. Most of the western citizens have not one but many digital identities with them: a Google account, a Microsoft account, a Facebook account, etc. 

This is not the case for a large segment of mankind: A group that has no identity, knows little or nothing about their roots and cannot provide any proof of them. By not being able to prove their identity, they cannot open a bank account, access healthcare or enroll in university. They cannot have a “normal” life. Unfortunately, for this group, it is easier to buy a pizza using Bitcoin than to prove their names, origins and history.

This happens because we lack a common ground for identities. Governments have strong agreements on how each of them will “understand” documents issued by other nations. Internal conflicts, commercial disputes or other political situations make it hard for some countries to be part of such agreements and they end up being left outside. In some cases, those excluded countries are the ones facing issues that force their populations to migrate. Without an identifying document recognized by their host countries, these migrants become “nobodies” in their new home.

Self-Sovereign Identity, Interoperability and Trust

Hyperledger Indy, a distributed ledger built for the purpose of decentralized identity, will be a powerful tool to overcome this issue. It will do so by being a carrier of trust.

Distributed Ledger Technology (a “blockchain”), in an identity management scenario, enables everyone in the network to have the same source of truth about which credentials are valid and who attested to the validity of the data inside the credential, without revealing the actual data.

Through the infrastructure of a blockchain, an identity verifying party does not need to check the validity of the actual data in the provided proof. Instead, the verifier  can use the blockchain to check the validity of the attestation and attesting party to determine whether to validate the proof.

For example, when an identity owner presents a proof of his or her date of birth, rather than actually checking the truth of the date of birth itself, the verifying party will validate the government’s signature who issued and attested to this credential to then decide whether he trusts the government’s assessment about the accuracy of the data.

Hence, the validation of a proof is based on the verifier’s judgement of the reliability of the attestor.

But trust is not the only issue we face. Most of the identity credentials issued by an institution are particular to that institution. There’s no standard on those schemas. Through Indy and standards such as Verifiable Credentials (whose Data Model 1.0 was recently published as a W3C recommendation) interoperability between institutions and different identity management systems might be achieved.

Using this technology, Non-Governmental Organizations (NGOs) can help those “invisible people” gain access to services and expedite the humanitarian process. In the future, it may even enable NGOs to  issue some sort of universally verifiable digital identity credentials to refugees. Credentials that refugee host countries could “understand” and accept because they use the same interoperable digital identity standards and trust the NGO that issued the credentials. This would allow refugees to fully access services in their host countries. They would be able to be included in society, open bank accounts, rent houses and be productive as any other citizen. 

The key is interoperability and the decentralization of trust.

Hyperledger Indy

Hyperledger Indy is still quite young with a lot to be discussed and done. However, it  has an engaged community around it, researching, asking questions and working towards the maturity of the ecosystem. The main tool to start using Indy is Indy-SDK. An SDK (Software Development Kit) is a “kit” that brings all-you-need tools in one library.

Today the solution still relies solely on said SDK. That can be tricky as it carries a lot of heavy-weight assumptions like using ZeroMQ, which browsers are not compatible with because of RAW TCP usage, to communicate with the node. That usually requires more recent mobile devices to work. Also, being a kind of all-in-one library it carries functionalities not always needed to everyone that uses it. 

To be the solution for the problem that plagues 1.2 billion people around the world who do not have an identity, the current technology still needs improvements. It has to be easier to use on basic phones, easier to integrate and easier to develop. It still requires users to have powerful smartphones to hold wallets. It’s not possible to run on a browser. And, we are challenged with little and sometimes confusing documentation on the technical side.

There are a lot of initiatives tackling those issues. Hyperledger Aries, which is making it more modular, Indy-crypto, indy-vcx and other projects are working to make this tech more democratic, transparent and easy to use. 

A lot of independent programmers are also experimenting with it, successfully creating, for example, a nodejs indy request that made a “sdkless” call to the node. I would personally love to see an HTTP with encrypted body request work over an Indy node and other “think outside the box” kind of tools.

Overcoming those issues will not be easy, but when we, the entire digital identity community, position ourselves in a united front to fight these problems, there’s a huge chance to succeed.