SELFISH MINING RE-EXAMINED Kevin Alarcn Negy 1 , Peter Rizun 2 , - - PowerPoint PPT Presentation

selfish mining
SMART_READER_LITE
LIVE PREVIEW

SELFISH MINING RE-EXAMINED Kevin Alarcn Negy 1 , Peter Rizun 2 , - - PowerPoint PPT Presentation

SELFISH MINING RE-EXAMINED Kevin Alarcn Negy 1 , Peter Rizun 2 , Emin Gn Sirer 1 1 Computer Science Department, Cornell University 2 Bitcoin Unlimited Bitcoin folk theorems Incentive compatibility Hash power is proportional to winnings


slide-1
SLIDE 1

SELFISH MINING RE-EXAMINED

Kevin Alarcón Negy1, Peter Rizun2, Emin Gün Sirer1

1Computer Science Department, Cornell University 2Bitcoin Unlimited

slide-2
SLIDE 2

Bitcoin folk theorems

■ Incentive compatibility ■ Hash power is proportional to winnings ■ Joining a mining pool does not increase chance of winning

slide-3
SLIDE 3

Selfish mining

■ Showed that deviant mining could be more profitable than following the Bitcoin protocol for minority miners ■ The original selfish mining analysis focused only on profitability in the domain

  • f Bitcoin

■ There are ~2000 cryptocurrencies, with different difficulty adjustment algorithms ■ Profitability depends on difficulty adjustment algorithm (DAA)

slide-4
SLIDE 4

Critiques of selfish mining

■ Over the years, critics have denied the feasibility of selfish mining with a variety of arguments ■ Ignoring outlandish claims, two worth examining are:

  • 1. Selfish mining is unprofitable because it does not increase per time-unit

profits

  • 2. Selfish mining must persist post-difficulty adjustment to be profitable
slide-5
SLIDE 5

Our contributions

■ We show that these arguments are false ■ Introduce intermittent selfish mining strategy, which shows that a selfish miner can profit without continuing the attack past a difficulty adjustment ■ Provide comparative analysis of BTC, ETH, XMR, and BCH/BSV DAAs ■ Analyze per time-unit profitability of selfish mining with these DAAs

slide-6
SLIDE 6

Intermittent selfish mining

■ Alternate between selfish and honest mining to manipulate block difficulty ■ Phase se one: Selfishly mine to amplify time to next difficulty adjustment ■ Phase se two: Switch to honest mining to profit from lower difficulty ■ Phase two benefits all miners by increase block mint rate

slide-7
SLIDE 7

Intermittent selfish mining illustrated

slide-8
SLIDE 8

Difficulty vs. timestep

An intermittent selfish miner (ISM) causes difficulty to oscillate every adjustment period.

slide-9
SLIDE 9

Block win-rate vs. timestep

An ISM with α = 49% doubles the number of blocks to adjust difficulty, then immediately profits.

slide-10
SLIDE 10

Block win-rate vs. timestep

An ISM with α = 49% doubles the number of blocks to adjust difficulty, then immediately profits.

slide-11
SLIDE 11

Block win-rate vs. timestep

An ISM with α = 49% doubles the number of blocks to adjust difficulty, then immediately profits.

Difficulty adjustment

slide-12
SLIDE 12

Block win-rate vs. hash rate

When γ = 0, an ISM with α = 37% earns more than through honest mining per time-unit.

slide-13
SLIDE 13

Difficulty Adjustment Algorithm Analysis

slide-14
SLIDE 14
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
  • 1. Period-based
slide-15
SLIDE 15
  • 1. Period-based
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-16
SLIDE 16
  • 1. Period-based

Bitcoin: 𝑥 = 2016

  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-17
SLIDE 17
  • 1. Period-based

Bitcoin: τ𝑞 =

τ𝑞−1∗ 𝐺𝑢𝑗𝑛𝑓−𝐸𝑢𝑗𝑛𝑓 (τ𝑓𝑦𝑞.∗𝑥)

  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-18
SLIDE 18
  • 2. Incrementally-extrapolated
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-19
SLIDE 19
  • 2. Incrementally-extrapolated
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-20
SLIDE 20
  • 2. Incrementally-extrapolated

Ethereum: τ𝐻 = τ𝐺 +

τ𝐺 2048 ∗ 1 − 𝐻𝑢𝑗𝑛𝑓−𝐺𝑢𝑗𝑛𝑓 9

  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-21
SLIDE 21
  • 2. Incrementally-extrapolated

Ethereum: τ𝐻 = τ𝐺 +

τ𝐺 2048 ∗ 1 − 𝐻𝑢𝑗𝑛𝑓−𝐺𝑢𝑗𝑛𝑓 9

Adjustment factor

  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-22
SLIDE 22
  • 3. Sliding-window
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-23
SLIDE 23
  • 3. Sliding-window
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window
slide-24
SLIDE 24
  • 3. Sliding-window
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window

BSV/BCH: 𝑥 = 144 XMR: 𝑥 = 600

slide-25
SLIDE 25
  • 3. Sliding-window
  • Period-based
  • Incrementally-extrapolated
  • Sliding-window

BSV/BCH:

෌𝑗=𝑜

𝑜+𝑥 τ𝑗

𝐻𝑢𝑗𝑛𝑓−𝐷𝑢𝑗𝑛𝑓

XMR:

෌𝑗=𝑜

𝑜+𝑥 τ𝑗 ∗120+ 𝐻𝑢𝑗𝑛𝑓−𝐷𝑢𝑗𝑛𝑓 −1

𝐻𝑢𝑗𝑛𝑓−𝐷𝑢𝑗𝑛𝑓

slide-26
SLIDE 26

Evaluation

■ How effective are DAAs at adjusting difficulty if a substantial amount

  • f hash power is introduced to the network?

■ How does difficulty affect the block win-rate of a new miner? ■ How do these DAAs react to a new selfish miner?

slide-27
SLIDE 27

Difficulty adjustment with a new honest miner

slide-28
SLIDE 28

Block win-rate of a new honest miner

slide-29
SLIDE 29

Block win-rate of a new selfish miner

slide-30
SLIDE 30

Relative revenue of a new selfish miner

slide-31
SLIDE 31

Findings

■ Selfish mining does not need to persist past a difficulty adjustment to be profitable ■ Above a threshold, selfish mining is profitable per time-unit regardless

  • f DAA choice

■ The choice of DAAs can exacerbate the selfish mining threat ■ Ethereum is vulnerable due to uncle block rewards

slide-32
SLIDE 32

Summary

■ Introduced novel intermittent selfish mining strategy ■ Provided a taxonomy for difficulty adjustment algorithms ■ Analyzed the profitability of selfish mining with various DAAs

slide-33
SLIDE 33
slide-34
SLIDE 34

Whither selfish mining?

■ Deviant miners do not self-report ■ Miners have stake in the system and after-effects are unknown ■ Miners may lack know-how to implement selfish mining ■ For popular cryptocurrencies, the hash power required is too expensive for a single adversary to acquire

slide-35
SLIDE 35

Gamma values

■ γ : proportion of honest miners who mine on the selfish block in a fork ■ γ = 1 : selfish miner wins all forks ■ γ = 0 : selfish miner loses all forks ■ γ < 0 : nonsense

slide-36
SLIDE 36

Difficulty adjustment with a new selfish miner

slide-37
SLIDE 37

Difficulty adjustment with an existing selfish miner

slide-38
SLIDE 38

Block win-rate of an existing selfish miner

slide-39
SLIDE 39

Block win-rate of an existing selfish miner