Digital Identity - Blockchain
Digital Identity - Blockchain
1 Introduction
Individuals identify themselves using various identity assets such as their name,
national identity number and passport number. Identity assets are recorded
in physical documents which are attested by central authorities. In the world
Mehmet Aydar
AI Enablement Department, Huawei Turkey Research and Development Center, Istanbul,
Turkey
E-mail: maydar@kent.edu
Serkan Ayvaz
Department of Software Engineering, Bahcesehir University, Istanbul, Turkey
E-mail: serkan.ayvaz@eng.bau.edu.tr
Salih Cemil Çetin
AI Enablement Department, Huawei Turkey Research and Development Center, Istanbul,
Turkey
E-mail: salihcemil@gmail.com
2 Mehmet Aydar et al.
of the internet, identity owners are required to provide their identity assets
to institutions in order to verify their identities. Traditionally, institutions
keep these sensitive information in centralized data silos. This traditional way
of identity management methods are prone to data breaches, identity theft
and fraud. Moreover, these methods have inefficiencies in terms of security,
usability, privacy and globalization. As a matter of the fact, the digital trans-
formation has further emphasized the need to move away from intermediary
and provider-controlled identity management models toward user-controlled
digital identity.
The advent of Blockchain technology has created an opportunity to trans-
form how relationships between people and institutions are established and
maintained. Blockchain technology can deliver secure solutions by integrating
trust in the network itself. As for digital identity management, Blockchain tech-
nology can enable identity owners to have sovereignty of their identity based
personal records, control access to their records and allow identity owners to
share minimum amount of information while ensuring data integrity and trust.
This study focuses on using Blockchain technology for identity management
systems.
The paper is organized as follows: Section 2 expresses the motivation of
the study by describing current problems in traditional identity management
methods. Section 3 presents Blockchain technology, the main concepts used in
Blockchain based identity management systems, and explains why the tech-
nology is suitable for a robust digital identity management system. In section
4, we describe the proposed solution in details. Section 5 reviews existing so-
lutions in the field. Then, it is followed by conclusion.
2.1 Usability
various login credentials, and giving out private information for recovery of an
account in case of forgetting the password. For remote authentication, identity
owners are in most cases obliged to answer security questions containing their
personal and sensitive information for verification of their identity. As a result,
users pay a price by spending a great deal of time proving their identity, and
risking their privacy by providing private identity information. A survey report
by Centrify in 2014 indicated that even small businesses with 500 employees
approximately lose $200,000 annually in productivity due to the time spent
on password management [Centrify, 2014].
2.2 Privacy
2.3 Security
2.4 Globalization
From global perspective, identity verification and record attestation are chal-
lenging tasks across borders due to the institutional and international barriers.
When a person travels to a different country, identity verification often starts
from scratch and boils down to a manual process of verifying his/her physi-
cal documents (i.e., passports.) In addition, verification of credentials such as
4 Mehmet Aydar et al.
education certificates, diplomas and credit reports is often slow. Also, discon-
nected processes requires involvement of multiple third parties for attestation.
For instance, individuals who have earned a particular college degree in India
have to go through trusted third parties, costing them a significant amount of
money and time in order to prove their degrees in a U.S. governmental office.
3.1 Blockchain
tampered block. Therefore, it invalidates all the following blocks in the chain
due to the hash linking feature of the ledger. This requires the re-calculation
of a different Nonce value for all the blocks including and after the tampered
block in the chain for the current peer. In order to verify the fake transaction,
aforementioned process must also be done for the majority of the peers in
the network. It is computationally impractical in a widely adapted Blockchain
network. Thereby, the ledger data stored in a Blockchain network is typically
considered immutable.
“tubitak” 8c9b3371a4cae382bad1d752000902f871f8f78b
1a2b62e4fe3ac47f40a2b742
“Tubitak” 50ae8005208300584bd519ecfca19a083ad2831
930668cee1b594bc8bb1b353c
“The Scientific and Technologi-
cal Research Council of Turkey e18dd11e01d89410631d22829ea7786c6422878
(TUBITAK)” 5669d6a5f665e33fa348f3fc2
Bob's message to
Hash 6DC96A6E25092BF7 Encrypt
Alice
6DC96A6E25092BF7
Bob encrypts the hash of original message with his private key. This action is
called signing. Bob sends original message and signed message to Alice. Alice
applies the same hash function to the original message and decrypts signed
message using Bob’s public key. Alice then compares these two results. If they
are equal, then it means that the message was indeed came from Bob and
was not tampered. In Blockchain, digital signatures are utilized in verifying
authenticity of digitally signed transactions. For instance, in Bitcoin system,
only transactions initiated by the asset owner itself are verified, which means
that asset owners can only spend the assets they own. This is ensured via the
concept of digital signatures.
– Identity owners have full control over the data they own.
– Integrity, security and privacy of owner’s identity are ensured by the sys-
tem, a central authority is not required for trust.
– Provides full portability of the data. This means that identity owners can
use their identity data in where they want (for instance in accessing an
online service.)
Towards a Blockchain based digital identity verification 7
Credentials are proof for identity owners to assert their license or qualification
on certain subjects. They are widely used in individuals’ daily lives. Driver’s
licenses, university diplomas and travel passports are examples of the creden-
tials. Verifiable credentials are machine readable, privacy respecting, crypto-
graphically secure digital credentials of identity owners. Verifiable credentials
support self-sovereign identity, such that identity owners accumulate creden-
tials into an identity account and use the credentials to prove who they are.
Verifiable credentials usually involve a third-party attestation, but they
can also be self-attested. Attestation is done by utilizing the concept of digital
signatures. An attester (issuer) having a DID creates a verifiable credential by
signing identity owner’s records using its private key. Then, the credential is
cryptographically verified by a verifier using the attester’s public key. Verifiers
rely on the credibility of issuers when issuing the trust on the credentials.
4 Proposed solution
In this section, we describe the proposed framework with sample use cases.
The framework enables organizations to issue digitally signed documents to
identity owners. The signed documents are in the form of verifiable creden-
tials. Verifying parties are able to verify that the documents are original, not
mutated and signed by the issuers with the help of digital signatures. Figure
3 shows an example use case regarding a patient’s medical records involving
multiple medical institutions. In the use case, a patient named Alice was previ-
ously treated in hospitals A and B, and presents her previous medical records
from these institutions at hospital C. Hospitals A and B issue Alice’s medical
records to her in the form of verifiable credentials. Alice gathers these docu-
ments in her secure digital wallet, and presents to her physician at hospital
C. Knowing hospital A and B’s public keys, hospital C is able to verify that
Alice medical records are indeed originally issued by hospital A and hospital
B and are not mutated.
Figure 4 shows an example use case for presenting documents and creden-
tials to a new employer in order to start a new job. In the example, Bob’s
new company requires Bob to present proof of educational degree, proof of
former employment, lab results from hospital, proof of address details and
documents regarding background check. Bob gathers the documents from re-
lated institutions online in the form of verifiable credentials and keeps them in
his digital wallet, and Bob’s new company verifies the authenticity of the doc-
uments once presented. The process saves time, enables issuing and verifying
documents online and prevents counterfeiting of records.
Figure 5 shows an example use case regarding a loan application. In the use
case, a loan applicant Alice applies for a loan with Bank B. Alice is a current
customer of Bank A, which is trusted by Bank B. In addition, Alice owns a
land and regarding information are kept by government departments. However,
Alice has never worked with Bank B, previously. Therefore, Bank B does not
have any records about Alice. As part of KYC regulations, Bank B is required
10 Mehmet Aydar et al.
to know Alice in order to serve her. Using the proposed framework, Alice
authenticates herself with Bank B. Then, Bank B requests Alice’s information
from related organizations online, and she receives a notification regarding
the request. Alice gives her consent for her information to be shared with
Bank B in the form of verifiable credentials. Bank B processes Alice loan
application based on the gathered information. The whole process happens
online in minutes without Alice physically having go to the bank.
data are not stored as the encrypted data on Blockchain might become vulner-
able to advanced quantum machines in the future [Tessler and Byrnes, 2017].
Keeping sensitive private data on the ledger carries a risk that if the private
keys of the identity owner are compromised, the identity owner’s data can
be revealed to public. Thereby, in our system Blockchain is mainly utilized
for searching decentralized identifiers and identity owners. It only stores the
consent proof of data sharing between the identity owners and the revocation
registry. Since the proofs of data are stored on the Blockchain rather than the
identity data themselves, the scalability is not an operational challenge.
The Blockchain network in our system utilizes Plenum Byzantine Fault Tol-
erance [hyp, 2016] consensus mechanism that is implemented by Hyperledger
Indy. Plenum is developed based on the Redundant Byzantine Fault Toler-
ance (RBFT) algorithm [Aublin et al., 2013]. The main idea of RBFT is that
it enables running multiple instances of the Byzantine Fault Tolerance (BFT)
[Lamport et al., 2019] protocol on different machines concurrently. One of the
instances is promoted to be the master node, which has the authority to exe-
cute orders. The other instance(s) in the system maintain a replica of the ledger
and can order requests. However, the updates to the ledger can only be exe-
cuted by the master node. All backup instances track and compare their per-
formances against the master instance. If the performance of master instance
with regards to latency and throughput reduces below an acceptable threshold,
the master is replaced by another backup instance [Aublin et al., 2013].
Compared to proof-of-work (PoW) [Vukolić, 2015], the RBFT based con-
sensus mechanism performs better in terms throughput and speed. Due to
nature of BFT algorithms, the time to reach consensus in RBFT increases
with the size of the nodes in network. Although our consensus mechanism is
not as scalable as Pow, its scalability is sufficient for a permissioned Blockchain
network. The only major drawback of RBFT consensus method is the require-
ment that all nodes in the network must be connected and known by all
other nodes. This introduces potential centrality to the network as the iden-
tities to the members of the network must be provided by a trusted party
[Vukolić, 2015]. However, this is not a disadvantage in our case as the pro-
posed system is based on a permissioned Blockchain network, in which the
participants of the identity management system are known to the identity
issuers.
Bank
DID
Public Key DDO Public Key Pairwise DIDb Public Key DID
DDO
End Points End Points
Private Key Meta Data Meta Data
University
Telco
encryption
Ledger
User's SSI
Fig. 6 A demonstration of how self-sovereign identity is stored on user device and pairwise
decentralized identifiers.
SSI consists of multiple decentralized identifiers (DID), one for each relation
the identity owner has with other identity owners. The advantage of using
different DIDs for each relation is that in case the keys from a particular DID
are compromised, the other DIDs of the user stay protected. Under identity
owner’s control, each DID is globally unique and includes a cryptographically
verifiable PKI (public, private key pair). Each DID resolves to a DID doc-
ument, a DID descriptor object (DDO) which is stored on the Blockchain.
A DDO includes the public key associated with the corresponding DID and
metadata needed to prove ownership the corresponding DID, and endpoints
of the DID objects to initiate trusted peer interactions between the ledger
entities.
The details of cryptographic key pairs (public and encrypted private keys)
of DIDs that belong to the user’s self-sovereign identity are stored on user’s
devices, such as mobile phones. While public keys are stored in non-encrypted
form, corresponding private keys are stored in encrypted form. A private key
is encrypted in a way such that it can only be decrypted using a biometric
signature of the identity owner, as fingerprint, facial feature, an iris or a retina.
Encrypting private keys provide multi-factor and identity owner-specific au-
thentication in order to be allowed access to the identity details. Figure 6
shows an example of how self-sovereign identity is stored on a user device and
pairwise decentralized identifiers in the system.
14 Mehmet Aydar et al.
User Verifier
User's
DID Public Key Encrypt
1001010110001001 1001010110001001
Public Key
Private Key
Decrypt
Ledger
party credential which is generally issued and signed by a third party (i.e.,
attestation and notarization services.)
Credentials data can be in the form of free-text, graphic or pre-defined
credential definition (schema). Our system encourages identity owners and
third-party credential issuers to use a pre-defined credential definition in or-
der to make the content of credentials machine readable. Data schemas are
important for defining and making credentials machine readable. Our system
allows schemas to be published on the ledger. By making use of RDF and
ontologies, a great deal of already defined schemas can be utilized such as
ontologies regarding personal data, medical data and university diplomas.
For a credential to be issued by third parties (issuers), issuers first need
to authenticate identity owners. Once authenticated, issuer picks an appro-
priate credential definition, constructs and signs the record with its private
key, and delivers the signed record to identity owner. As an example, by using
our system, driver’s licenses can be issued digitally in the form of verifiable
credentials. For this, a government department needs to publish a credential
definition for driving licenses onto the ledger. The credential definition contains
references to attribute names and types from credential schema, which holds
information such as the driver name, license number, license issue and expi-
ration dates and license type. A license authority receives the license schema
from the ledger, fills out driver’s information accordingly, and cryptograph-
ically signs the form, which generates a digital version of a driving license
in the form of verifiable credentials. As a result, the license owner keeps the
digital credential on his/her devices. Authorities are able to verify that the
driving license is owned by the driver, was signed by a legitimate license au-
thority and is valid. Credential definitions stored in the ledger are indexed
and made discoverable. This system enables users to identify the authorities
or organizations, which issue credential definitions.
Verifiable credentials can be exchanged digitally between identity owners,
involving individuals and institutions. Figure 8 shows an example of exchang-
ing credentials of a University degree certificate. In the example, a University
supplies its former student a verifiable credential proving her educational de-
gree, using an existing claim schema from the ledger, and via pairwise decen-
tralized Identifier “A”. The University graduate presents the digital creden-
tial to her company using pairwise decentralized identifier “B”. The company
confirms that her employee’s educational credentials are valid by verifying
authenticity of the verifiable credential.
A verifiable credential can also be issued upon a request from another third
party. In this case, identity owners have already proven their identity with an
institution (credential provider), and also need to prove their identity with
another institution (credential requester,) using the trust relationship they
have with the credential provider. In order to do so, credential requester au-
thenticates identity owner, and redirects identity owner to the authentication
system of credential provider. Based on the requested information, credential
provider provides a verifiable credential to identity owner. Identity owner signs
the verifiable credential with his/her private key, and forwards it to the au-
16 Mehmet Aydar et al.
8. Telco receives the Verifiable Claim 2. User selects which information to share 1. Bank authenticates user
Our system keeps a revocation registry on the ledger. Credential issuers are
responsible to publish revoked credentials to the revocation registry. The reg-
istry is a cryptographic accumulator, which includes credentials or the specific
attributes of a credential that have been revoked, in addition to the correspond-
ing credential definitions. A cryptographic hash value of a revoked credential
is calculated and kept in the revocation registry. Verifiers check the existence
of the hash value to test whether the credential has been revoked or not.
5 Related work
sioned. It means that the Blockchain nodes in Sovrin are governed by private
organizations called “stewards.” Sovrin makes use of decentralized identifiers
and verifiable credentials. To increase scalability, Sovrin uses two types of
Blockchain nodes: A network of validator peers which have transaction write
access to the ledger, and a bigger network of observer peers storing write-
protected copy of ledger to handle requests for read.
According to Sovrin, decentralized identifiers and associated DID docu-
ments with verification keys and endpoints, schemas and credential definitions,
proof of consent for data sharing, public credentials and revocation registries
are stored on the ledger, whereas private data of any kind and private proof of
existence are not stored on the ledger [Foundation, 2017]. The main difference
between Sovrin and our solution is that Sovrin does not provide private key
encryption and recovery mechanism for the private keys.
SecureKey [SecureKey, 2017a, SecureKey, 2017b] is another Blockchain based
identity and authentication provider similar to the proposed system. It allows
customers to assert their identity information online using trusted providers
that they have already completed the KYC process through trusted third par-
ties such as government agencies, telecommunication companies and banks.
SecureKey ensures that personal data is privately shared with explicit consent
of identity owner.
SecureKey uses a permissioned Blockchain network based on Hyperledger
Fabric, in which participating organizations such as banks are central in man-
aging the nodes of the Blockchain network. In the Blockchain ledger, the proof,
provenance and permissions are stored. Consumer’s identity information re-
mains to be stored at the trusted providers. SecureKey also uses an incentive
mechanism to data sharing, such that the credential requester pays to the cre-
dential provider. SecureKey architecture enables privacy with a triple-blind
identity sharing, in that the data provider never knows the service a consumer
is accessing, and the data requestor does not have to know the exact creden-
tial provider other than knowing the business type of the credential provider.
However, SecureKey does not support verifiable credentials and self-sovereign
digital identity for individuals.
From identity owner empowerment perspective, ShoCard [ShoCard, 2017]
project was offered as a Blockchain based identity management platform, in
which identity details are stored in a digital file called “ShoCard”. The data is
fully owned by identity owner and usually stored on the owner’s mobile device.
Identity owners have a public-private key pair for controlling of their identity.
ShoCard system enables attribute based data sharing. The identity details are
broken into multiple separate attributes. Each attribute is hashed and then
signed by private key, and sent to be stored in a Blockchain network. Different
than our system, private data is stored in Blockchain network in ShoCard,
which might result in potential privacy implications.
From a different aspect, Walmart filed a patent [High et al., 2018] to pro-
tect a method that allows obtaining Electronic Health Record (EHR) of an
individual from a Blockchain database even the individual is unable to com-
municate. In that system, personal medical data is managed on Blockchain.
20 Mehmet Aydar et al.
6 Conclusion
References