Does a Blockchain Need Altruism? Roger Wattenhofer ETH Zurich - - PowerPoint PPT Presentation

does a blockchain need altruism
SMART_READER_LITE
LIVE PREVIEW

Does a Blockchain Need Altruism? Roger Wattenhofer ETH Zurich - - PowerPoint PPT Presentation

Does a Blockchain Need Altruism? Roger Wattenhofer ETH Zurich Distributed Computing Group Do You Trust the Miners? Modeling Distributed Systems A ltruistic R ational C rash B yzantine Modeling Distributed Systems C rash R ational A ltruistic


slide-1
SLIDE 1

ETH Zurich – Distributed Computing Group

Roger Wattenhofer

Does a Blockchain Need Altruism?

slide-2
SLIDE 2

Do You Trust the Miners?

slide-3
SLIDE 3
slide-4
SLIDE 4

Byzantine Altruistic Rational Crash

Modeling Distributed Systems

slide-5
SLIDE 5

Byzantine Altruistic Rational Crash

Who are the Miners?

Modeling Distributed Systems

slide-6
SLIDE 6

“The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes.”

slide-7
SLIDE 7

Mining is a Rational Business

slide-8
SLIDE 8

Mining is a Rational Business

slide-9
SLIDE 9

2009 2013 2018

Selfish Mining Timeline

2010

slide-10
SLIDE 10

Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 …

What is Selfish Mining

slide-11
SLIDE 11

Analysis

Simpler

slide-12
SLIDE 12

Original Algorithm

slide-13
SLIDE 13

Somewhat Simpler Algorithm

slide-14
SLIDE 14

Tx_0 Tx_1 … Tx_0 Tx_1 …

𝑒𝑞 > 𝑒𝑡

slide-15
SLIDE 15

Somewhat Simpler Algorithm

slide-16
SLIDE 16

Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 …

𝑒𝑞 = 𝑒𝑡 − 1

slide-17
SLIDE 17

Somewhat Simpler Algorithm

slide-18
SLIDE 18

Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 … Tx_0 Tx_1 …

𝑒𝑞 = 𝑒𝑡

slide-19
SLIDE 19

State Machine (Original & Simpler)

= 1 − 𝛽 𝛽: probability that selfish miner finds a block

slide-20
SLIDE 20

Stationary Distribution

slide-21
SLIDE 21

Computation…

slide-22
SLIDE 22

All 𝛾 Transitions

0 → 0: Block for honest miners 𝑗 + 1 → 𝑗 : Block for selfish miner (for 𝑗 > 2) 2 → 0: Two blocks for selfish miner 1 → 0: Race who wins next block with probability 𝛽 two blocks for selfish miner with probability 𝛾(1 − 𝛿) two blocks for honest miners with probability 𝛾𝛿 one block each

𝛿: probability that honest miners append block to selfish miner’s block (in race)

slide-23
SLIDE 23

Ratio of Selfish Blocks in Chain

𝛿: probability that honest miners append block to selfish miner’s block (in race)

slide-24
SLIDE 24

Selfish Miner Share

slide-25
SLIDE 25

Selfish Miner Share

𝛿 = 0: break even at 𝛽 = 1/3 𝛿 = 0.5: break even at 𝛽 = 1/4 𝛿 = 1: break even at 𝛽 > 0

slide-26
SLIDE 26

A Blockchain Without Altruism?

[Joint Work with Jakub Sliwinski]

slide-27
SLIDE 27

Simple Chains Are Too Simple

slide-28
SLIDE 28

Better: Expose Competition

slide-29
SLIDE 29

Our Rational Blockchain

slide-30
SLIDE 30

Always Refer to All Childless Blocks

slide-31
SLIDE 31

Only One Type of Reference

(Heaviest Reference is Your “Parent”)

slide-32
SLIDE 32

2 3 4 5 6

Block Ordering is Recursive

1

slide-33
SLIDE 33

Incentives

slide-34
SLIDE 34

Why Miners Should Always Refer to All Childless Blocks?

slide-35
SLIDE 35

Because of our Block Rewards!

slide-36
SLIDE 36

It’s Somewhat Complicated…

slide-37
SLIDE 37

Reward = 0.71 Reward = 0.71 Reward = 1

Motivating Block Rewards I

Reward = 1 Reward = 0.34 Reward = 1

slide-38
SLIDE 38

Reward = 0.72 Reward = 0.45 Reward = 0.91 Reward = 0.69

Motivating Block Rewards II

slide-39
SLIDE 39

Our Solution

slide-40
SLIDE 40

1 1

Block Penalty Example

slide-41
SLIDE 41

1 0.5 0.5

Block Penalty Example

slide-42
SLIDE 42

1 1 0.66 0.66 0.66 1 0.5 0.5

Block Penalty Example

slide-43
SLIDE 43

The Penalty Algorithm

slide-44
SLIDE 44

The Penalty Algorithm

slide-45
SLIDE 45

The Penalty Algorithm

1 1 1 1 1 1 1 1 0.66 0.66 0.66 0.66 0.66 0.33 0.33

slide-46
SLIDE 46

Transaction Fees

slide-47
SLIDE 47

A  B fee = 10 A  B fee = 10

slide-48
SLIDE 48

A  B fee/2 = 5 A  B fee/2 = 5

slide-49
SLIDE 49

“The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes.”

rational

slide-50
SLIDE 50

Thank You!

Questions & Comments?

www.disco.ethz.ch Thanks to Jakub Sliwinski