Attacks on PoW systems
1
Yujin Kwon KAIST
Attacks on PoW systems Yujin Kwon KAIST 1 Various Attacks Double - - PowerPoint PPT Presentation
Attacks on PoW systems Yujin Kwon KAIST 1 Various Attacks Double Spending Generate forks intentionally Selfish mining Generate forks intentionally Majority Is Not Enough: Bitcoin Mining Is Vulnerable, FC 2014
1
Yujin Kwon KAIST
– Generate forks intentionally
– Generate forks intentionally
– Exploit the pools’ protocol – It is possible to launch the BWH attack each other.
CSF 2016
– Generate forks intentionally through pools
2
– Generate forks intentionally
– Generate forks intentionally
– Exploit the pools’ protocol – It is possible to launch the BWH attack each other.
CSF 2016
– Generate forks intentionally through pools
3
Ittay Eyal Cornell University 2015 IEEE Symposium on Security and Privacy
5 AntPool
23% 23% F2Pool 11% 11% BitFury 11% 11% BTCC 11% 11% Slush 7% 7%
BW.COM COM
7% 7%
BTC.COM C.COM
7% 7% Others rs 23% 23%
Bitcoin Ethereum Litecoin
Ethpool
27% 27% F2Pool 23% 23% nano 11% 11% MPH 10% 10% Ethfans ans 8% 8% Others rs 21% 21% AntPool
30% 30% F2Pool 30% 30% LTC.top 10% 10% ViaBTC 10% 10%
BW.COM COM
6% 6% Litecoi
6% 6% Others rs 8% 8%
6
𝐼(𝑑𝑝𝑜𝑢𝑓𝑜𝑢𝑡| 𝑜𝑝𝑜𝑑𝑓 < 𝑢𝑏𝑠𝑓𝑢 ?
7
463 125 352 432
8
9
463 125 352 432
Withhold
– “This has no direct benefit for the attacker, only causing harm to the pool
– “They showed that an attacker can earn profit by this attack”
– “Attack strategy && game theory”
10
11
Solo Pool Pool
BWH Attack Mining Attacker
15
19
21
From “The Miner’s Dilemma”
24
Tar arge get t poo
Pool Pool Solo
Mining Submit an FPoW to the pool only if others generate another block. Otherwise, throw her FPoW. Attacker Others rs
25
Tar arge get t poo
Pool Pool Solo
Mining Attacker Others rs
Submit an FPoW to the pool only if others generate another block. Otherwise, throw her FPoW.
26
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
27
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
28
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
29
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
30
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
31
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
FAW/ W/ BWH Attack acker er Victim ctim Othe hers rs
32
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
Victim ctim Othe hers rs
Attack acker er
33
Blockch
ain New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
(N+1)-th th Block
Victim ctim Othe hers rs
Attack acker er
34
Blockch
ain Attacker’s Ne New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
Attack acker er Victim ctim Othe hers rs Others’ Ne New Block
(N+1)-th th Block
35
Blockch
ain Attacker’s Ne New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
Attack acker er Victim ctim Othe hers rs
Others’ Ne New Block
(N+1)-th th Block
36
Blockch
ain Attacker’s Ne New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
Attack acker er Victim ctim Othe hers rs
Others’ Ne New Block
(N+1)-th th Block
37
Blockch
ain Attacker’s Ne New Block
(N (N-1) 1)-th th Block
N-th th Bloc
k
Attack acker er Victim ctim Othe hers rs
Others’ Ne New Block
(N+1)-th th Block
– 𝛽: Computational power of the attacker – 𝛾: Total computational power of a victim pool – 𝛿: The infiltration mining power divided by 𝛽 – 𝑑: Attacker′s network capability – 𝑆𝑏 𝑆𝑞 : An attacker’s (The victim′s) reward
38
39
40
41
42
43
44
– Two-phase proof-of-work – Not backward compability
45
46