A Blockchain-based Mapping System
IETF 98 – Chicago March 2017
Jordi Paillissé, Albert Cabellos, Vina Ermagan, Fabio Maino
acabello@ac.upc.edu
htup://openoverlayrouter.org
1
A Blockchain-based Mapping System IETF 98 Chicago March 2017 - - PowerPoint PPT Presentation
A Blockchain-based Mapping System IETF 98 Chicago March 2017 Jordi Pailliss, Albert Cabellos , Vina Ermagan, Fabio Maino acabello@ac.upc.edu htup://openoverlayrouter.org 1 A short Blockchain tutorial 2 Blockchain - Introductjon
acabello@ac.upc.edu
htup://openoverlayrouter.org
1
2
3
4
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
5
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
Transactjons are broadcasted to all the nodes
P2P network
1
6
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
Nonce Transactjons 1 ··· N
Block Transactjons are broadcasted to all the nodes
2
A node collects transactjons into a block
P2P network
1
7
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
Nonce Transactjons 1 ··· N
Block
Nonce Transactjons 1 ··· N’
New Block Transactjons are broadcasted to all the nodes
2
A node collects transactjons into a block
3
Compute consensus algorithm
P2P network
1
8
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
Nonce Transactjons 1 ··· N
Block
Nonce Transactjons 1 ··· N’
New Block Transactjons are broadcasted to all the nodes
2
A node collects transactjons into a block
P2P network
1 4
Broadcast new block to the network
3
Compute consensus algorithm
9
Sender’s Public Key Sender’s signature
Transactjon
Tx Data
Nonce Transactjons 1 ··· N
Block
Nonce Transactjons 1 ··· N’
New Block Transactjons are broadcasted to all the nodes
2
A node collects transactjons into a block
5
The other nodes verify the consensus algorithm and accept the block
P2P network
1 4
Broadcast new block to the network
3
Compute consensus algorithm
10
“Blockchain Technology”, Sutardja Center (UC Berkeley) htup://scet.berkeley.edu/wp-content/uploads/BlockchainPaper.pdf
11
12
13
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
14
WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
15
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping Delegatjon WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
16
EID-prefjx
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping 3-Writes Prefjx EID-to- RLOC mapping Delegatjon Delegatjon WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 2-Fetch mappings 1-Writes Genesis block, claims all EID space 1-Map-Request 3-Map-Reply EIDpref RLOC1 RLOC2 RLOC3 WRITE READ
17
EID-prefjx
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping Delegatjon Delegatjon
xTR MR/MS with blockchain
3-Writes Prefjx EID-to- RLOC mapping
18
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
19
WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
20
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping Delegatjon WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 1-Writes Genesis block, claims all EID space
21
EID-prefjx
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping 3-Writes Prefjx EID-to- MS informatjon Delegatjon Delegatjon WRITE
1 2 ... n n+1 n+2 blockchain ROOT ROOT 2-Fetch EID-to-MS informatjon 1-Writes Genesis block, claims all EID space 1-Map-Request 3-Map-Reply WRITE READ
22
EID-prefjx
EID-prefjx
EID-prefjx
2-Writes Prefjx owner mapping Delegatjon Delegatjon
xTR MR
3-Writes Prefjx EID-to- MS informatjon 2-Map-Request
MS (in proxy-mode, as an example)
– Non-repudiatjon – Resilience – Integrity – Authentjcatjon
– Mappings can be stored in a MS, then performance is as fast as DDT
23
Can be mitjgated using a dedicated chain
+ Less infrastructure + No certjfjcates + Fast queries
in MS (same performance as MS)
24
Node 1
Chain Chain
Node 2
Chain Chain
Node N
Chain Chain
+ Fast update Dynamic mappings
RPKI Blockchain Anonymity [1] Prefjxes linked to owner name Prefjxes linked to a public key Revocatjon Performed by CAs Performed automatjcally (validity tjme) or impossible Certjfjcate management [2] Complex No certjfjcates
25
[1] Wählisch, Matuhias, 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.
26
*Source: htup://www.potaroo.net/ispcol/2017-01/bgp2016.html
27
“I own all the address space” Hash(P+ root)= Root@1 Root@2 New Transaction
28
“delegate” Root@2 Root@3 (rest of space) New Transaction 0.0/16 Deleg1@ 25.5.5/8 Deleg2@
“delegate” Deleg1@ Deleg1@2 (rest of space) New Transaction 0.0.1/24 Deleg3@ 0.0.2/24 MS@ and P+
29
“mapping” Deleg3@ New Transaction 0.0.1/24 is at RLOC1
30
31
2-Retrieve MS RLOC and MS’s Public Key 3-Map-Request 4-Signed Map-Reply With MS’s Private Key 6-Map-Reply 5-Verify signature 1-Map-Request
32
xTR MR MS
33
34
*depends on connectjon speed
35
Map-Request
Mappings Mappings
Map-Reply
xTR
LISP Flow Mappings New mappings Hyperledger P2P network Java SDK New mappings Validate
36
acabello@ac.upc.edu
htup://openoverlayrouter.org
37
– Finding a nonce that when added to the data makes its hash start with N zeros. – Hard
– Proof of Stake: nodes with more assets are more likely to add blocks – Practjcal Byzantjne 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 operatjon (security deposit)
38
htups://www.linkedin.com/pulse/consensus-mechanisms-used-blockchain-ronald-chan