researches on blockchain “networks” · •a public blockchain “network” simulator –...

17
Researches on Blockchain “Networks” Kazuyuki Shudo Tokyo Tech 首藤 一幸 東京工業大学 IEEE Tokyo Blockchain Workshop July 29 th , 2019 Tokyo Tech 0 / 15

Upload: others

Post on 03-Jan-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Researches onBlockchain “Networks”

Kazuyuki ShudoTokyo Tech

首藤一幸東京工業大学

IEEE Tokyo Blockchain WorkshopJuly 29th, 2019

Tokyo Tech

0 / 15

Page 2: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Cryptocurrency anda public blockchain supporting it

TX

Hash valueBlock

TX TX TX

Hash valueBlock

TX TXA crypto-graphichash function

A hash chain of blocks

A peer-to-peer (P2P) network of participating nodes= An application-levelnetwork

Node (miner)

https://bitnodes.earn.com/9,200 nodes on Bitcoin network

• A distributed system supporting cryptocurrencies– Bitcoin’s market capitalization is 

US$ 180B.– Decentralized

• Expected applications– Essentially, time stamp authority or 

notary office– Supply chain mgmt., traceability, 

governance process such as voting, automatic operation of organizations, …

• Transactions and blocks are broadcasted to all the nodes.

• All the nodes store the identical ledger.• Nodes race each other for producing a block.

‐> Mining in Proof of Work protocol

1 / 15

Page 3: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Technologiessupporting blockchain

• Cryptography– Public‐key cryptography, 

digital signature, cryptographic hash function, random number generation, …

• Distributed systems– Peer‐to‐peer networks, 

flooding, replication, consistency, consensus algorithms, …

What public (permissionless) blockchains achieved– Inconsistency (double spending) prevention, and alteration prevention– Fault tolerance– Transaction (TX) / data confirmation

by a large number of coming and going nodes

2 / 15

Page 4: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Problems of public blockchains• Transaction confirmation latency

– Block generation interval: 10 min in Bitcoin, 15 sec in Ethereum

• Transaction confirmation throughput– 7 TX/sec in Bitcoin, ‐300 TX/sec (est.) in Ethereum– 350 TX/sec in PayPal, 1,700 TX/sec in Visa– So‐called scalability problem ➡ second layer, …

• Total amount of data it stores– All the nodes store the identical data, > 200 GB– Does not scale along # of nodes➡ Downsampling [Li 2019], Distributing with DHT [Abe 2018], …

• Necessity of cryptocurrency operation– If the supporting cryptocurrency loses its economic value, nodes run 

out, the blockchain cannot confirm TXs safely.➡ Portability and migration [Shudo 2018], …

• Number of other interesting problems

3 / 15

Page 5: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Conflict betweenthroughput and security• Throughput improvement techniques result in decreased security.

Block propagation delay↑

Parameter

Ratio of these two determines throughput and security.

Parameter

Result

Result

Our goal is

Figures are from “Secure High-Rate Transaction Processing in Bitcoin”, FC’15, 2015

– Forks  disperse the total confirming (hash) power to multiple tails of the blockchain.

– It facilitates 51% attack.  

An example of highly forked blockchain.

decreasing block propagation delay

E.g. In Bitcoin,1 MB and 10 min result in 7 TPS.

4 / 15

Page 6: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Towards coexistence ofperformance and security

• Propagation delay estimation with network coordinates

• Blockchain simulator

• Neighbor selection

• Measurement of relay networks

Relaynetworks

Blockchainsimulator

Neighbor selection

Measurement of relay

networks

Propagation delay estimation w/

network coordinates

Improvement ofTX confirmationthroughput

Improvement or preservation of security

Reduction of propagation time

CompactBlock Relay

Increase and adjustment ofblock gen. rate

[青木2019c][Aoki2019d]

[神田 2019a] [Kanda 2019b]

[青木 2019a] [Aoki 2019b] [Banno 2019]

[大月 2019a][Otsuki 2019b]

bloXroute, FIBRE, …

The following slides introducethese activities in order.

5 / 15

Page 7: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Propagation delay estimation with network coordinates• Network coordinates [Dabek 2004] [Chen 2007]

– is applied to estimated block propagation delay.– Determine the coordinates in n‐dimensional Euclid space

using a physical mass‐spring system.

[神田 2019a][Kanda 2019b]

around 10,000 nodes

in msec

Brazil ?

• But …

• Purpose: A guide for– delay reduction techniques

– neighbor selection

6 / 15

Page 8: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Propagation delay estimation with network coordinates• The accuracy is so so.

[神田 2019a][Kanda 2019b]

better

It is not ineffective.

Mean Square ErrorVivaldiAssumptions :degree 10,size of first hop group 15

Measured and estimated delays does not match well ?

In case just using the average

• Lack of topology information is the main obstacle.– cf. “TxProbe: Discovering Bitcoin’s Network Topology …”, FC’19, 2019

Measured de

lay (m

sec)

Estimated delay (msec)

7 / 15

Page 9: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Simulator• A public blockchain “network” simulator

– developed by Distributed Systems Group, Tokyo Tech, and– released in June 2019.

• It simulates transmission of blocks between nodes over Internet, and PoW mining timein an event‐driven style.   It will provides a visualizer.

• It simulates Bitcoin, Litecoin and Dogecoin.• Researches :

010002000

3000400050006000

700080009000

10000

0% 1% 5% 10% 50%

Med

ian bloc

k prop

agation time (m

sec)

Participation ratio

All nodes

Non‐participating nodes

Participating node

010002000

3000400050006000

700080009000

10000

0% 1% 5% 10% 50%

Med

ian bloc

k prop

agation time (m

sec)

Participation ratio

All nodes

Non‐participating nodes

Participating node

7400

7900

8400

8900

9400

0 2000 4000 6000 8000 10000

Med

ian bloc

k prop

agation time (m

sec)

The number of blocks

Normal Bitcoin algorithm

Proposed algorithm

7400

7900

8400

8900

9400

0 2000 4000 6000 8000 10000

Med

ian bloc

k prop

agation time (m

sec)

The number of blocks

Normal Bitcoin algorithm

Proposed algorithm

Neighbor selection Measurement of relay networks

[大月 2019a][Otsuki 2019b] [青木 2019c] [Aoki 2019d]

[青木 2019a] [Aoki 2019b] [Banno 2019]

8 / 15

Page 10: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Simulator

Visualizer

Demoat IEEE ICBC 2019in Seoul

Web site

Bitcoin network,scaled down to 600 nodes for demo

[青木 2019a] [Aoki 2019b] [Banno 2019]

9 / 15

Article on IEEE Spectrum

Page 11: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Proximity Neighbor Selection• Each node selects faster nodes as its neighbors.

– A major technique in the peer‐to‐peer field.E.g. Our trial for PNS in DHT [ISCC’13].

• Technique– Each node scores all the nodes that delivered a block to it.• score = time‐weighted average of(delivery_time – generation_time) of every blocks

– A node reselects its neighbors per 10 blocks.• But the node selects K nodes randomly from all the nodes it knows. Otherwise, a node has no distant neighbors and a block does not go far.

• K = 1, and P (the weight of the last propagation time) = 0.3based on a preliminary experiment

10 / 15

[青木 2019c] [Aoki 2019d]

Page 12: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Proximity Neighbor Selection• Reduced from 11.5 sec to 8.5 sec

for slowly propagated blocks.

0%1%2%3%4%5%6%

45%50%

0 7000 8000 9000 10000 11000 12000 13000

提案⽅式

隣接ノード固定

Proposed technique

Fixed neighbors

Median block propagation time (msec)better

Reduced

[青木 2019c] [Aoki 2019d]

11 / 15

Page 13: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Measurement of relay networks• Relay networks

– Fast block propagation networks– bloXroute (2018), FIBRE (2016), Falcon (2016), BFRN (2014), …– bloXroute: A business started by Cornell U. guys who have been working on Falcon

[大月 2019a] [Otsuki 2019b]

A relay network

An usualblockchain network

• Effect ?– How much does it reduce orphan blocks ?– Does it improve mining success rate ?

(Because a node using a relay network receives blocks earlier.)

12 / 15

Page 14: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

• SimBlock simulates a very fast relay network in addition to a Bitcoin network.

• Network‐level :

Measurement of relay networks

better

Faster propagation ! Reduced orphan blocks!Blocks outside the main chaincaused by forks• So, how about node‐level ?

better

[大月 2019a] [Otsuki 2019b]

Utilization rate Utilization rate

Utilizing nodesNon‐utilizing nodes

Orpha

n block rate

Mean block prop

agation de

lay (m

sec)

13 / 15

Page 15: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

• Node‐level :

Measurement of relay networks

bette

r

better

Mining success rate did not change …

Reduced probability that a block a utilizing node generated becomes an orphan block !➡Mining income increased.

A relay network certainly benefits a miner.

[大月 2019a] [Otsuki 2019b]

Non‐utilizing nodes

Utilizing nodes

Orpha

n block rate

Non‐utilizing nodes

Utilizing nodes

Average # of 

succeede

d mining

Utilization rate Utilization rate

14 / 15

Page 16: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Researches onblockchain “network”

• Problems:Transaction confirmation– delay– throughput

• Various trials as the figure on the right

• Acknowledgments– This work was supported by 

SECOM Science and Technology Foundation.

– The work on delay estimation was supported by Kaula, Inc.

Relaynetworks

Blockchainsimulator

Neighbor selection

Measurement of relay

networks

Propagation delay estimation w/

network coordinates

Improvement ofTX confirmationthroughput

Improvement or preservation of security

Reduction of propagation time

CompactBlock Relay

Increase and adjustment ofblock gen. rate

[青木2019c][Aoki2019d]

[神田 2019a] [Kanda 2019b]

[青木 2019a] [Aoki 2019b] [Banno 2019]

[大月 2019a][Otsuki 2019b]

bloXroute, FIBRE, …

15 / 15

Page 17: Researches on Blockchain “Networks” · •A public blockchain “network” simulator – developed by Distributed Systems Group, Tokyo Tech, and – released in June 2019. •It

Papers• Our papers

– [Shudo 2018] “Towards Application Portability on Blockchains“, IEEE HotICN 2018, August 2018– [神田 2019a] “ビットコインネットワーク上でのデータ伝搬遅延推定”, 信学技報, Vol.118, No.481, IA2018‐77, pp.317‐

322, March 2019– [Kanda 2019b] “Estimation of Data Propagation Time on the Bitcoin Network”, AINTEC 2019, August 2019– [大月 2019a] “Bitcoinネットワークに対するリレーネットワークの影響”, 信学技報, Vol.118, No.481, IA2018‐76, pp.309‐

316, March 2019– [Otsuki 2019b] “Effects of a Simple Relay Network on the Bitcoin Network”, AINTEC 2019, 2019年 8月– [青木 2019a] “SimBlock: ブロックチェーンネットワークシミュレータ”, 信学技報, Vol.118, No.481, IA2018‐70, pp.219‐

224, March 2019– [Aoki 2019b] “SimBlock: A Blockchain Network Simulator“, CryBlock 2019, April 2019– [Banno 2019] “Simulating a Blockchain Network with SimBlock“, IEEE ICBC 2019, pp.3‐4, May 2019– [青木 2019c] “ブロックチェーンネットワークにおける隣接ノード選択”, 信学技報, Vol.118, No.481, IA2018‐71, pp.225‐

232, March 2019– [Aoki 2019d] “Proximity Neighbor Selection in Blockchain Networks“, IEEE Blockchain 2019, July 2019– [Miyao 2013] “A Method for Designing Proximity‐aware Routing Algorithms for Structured Overlays”, IEEE ISCC’13, 

July 2013

• Papers by others– [Li 2019] “Downsampling Blockchain Algorithm”, CryBlock 2019, April 2019– [Abe 2018] “Mitigating Bitcoin Node Storage Size By DHT”, AINTEC 2018, November 2018– “Secure High‐Rate Transaction Processing in Bitcoin”, FC’15, January 2015– [Dabek 2004] “Vivaldi: A Decentralized Network Coordinate System”, ACM SIGCOMM 2004, September 2004– [Chen 2007] “Pharos: A Decentralized and Hierarchical Network Coordinate System for Internet Distance Prediction”, 

IEEE GLOBECOM 2007, December 2007– “TxProbe: Discovering Bitcoin’s Network Topology Using Orphan Transactions”, FC’19, February 2019

References / 15