Information Propagation in the Bitcoin Network · Information Propagation in the Bitcoin Network...

Post on 25-Feb-2019

218 views 0 download

Transcript of Information Propagation in the Bitcoin Network · Information Propagation in the Bitcoin Network...

Information Propagationin the Bitcoin Network

Christian Decker

ETH Zurich – Distributed Computing Group – www.disco.ethz.ch

What is Bitcoin?

+ =

What is Bitcoin?

+

=

What is Bitcoin?

+ =

What’s it worth?

Oct 2010

Feb 2011

Jun 2011

Oct 2011

Feb 2012

Jun 2012

Oct 2012

Feb 2013

Jun 20130

50

100

150

200

250

300Pri

ce [

USD

]

USD / Bitcoin exchange price

150$/BTC

What’s it worth?

Oct 2010

Feb 2011

Jun 2011

Oct 2011

Feb 2012

Jun 2012

Oct 2012

Feb 2013

Jun 20130

50

100

150

200

250

300Pri

ce [

USD

]

USD / Bitcoin exchange price

150$/BTC

What’s it worth?

Oct 2010

Feb 2011

Jun 2011

Oct 2011

Feb 2012

Jun 2012

Oct 2012

Feb 2013

Jun 20130

50

100

150

200

250

300Pri

ce [

USD

]

USD / Bitcoin exchange price

150$/BTC

What’s it worth?

Oct 2010

Feb 2011

Jun 2011

Oct 2011

Feb 2012

Jun 2012

Oct 2012

Feb 2013

Jun 20130

50

100

150

200

250

300Pri

ce [

USD

]

USD / Bitcoin exchange price

150$/BTC

Why so popular?

• Global

• Fast

• Irreversible

• No intermediary

• Anonymous

Bitcoin Basics

Bitcoin basics

TX

TX’

TX”

Bitcoin basics

TX

TX’

TX”

Bitcoin basics

TX

TX’

TX”

Bitcoin basics

TX

TX’

TX”

Bitcoin basics

TX

TX’

TX”

Our Results

Propagation speed

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

Propagation speed

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

50thp

erc.

Propagation speed

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

50thp

erc.

95thp

erc.

Propagation speed

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

Information eclipsing

Information eclipsing

Information eclipsing

Information eclipsing

Blockchain Basics

The Blockchain

Time

The Blockchain

Time

The Blockchain

Time

The Blockchain

Time

Our Results

Blockchain Forks

180000 182000 184000 186000 188000 190000Blockchain Height

0

2

4

6

8

10

12

Fork

sBlockchain forks

1.69%

Blockchain Forks

180000 182000 184000 186000 188000 190000Blockchain Height

0

2

4

6

8

10

12

Fork

sBlockchain forks

1.69%

Blockchain Forks: Model

Probability of finding a block:

Pb = Pr [Xb < t + 1|Xb ≥ t] ≈ 1/600

Part of the network that may fork:

f (t) = fraction of network knowing block at time t

Probability of a blockchain fork

Pf = 1− (1− Pb)∫∞

0 (1−f (t))dt

Blockchain Forks: Model

Probability of finding a block:

Pb = Pr [Xb < t + 1|Xb ≥ t] ≈ 1/600

Part of the network that may fork:

f (t) = fraction of network knowing block at time t

Probability of a blockchain fork

Pf = 1− (1− Pb)∫∞

0 (1−f (t))dt

Blockchain Forks: Model

Probability of finding a block:

Pb = Pr [Xb < t + 1|Xb ≥ t] ≈ 1/600

Part of the network that may fork:

f (t) = fraction of network knowing block at time t

Probability of a blockchain fork

Pf = 1− (1− Pb)∫∞

0 (1−f (t))dt

Blockchain Forks: Validating our Model

Pb = 1/633.68

F̄ =

∫ ∞0

(1− f (t))dt = 11.37

Pf = 1− (1− Pb)F̄ = 1.78%

Pushing the protocol to its limits

Pushing the protocol to its limits

Node A

Node B

block

verification

inv

getd

ata block

diff verification

inv

getd

ata block

diff verification

inv

getd

ata

inv

getd

ata block

Pushing the protocol to its limits

Node A

Node B

block

verification

inv

getd

ata block

diff verification

inv

getd

ata block

diff verification

inv

getd

ata

inv

getd

ata block

Pushing the protocol to its limits

Node A

Node B

block

verification

inv

getd

ata block

diff verification

inv

getd

ata block

diff verification

inv

getd

ata

inv

getd

ata block

Did it work?

180000 182000 184000 186000 188000 190000Blockchain Height

0

2

4

6

8

10

12

Fork

sBlockchain forks

1.69%

Did it work?

200000 202000 204000 206000 208000 210000Blockchain Height

0

2

4

6

8

10

12

Fork

sBlockchain forks (influenced)

1.69%

0.78%

What does this mean?

What does this mean?

Conclusion

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

Conclusion

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

Conclusion

0 10 20 30 40 50 60Time since first observation [s]

0.00

0.02

0.04

0.06

0.08

0.10

0.12

PDF

Block propagation

Thank you, questions?

Authors:Christian DeckerRoger Wattenhofer

ETH Zurich – Distributed Computing Group – www.disco.ethz.ch