Information Propagation in the Bitcoin Network · 6 8 10 12 Forks Blockchain forks 1.69%....
Transcript of Information Propagation in the Bitcoin Network · 6 8 10 12 Forks Blockchain forks 1.69%....
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
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
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
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
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
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
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
Block propagation
Thank you, questions?
Authors:Christian DeckerRoger Wattenhofer
ETH Zurich – Distributed Computing Group – www.disco.ethz.ch