A Blockchain-based Mapping System

Similar documents
An analysis of the applicability of blockchain to secure IP addresses allocation, delegation and bindings draft-paillisse-sidrops-blockchain-01

Blockchain for Enterprise: A Security & Privacy Perspective through Hyperledger/fabric

Hyperledger fabric: towards scalable blockchain for business

FIRMS: a Future InteRnet Mapping System

Blockchain Beyond Bitcoin. Mark O Connell

A Review on Blockchain Application for Decentralized Decision of Ownership of IoT Devices

Blockchain without Bitcoin. Muralidhar Gopinath October 19, 2017 University at Albany

Public Key Infrastructures

Distributed Authenticated Mappings DINRG IETF-101

IoT security based on the DPK platform

Blockchain! What consultants should know about it. Daniel

Reliability, distributed consensus and blockchain COSC412

A Byzantine Fault-Tolerant Ordering Service for the Hyperledger Fabric Blockchain Platform

Key concepts of blockchain

Technical White Paper of. MOAC Mother of All Chains. June 8 th, 2017

BlockFin A Fork-Tolerant, Leaderless Consensus Protocol April

CONSENSUS PROTOCOLS & BLOCKCHAINS. Techruption Lecture March 16 th, 2017 Maarten Everts (TNO & University of Twente)

Blockchain Frameworks

A Scalable Smart Contracts Platform

The power of Blockchain: Smart Contracts. Foteini Baldimtsi

Ethereum. Campbell R. Harvey* Duke University and NBER. Ashwin Ramachandran Duke University. Brent Xu ConsenSys. Innovation and Cryptoventures

Hyperledger Fabric v1:

Not ACID, not BASE, but SALT A Transaction Processing Perspective on Blockchains

Locator ID Separation Protocol (LISP) Overview

ENEE 457: E-Cash and Bitcoin

Blockchain, cryptography, and consensus

Request for Comments: 8112 Category: Informational. I. Kouvelas Arista D. Lewis Cisco Systems May 2017

Chapter 13. Digital Cash. Information Security/System Security p. 570/626

Computer Security. 14. Blockchain & Bitcoin. Paul Krzyzanowski. Rutgers University. Spring 2019

Distributed Ledger Technology & Fintech Applications. Hart Montgomery, NFIC 2017

Blockstack, a New Internet for Decentralized Apps. Muneeb Ali

Privacy based Public Key Infrastructure (PKI) using Smart Contract in Blockchain Technology

Some Lessons Learned from Designing the Resource PKI

BLOCKCHAIN ARCHITECT Certification. Blockchain Architect

Bitcoin and Blockchain

Blockchain and Additive Manufacturing

ISSUSE AND FEATURES TO CONSIDER WHEN SELECTING A BLOCKCHAIN SYSTEM. Find us at

Decentralized Internet Resource Trust Infrastructure

Alternatives to Blockchains. Sarah Meiklejohn (University College London)

Modern key distribution with ClaimChains

Consensus & Blockchain

Cryptocurrency and Blockchain Research

SCP: A Computationally Scalable Byzantine Consensus Protocol for Blockchains

What s new under the blockchain sun. HYPERLEDGER FABRIC AND A SHORT SURVEY OF INTERLEDGER. DIDIER PH MARTIN, PHD.

Blockchain & Distributed Internet Infrastructure

BBc-1 : Beyond Blockchain One - An Architecture for Promise-Fixation Device in the Air -

Key Security Issues for implementation of Digital Currency, including ITU-T SG17 activities

The Design and Implementation of a Next Generation Name Service for the Internet (CoDoNS) Presented By: Kamalakar Kambhatla

Data Consistency and Blockchain. Bei Chun Zhou (BlockChainZ)

Fabric Development Update & Discussion. Binh Nguyen

Who wants to be a millionaire? A class in creating your own cryptocurrency

ICS 421 & ICS 690. Bitcoin & Blockchain. Assoc. Prof. Lipyeow Lim Information & Computer Sciences Department University of Hawai`i at Mānoa

Analyzing Bitcoin Security. Philippe Camacho

Security: Focus of Control

BitBill: Scalable, Robust, Verifiable Peer-to-Peer Billing for Cloud Computing

LISP Locator/ID Separation Protocol

A Lightweight Blockchain Consensus Protocol

Whitepaper Rcoin Global

Blockchain (de)constructed

Blockchain. CS 240: Computing Systems and Concurrency Lecture 20. Marco Canini

GENESIS VISION NETWORK

BEYOND TRADITIONAL PASSWORD AUTHENTICATION: PKI & BLOCKCHAIN

SpaceMint Overcoming Bitcoin s waste of energy

BigchainDB: A Scalable Blockchain Database. Trent McConaghy

Hyperledger Fabric v1.0 Deep Dive. Binh Nguyen, IBM

Content. 1. SYSTEM Design Evolution: NULS 2.0 Microserver Platform - How is it Structured A. Design Reasoning and Explanation...

10 minutes, 10 slides, goals, tech details and why it matters. Decentralized ID & Verifiable Claims

Analyzing the Effects of Network Latency on Blockchain Performance and Security Using the Whiteblock Testing Platform

Decentralized Database for Developers. White Paper v March 31,2018

OpenbankIT: a banking platform for e- money management based on blockchain technology

IP Routing: LISP Configuration Guide, Cisco IOS Release 15M&T

SOME OF THE PROBLEMS IN BLOCKCHAIN TODAY

Location ID Separation Protocol. Gregory Johnson -

About & Beyond PKI. Blockchain and PKI. André Clerc Dipl. Inf.-Ing. FH, CISSP, CAS PM TEMET AG, Zürich. February 9, 2017

University of Duisburg-Essen Bismarckstr Duisburg Germany HOW BITCOIN WORKS. Matthäus Wander. June 29, 2011

Optimized Mobile User Plane Solutions for 5G

Introduction to Blockchain

Problem: Equivocation!

Privacy-Enabled NFTs: User-Mintable, Non-Fungible Tokens With Private Off-Chain Data

SCION: PKI Overview. Adrian Perrig Network Security Group, ETH Zürich

White Paper. Blockchain alternatives: The case for CRAQ

NEO White Paper. NEO design goals: Smart Economy. Digital Assets. Digital Identity. A distributed network for the Smart Economy

International Journal of Computer Engineering and Applications, Volume XIII, Issue II, Feb. 19, ISSN

Blockchain, Cryptocurrency, Smart Contracts and Initial Coin Offerings: A Technical Perspective

SmartPool: practical decentralized pool mining. Loi Luu, Yaron Velner, Jason Teutsch, and Prateek Saxena August 18, 2017

Third public workshop of the Amsterdam Group and CODECS C-ITS Deployment in Europe: Common Security and Certificate Policy

The game If you listen very carefully during the first 4 cards (or use the cheat sheet) you will get an advantage on the last 5 cards

Physical Access Control Management System Based on Permissioned Blockchain

SOLUTION ARCHITECTURE AND TECHNICAL OVERVIEW. Decentralized platform for coordination and administration of healthcare and benefits

EECS 498 Introduction to Distributed Systems

Blockchains & Cryptocurrencies

Lecture 3. Introduction to Cryptocurrencies

Cisco IOS LISP Application Note Series: Access Control Lists

The security and insecurity of blockchains and smart contracts

Biomedical and Healthcare Applications for Blockchain. Tiffany J. Callahan Computational Bioscience Program Hunter/Kahn Labs

The World s first Public Chain for Decentralized NaaS (Network-as-a-Service)

BITCOIN PROTOCOL & CONSENSUS: A HIGH LEVEL OVERVIEW

The Technology behind Smart Contracts

ZILLIQA / ZILIKƏ/ NEXT GEN HIGH-THROUGHPUT BLOCKCHAIN PLATFORM DONG XINSHU, CEO JIA YAOQI, BLOCKCHAIN ZILLIQA.

What is Bitcoin? Consensus technology has the power to do for economics what the internet did for information - Dan Larimer

Transcription:

A Blockchain-based Mapping System IETF 98 Chicago March 2017 Jordi Paillissé, Albert Cabellos, Vina Ermagan, Fabio Maino jordip@ac.upc.edu http://openoverlayrouter.org 1

A short Blockchain tutorial 2

Blockchain - Introduction Blockchain = decentralized, secure and trustless database Add blocks of data one after another Protected by two mechanisms: Chain of signatures Consensus algorithm First appeared: Bitcoin, to exchange money Many more applications are possible 3

Blockchain - Transactions Transaction Sender s Public Key Sender s signature Tx Data 4

Blockchain - Transactions Transaction Sender s Public Key 1 Transactions are broadcasted to all the nodes Sender s signature P2P network Tx Data 5

Blockchain - Transactions Transaction Sender s Public Key 1 Transactions are broadcasted to all the nodes Sender s signature P2P network Tx Data 2 A node collects transactions into a block Block Prev. Hash Nonce Transactions 1 N 6

Blockchain - Transactions Transaction Sender s Public Key 1 Transactions are broadcasted to all the nodes Sender s signature P2P network Tx Data 2 A node collects transactions into a block 3 Compute consensus algorithm Block New Block Prev. Hash Nonce Prev. Hash Nonce Transactions 1 N Transactions 1 N 7

Blockchain - Transactions Transaction Sender s Public Key 1 Transactions are broadcasted to all the nodes Sender s signature P2P network Tx Data 2 A node collects transactions into a block 3 Compute consensus algorithm 4 Broadcast new block to the network Block New Block Prev. Hash Nonce Prev. Hash Nonce Transactions 1 N Transactions 1 N 8

Blockchain - Transactions Transaction Sender s Public Key 1 Transactions are broadcasted to all the nodes Sender s signature P2P network Tx Data 2 A node collects transactions into a block 3 Compute consensus algorithm 4 Broadcast new block to the network Block Prev. Hash Nonce New Block Prev. Hash Nonce 5 The other nodes verify the consensus algorithm and accept the block Transactions 1 N Transactions 1 N 9

Blockchain - Properties Decentralized: all nodes have the entire blockchain No prior trust required Append-only and immutable: added transactions cannot be modified Verifiable Blockchain Technology, Sutardja Center (UC Berkeley) http://scet.berkeley.edu/wp-content/uploads/blockchainpaper.pdf 10

A Blockchain-based Mapping System Overview 11

Basic Idea Objective: Store mappings in the blockchain EID prefixes are distributed to all participants Each owner writes their mappings (EID-to-RLOC) in the blockchain Map Resolvers read the blockchain to find the mappings Idea: A mapping is equivalent to a bitcoin transaction Wallet: One (or more) mappings Transaction: Defining a mapping Blockchain: A public ledger of the mappings, from the current owner to the root 12

1-Writes Genesis block, claims all EID space WRITE ROOT blockchain 0 1 2... n n+1 n+2 13

1-Writes Genesis block, claims all EID space 2-Writes Prefix owner mapping WRITE ROOT Delegation EID-prefix owner blockchain 0 1 2... n n+1 n+2 14

1-Writes Genesis block, claims all EID space 2-Writes Prefix owner mapping 3-Writes Prefix RLOC mapping WRITE ROOT Delegation EID-prefix owner Delegation EID-prefix owner blockchain 0 1 2... n n+1 n+2 15

1-Writes Genesis block, claims all EID space 2-Writes Prefix owner mapping 3-Writes Prefix RLOC mapping WRITE ROOT Delegation EID-prefix owner Delegation EID-prefix owner blockchain 0 1 2... n n+1 n+2 2-Fetch mappings READ 1-Map-Request EIDpref RLOC1 RLOC2 RLOC3 xtr 3-Map-Reply MR/MS with blockchain 16

Pros and Cons Pros Infrastructure less and decentralized Fast lookup 17

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication 18

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication No prior trust required Simple rekeying 19

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication No prior trust required Simple rekeying Cons Slow updates 20

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication No prior trust required Simple rekeying Cons Slow updates Costly bootstrapping Large storage required 21

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication No prior trust required Simple rekeying Cons Slow updates Costly bootstrapping Large storage required Can be mitigated using a dedicated chain 22

Pros and Cons Pros Infrastructure less and decentralized Fast lookup Secure: Non-repudiation Resilience Integrity Authentication No prior trust required Simple rekeying Cons Slow updates Costly bootstrapping Large storage required Can be mitigated using a dedicated chain Throughput depends on: Propagation speed in the P2P network Consensus algorithm 23

Comparison with LISP-DDT* LISP-DDT Blockchain Root Node 1 Node 2 Node N DDT1 DDT2 Chain Chain Chain MS1.1 MS1.2 MS2.1 + Fast update Dynamic mappings - Manual configuration - First query slow + No infrastructure + Easy management + First query fast - Update Delay Static mappings *Delegated Database Tree: hierarchical delegation of prefixes, similar to DNS 24

Issues with RPKI RPKI Blockchain Anonymity [1] Prefixes linked to owner name Prefixes linked to a public key Revocation Performed by CAs Performed automatically (validity time) or impossible Certificate management [2] Complex No certificates [1] Wählisch, Matthias, et al. "RiPKI: The tragic story of RPKI deployment in the Web ecosystem." Proceedings of the 14th ACM Workshop on Hot Topics in Networks. ACM, 2015. [2] George, Wes. "Adventures in RPKI (non) Deployment." NANOG, 2014. 25

Scalability Approx. 600 GB in 2034 One mapping for each block of /24 IPv4 address space Growth similar to BGP churn* Prefix delegation + mappings Each transaction approx. 400 bytes Only prefixes: approx. 40 GB in 20 years (worst case + BGP table growth*) *Source: http://www.potaroo.net/ispcol/2017-01/bgp2016.html 26

A Blockchain-based Mapping System Prototyping 27

Design considerations Bitcoin is too restrictive: Only for money transfer Huge blockchain file size (approx. 100 GB) High bootstrap time (several days*) Low throughput (7 transactions/sec.) New blockchain technologies: More scalable Smart contracts *depends on connection speed 28

Dedicated chain Public (anyone can use it) but dedicated (only for mappings) It only stores: Prefix delegations Mappings Map Server addresses fast updates Automate functions with smart contracts: Add new mapping Revoke Rekey Verify mapping 29

Prototype New mappings Java SDK Validate New mappings Hyperledger P2P network 30

Prototype LISP Flow Mappings Mappings New mappings Java SDK Validate New mappings Map-Request Map-Reply xtr Hyperledger P2P network 31

Deployment LISP Beta Network Uses LISP-DDT* Replace DDT nodes with this prototype Root Node 1 Node 2 Node N DDT1 DDT2 Chain Chain Chain MS1.1 MS1.2 MS2.1 *http://ddt-root.org/ 32

Deployment LISP Beta Network Uses LISP-DDT* Replace DDT nodes with this prototype Root Node 1 Node 2 Node N DDT1 DDT2 Chain Chain Chain MS1.1 MS1.2 MS2.1 Map-Request *http://ddt-root.org/ Map-Reply xtr 33

Deployment LISP Beta Network Full mapping system Less Map Servers Root Node 1 Node 2 Node N DDT1 DDT2 Chain Chain Chain MS1.1 MS1.2 MS2.1 Map-Request Map-Reply xtr 34

A Blockchain-based Mapping System IETF 98 Chicago March 2017 Jordi Paillissé, Albert Cabellos, Vina Ermagan, Fabio Maino jordip@ac.upc.edu http://openoverlayrouter.org 35

A Blockchain-based Mapping System Appendix: transaction examples 36

First transaction Map-Resolver trust the Public Key of the Root, that initially claims all EID space by writing the genesis block Root can delegate all EID space to itself and use a different keypair New Transaction Hash(P+ root)= Root@1 I own all the address space Root@2 37

Prefix delegation Root delegates EID-prefixes to other entities (identified by Hash(Public Key)) by adding transactions Root@2 New Transaction delegate Root@3 (rest of space) 0.0/16 Deleg1@ 25.5.5/8 Deleg2@ Owners can further delegate address blocks to other entities or write MS addresses (and MS s Public Key) Deleg1@ New Transaction delegate Deleg1@2 (rest of space) 0.0.1/24 Deleg3@ 0.0.2/24 MS@ and P+ 38

Writing mappings Just like delegating a prefix, but instead of the Map Server address, we write the mapping New Transaction Deleg3@ maping 0.0.1/24 is at RLOC1 39

Rekeying Delegating the owned EID-prefixes to itself using a new key set. Simpler than traditional rekeying schemes Can be performed independently, i.e. each owner can do it without affecting other owners Same procedure for mappings 40

Map-Reply Authentication MS public key can also be included in the delegations Since blockchain provides authentication and integrity for this key, MRs can use it to verify Map-Replies 2-Retrieve MS RLOC and MS s Public Key 1-Map-Request 3-Map-Request xtr 6-Map-Reply MR 4-Signed Map-Reply MS 5-Verify With MS s Private Key signature 41

More about the Consensus Algorithm Rules used by nodes to agree on which data to accept Eg. Bitcoin uses Proof of Work Miners compute Proof of Work Finding a nonce that when added to the data makes its hash start with N zeros. Hard Other algorithms are being explored: Proof of Stake: nodes with more assets are more likely to add blocks Practical Byzantine Fault Tolerant: reach a minimum number of endorsements from nodes in order to add data Deposit-based: assets are lost if a node performs an illegal operation (security deposit) https://www.linkedin.com/pulse/consensus-mechanisms-used-blockchain-ronald-chan 42