Presentation plan
Digital Identifiers and their challenges
Why Blockchain?
Examples of Blockchain use for Identification
Our Case Studies: DOI (Digital Object Identifier) and LEI (Legal
Entity Identifier)
LEI Proof-of-Concept – fully functional software
Lessons learned from the POC
Conclusions
2
Digital Identifiers and their challenges
Uniqueness – “Who is Who” without doubts
Openness - accessible free of charge as a “broad public
good ”
Decentralization of their generation/assignment
Bi-directional non-repudiation
Authenticity
Resilience to system failures
3
Digital Identifiers Examples
LEI – Legal Entity Identifiers
ISIN – International Securities Identification Number (by ANNA)
Financial Instrument Global Identifier (Bloomberg FIGI)
Companies Registration Numbers (CRN)
VAT Numbers
Electronic Product Codes (EPC: GS1, EAN codes, etc)
DOI – Digital Object Identifiers
VIN – Vehicle Identification Number
GPII – Global Patient Identifier
4
Why Blockchain? - I
Non-repudiation of identities and transactions
Immutability of data
Data openness
Decentralization of processing
Lowering the transactions costs in distributed
organizations
Transparency to internal stakeholders and regulators
Resilience to system failures
5
Why Blockchain? - II
Trust guaranteed by mathematics
Efficient replication mechanisms
Far-reaching democratization of Digital Identifiers
generation (for specific types of identifiers)
Ability to restrict generation of identifiers to authorized
agents or institutions.
Diversification of targets: institutions, legal and real
persons, datasets and devices.
6
Existing uses of Blockchain for Identifiers
Blockstack (“ …the first implementation of a decentralized DNS system on
top of the Bitcoin blockchain”)
Namecoin (The cryptocurrency with applications for naming ( .bit domain) )
… and more: ShoCard, Hypr, BlockAuth, CryptID …
8
Blockchain evolution
Blockchain 1.0 – Bitcoin and other Crypto Currencies
“The deployment of cryptocurrencies in applications related to cash, such as currency transfer, remittance, and
digital payment systems”
Blockchain 2.0 – Contracts and Identities
“The entire slate of economic, market, and financial applications using the blockchain that are more extensive than
simple cash transactions: stocks, bonds, futures, loans, mortgages, titles, smart property, and smart contracts”
Blockchain 3.0 – Applications
“Beyond currency, finance, and markets—particularly in the areas of government, health, science, literacy, culture,
and art.”
Quotations from: “Blockchain” by Melanie Swan, O'Reilly Media, Inc.
9
The idea of using
Blockchain 2.0 Smart Contracts
for Identification Services
Using Blockchain 2.0 Smart Contracts for
Identification Services. I
The central tenet of our approach is to treat a single record
for any entity to be identified by some KEY as "atomic", in
the sense of being curated as a single unit of data, by the
authority that assigns the KEYs.
Then, the representation of a single “atomic” record can be
considered as a state for a single smart contract.
11
Using Blockchain 2.0 Smart Contracts for
Identification Services. II
Each such contract would offer a method for accessing the
representation, and a dynamic data structure that holds
"revisions" of the representation. That is, when the record
changes globally, its new representation would be added
to the state of the contract. Such contract can hold many
revisions of the representation, bound only by the
capabilities of the network’s global storage. We call such
contract "entity contract".
12
Using Blockchain 2.0 Smart Contracts for
Identification Services. III
Together with entity contracts, someone can devise one or
more "master contracts", that keep track of individual entity
contracts and make accessing an easier process.
One must remember, however, about the trade-off between
complexity of such contracts and their cost of creation and
execution.
13
Using Blockchain 2.0 Smart Contracts for
Identification Services. IV
The suggested architecture for the Digital Identifiers on the
blockchain is: Consortium blockchains
Vitalik Buterin - https://blog.ethereum.org/2015/08/07/on-public-and-private-blockchains/ :
A consortium blockchain is a blockchain where the consensus process is controlled by a pre-selected set of
nodes; for example, one might imagine a consortium of 15 financial institutions, each of which operates a
node and of which 10 must sign every block in order for the block to be valid. The right to read the
blockchain may be public, or restricted to the participants, and there are also hybrid routes such as the root
hashes of the blocks being public together with an API that allows members of the public to make a limited
number of queries and get back cryptographic proofs of some parts of the blockchain state. These
blockchains may be considered “partially decentralized”.
14
Case Study I – DOI – Digital Object Identifiers
The Digital Object Identifier (DOI) system is a generic framework
allowing for the identification of any digital object across global
computer networks. The key features of the DOI system include
persistence, fault-tolerant operation, security and ability to resolve its
identifiers to different forms, including metadata about objects and
pointers to their object location.
The DOI system is part of an ISO standard (ISO 26324).
Example: https://doi.org/10.1109/5.771073
16
DOI infrastructure today – HANDLE system
17
The Handle System, is a set of protocols concerned with
assignment, resolution and management of persistent
identifiers for digital objects and other resources on a network.
The system was originally developed by Bob Kahn, (contributor
to the invention of the TCP/IP protocol), with active
participation of DARPA in the framework of CNRI. CNRI
develops and manages the system through today.
Our current activity
18
The main idea behind the case study is the way we envision the use of
Blockchain technology as the back-end infrastructure for the DOI (Digital
Object Identifier) system, effectively improving or replacing the aging
Handle system.
The project has been proposed to US National Science Foundation by our
American Joint-Venture: Chemical Semantics, Inc.
Case Study I – LEI – Legal Entity Identifier
„The Legal Entity Identifier (LEI) is a 20-digit, alpha-numeric code based
on the ISO 17442 standard developed by the International Organization
for Standardization (ISO). It connects to key reference information that
enables clear and unique identification of legal entities participating in
financial transactions.
Simply put, the publicly available LEI data pool can be regarded as a
global directory, which greatly enhances transparency in the global
marketplace.”
https://www.gleif.org/en/lei-focus/introducing-the-legal-entity-identifier-lei
20
MakoLab LEI Resolver – how does it work?
5493001KJTIIGC8Y1R12
Create URI
http://lei.info/5493001KJTIIGC8Y1R12
Visual for Human Web Media (HTML)
Data for Machine consumption (RDF)
Picture for Paper Media (QR-Code)
1
2 http://lei.info/5493001KJTIIGC8Y1R12
21
LEI Resolver – Visual Resolution
http://lei.info/5493001KJTIIGC8Y1R12 Visual for Human Web Media (HTML)2
22
LEI Resolver – Data for machine consumption
http://lei.info/5493001KJTIIGC8Y1R12 Data for Machine consumption (RDF)
RDF Graphs can be returned
in multiple formats:
2
rdf+xml
x-turtle
n-triples
Trig
rdf+n3
n-quads
ld+json
owl+xml
turtle
trix
n3
text/plain
x-nquads
23
MakoLab LEI Blockchain Proof of Concept
The fundamental principles for the POC:
Modelling a small consortium blockchain (only 3 nodes for the POC)
Using Ethereum as smart contract platform
Ethereum clients form a private network of participants
Each client synchronizes its blockchain with others
Three LOUs (Local Operating Units) modelled
Clients are connected in a distributed cluster
24
MakoLab’s LEI
Proof-of-Concept
Ethereum nodes (run as GETH
processes) are interfaced using
WEB3.js library
node.js is used as a primary layer on
top of GETH and as a web server to
access the blockchain
Additional logic is delivered by a layer
of Python scripts
LEI data is represented as JSON-LD
objects
Web application Front-End JS code
allows for retrieval, entry and update
of data
Single node is: 8GB/4 cores/ 3,2
GHz/Intel i7
25
More details
about the POC
Fast index service used for searches
(SOLR)
Individual web interfaces are enabled
for each LOU
POC functionality:
Search, Creation of contracts for LEIs
records, registration in the master,
creation of the new revisions …
Estimated mining time for a single LEI:
mining of 1 block itself, with low
difficulty PoW (0x4000), typically less
than 10 secs
1 LEI = 3 blocks = ~30 sec.
26
Lessons Learned from the LEI POC
Ethereum is a very good platform for building a Digital Identifiers Blockchain based
system
However, Blockchain software is not enough to build a fully functional identification
system
The need for indexing and caching is important (access time to LEI data varied between
few hundreds ms to ~2 seconds depending on the number of LEI record revisions)
Index and cache security are needed and can be done by periodic hashing of index/cache
server database and frequent verification
POW difficulty can be easily adjusted (low for initial blockchain creation, higher for new
entries and updates)
Semantic Layer is needed for adding meaning to smart contracts (e.g. GLEIO Ontology for
LEI) – next on our POC
29
Conclusions
Blockchain technology is the ideal choice for Digital Identifiers working in the public space
Blockchain offers non-repudiation, persistence, fault-tolerant operation, security
(authenticity), trust and low-cost decentralized management
For Identifiers assigned by distributed system of affiliated organizations (like RAs for DOI
or LOUs for LEI) – the consortium Blockchains form the ideal organizational framework
The ability to resolve the identifiers to different forms requires additional software
solutions
Next steps in our Blockchain research will include:
Adding a semantic layer to blockchain data
Adding linked data resolution mechanisms
Moving the interface layer to Ethereum to .net technology
Getting ALL current LEI data to the blockchain
30
31
Contact
Dominik Kuziński
MakoLab SA
Rzgowska 30
93-172 Łódź
Poland
dominik.kuzinski@makolab.com
Brandon Pate
MakoLab USA Inc.
20 West University Ave.,
Gainesville, FL 32601
USA
brandon.pate@makolab.com
Mirek Sopek
MakoLab SA
Demokratyczna 46
93-430 Lodz
Poland
+48 600 814 537
sopek@makolab.com