31
Blockchain for Digital Identifiers Improving Data Openness, Security and Persistence in the modern world. Dr Mirek Sopek MakoLab SA, Poland

Blockchain for Digital Identifiers

Embed Size (px)

Citation preview

Page 1: Blockchain for Digital Identifiers

Blockchain for Digital IdentifiersImproving Data Openness, Security and Persistence in the modern world.

Dr Mirek Sopek MakoLab SA, Poland

Page 2: Blockchain for Digital Identifiers

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

Page 3: Blockchain for Digital Identifiers

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

Page 4: Blockchain for Digital Identifiers

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

Page 5: Blockchain for Digital Identifiers

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

Page 6: Blockchain for Digital Identifiers

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

Page 7: Blockchain for Digital Identifiers

Blockchain - a metaphor

7

Open Data carved in stone

Page 8: Blockchain for Digital Identifiers

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

Page 9: Blockchain for Digital Identifiers

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

Page 10: Blockchain for Digital Identifiers

The idea of using Blockchain 2.0 Smart Contractsfor Identification Services

Page 11: Blockchain for Digital Identifiers

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

Page 12: Blockchain for Digital Identifiers

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

Page 13: Blockchain for Digital Identifiers

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

Page 14: Blockchain for Digital Identifiers

Using Blockchain 2.0 Smart Contracts for Identification Services. IVThe suggested architecture for the Digital Identifiers on the blockchain is: Consortium blockchainsVitalik 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

Page 15: Blockchain for Digital Identifiers

Case studies:

DOI – Digital Object IdentifiersLEI – Legal Entity Identifiers

Page 16: Blockchain for Digital Identifiers

Case Study I – DOI – Digital Object IdentifiersThe 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.77107316

Page 17: Blockchain for Digital Identifiers

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.

Page 18: Blockchain for Digital Identifiers

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.

Page 19: Blockchain for Digital Identifiers

Two case studies:

DOI – Digital Object IdentifiersLEI – Legal Entity Identifiers

Page 20: Blockchain for Digital Identifiers

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

Page 21: Blockchain for Digital Identifiers

MakoLab LEI Resolver – how does it work?

5493001KJTIIGC8Y1R12Create 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

Page 22: Blockchain for Digital Identifiers

LEI Resolver – Visual Resolutionhttp://lei.info/5493001KJTIIGC8Y1R12 Visual for Human Web Media (HTML)2

22

Page 23: Blockchain for Digital Identifiers

LEI Resolver – Data for machine consumptionhttp://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

Page 24: Blockchain for Digital Identifiers

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

Page 25: Blockchain for Digital Identifiers

MakoLab’s LEIProof-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-LDobjects

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

Page 26: Blockchain for Digital Identifiers

More details about the POC

Fast index service used for searches (SOLR)

Individual web interfaces are enabledfor 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 secs1 LEI = 3 blocks = ~30 sec.

26

Page 27: Blockchain for Digital Identifiers

POC Web interface: http://leiblc.mm.com.pl/POC.html

27

Page 28: Blockchain for Digital Identifiers

POC Web interface and JSON-LD LEI representation

28

Page 29: Blockchain for Digital Identifiers

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 POC29

Page 30: Blockchain for Digital Identifiers

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

Page 31: Blockchain for Digital Identifiers

31

Contact

Dominik KuzińskiMakoLab SARzgowska 3093-172 Łódź Poland

[email protected]

Brandon PateMakoLab USA Inc.20 West University Ave.,Gainesville, FL 32601USA

[email protected]

Mirek SopekMakoLab SADemokratyczna 4693-430 LodzPoland

+48 600 814 [email protected]