Cryptocurrencies bitcoin, blockchain & beyond Roger Wattenhofer - - PowerPoint PPT Presentation

cryptocurrencies
SMART_READER_LITE
LIVE PREVIEW

Cryptocurrencies bitcoin, blockchain & beyond Roger Wattenhofer - - PowerPoint PPT Presentation

Cryptocurrencies bitcoin, blockchain & beyond Roger Wattenhofer ETH Zurich Distributed Computing Group Cryptocurrencies What is Bitcoin? = + + Technology The Bank of Bitcoin The Bank of Bitcoin User Balance A 2 B 5 C 8


slide-1
SLIDE 1

ETH Zurich – Distributed Computing Group

Roger Wattenhofer

Cryptocurrencies

bitcoin, blockchain & beyond

slide-2
SLIDE 2
slide-3
SLIDE 3

Cryptocurrencies

slide-4
SLIDE 4
slide-5
SLIDE 5

What is Bitcoin?

+ + =

slide-6
SLIDE 6

Technology

slide-7
SLIDE 7

The Bank of Bitcoin

slide-8
SLIDE 8

The Bank of Bitcoin

User Balance A 2 B 5 C 8

slide-9
SLIDE 9

The Bank of Bitcoin

User Balance A 2 B 5 C 8

TX B − → A

slide-10
SLIDE 10

The Bank of Bitcoin

TX B − → A

User Balance A 2 4 B 5 3 C 8

slide-11
SLIDE 11

Opening an Account in Bitcoin

Private Key Public Key Address

slide-12
SLIDE 12

Transferring Bitcoins

TX: 41b221

slide-13
SLIDE 13

Transferring Bitcoins

TX: 41b221 B

0.1

slide-14
SLIDE 14

Transferring Bitcoins

TX: 41b221 B

0.1

A

4.798

A

4.899

slide-15
SLIDE 15

Transferring Bitcoins

TX: 41b221 B

0.1

A

4.798

A

4.899

slide-16
SLIDE 16

Transferring Bitcoins

TX: 41b221 B

0.1

A

4.798

A

4.899

Inputs Outputs

slide-17
SLIDE 17

Transferring Bitcoins

TX: 41b221 B

0.1

A

4.798

A

4.899

Inputs Outputs Fee

0.001

slide-18
SLIDE 18

Transferring Bitcoins

TX: 41b221 B

0.1

A

4.798

A

4.899

Inputs Outputs Fee

0.001

  • Prev. TX:

a1a53743

4.899

C

... 1

| Outputs

slide-19
SLIDE 19

Distributing the Bank

User Balance A 2 B 5 C 8

TX

slide-20
SLIDE 20

Distributing the Bank

slide-21
SLIDE 21

Distributing the Bank

TX

slide-22
SLIDE 22

Distributing the Bank

TX

slide-23
SLIDE 23

Distributing the Bank

slide-24
SLIDE 24

Distributing the Bank

slide-25
SLIDE 25

Let’s Buy a Snack

[Bamert, Decker, Elsen, W, Welten, 2013]

slide-26
SLIDE 26

Doublespending

TX A

1 1

Inputs

slide-27
SLIDE 27

Doublespending

TX A

1 1

Inputs TX’

1

slide-28
SLIDE 28

Doublespending

TX A

1 1

Inputs TX’

1

slide-29
SLIDE 29

Transaction Conflicts

slide-30
SLIDE 30

Transaction Conflicts

TX TX

slide-31
SLIDE 31

Transaction Conflicts

TX TX

slide-32
SLIDE 32

Transaction Conflicts

slide-33
SLIDE 33

Resolving Conflicts

slide-34
SLIDE 34

Resolving Conflicts

Green!

slide-35
SLIDE 35

Resolving Conflicts

slide-36
SLIDE 36

How to Choose a Leader?

slide-37
SLIDE 37

Proof-of-Work

TX TX TX TX

slide-38
SLIDE 38

Proof-of-Work

Block TX TX TX TX

slide-39
SLIDE 39

Proof-of-Work

Block H(Previous Block) TX TX TX TX

slide-40
SLIDE 40

Proof-of-Work

Block H(Previous Block) TX TX TX TX

I H(Block) → fd2e2055f117bfa261b5a6c7e11df367. . .

slide-41
SLIDE 41

Proof-of-Work

Block H(Previous Block) TX TX TX TX Nonce

I H(Block|0) → 094d66aa7c844a9dbb516a41259b5877. . .

slide-42
SLIDE 42

Proof-of-Work

Block H(Previous Block) TX TX TX TX Nonce

I H(Block|0) → 094d66aa7c844a9dbb516a41259b5877. . . I H(Block|1) → f2496854af8bf989171587a9259f634f. . .

slide-43
SLIDE 43

Proof-of-Work

Block H(Previous Block) TX TX TX TX Nonce

I H(Block|0) → 094d66aa7c844a9dbb516a41259b5877. . . I H(Block|1) → f2496854af8bf989171587a9259f634f. . . I H(Block|2) → aec87c0ca2e5eb3f23111092f1089ada. . .

slide-44
SLIDE 44

Proof-of-Work

Block H(Previous Block) TX TX TX TX Nonce

I H(Block|0) → 094d66aa7c844a9dbb516a41259b5877. . . I H(Block|1) → f2496854af8bf989171587a9259f634f. . . I H(Block|2) → aec87c0ca2e5eb3f23111092f1089ada. . . I H(Block|3) → 777f75b2a8ecfdc8026c236fc1d2ffa0. . .

. . .

I H(Block|961127) → 0000014823419622d4c133672a7d657e. . .

slide-45
SLIDE 45

The Blockchain

Time

slide-46
SLIDE 46

The Blockchain

Time

slide-47
SLIDE 47

Is Bitcoin stable?

slide-48
SLIDE 48

The Blockchain

Time

slide-49
SLIDE 49

The Blockchain

Time

slide-50
SLIDE 50

Propagation Speed

[Decker, W, 2013] http://bitcoinstats.com

slide-51
SLIDE 51

Propagation Speed

[Decker, W, 2013] http://bitcoinstats.com

slide-52
SLIDE 52

Blockchain Forks

1.69% [Decker, W, 2013]

slide-53
SLIDE 53

Aside: Mining Evolution

slide-54
SLIDE 54

Aside: Mining Evolution

slide-55
SLIDE 55

Aside: Mining Evolution

slide-56
SLIDE 56

500 MW

slide-57
SLIDE 57

Summary

TX Green! Block H(Previous Block) TX TX TX TX Nonce Time
slide-58
SLIDE 58

Stories

slide-59
SLIDE 59

How to Lose 500M

slide-60
SLIDE 60

Addressing Transaction Malleability: MtGox has detected unusual activity on its Bitcoin wallets and performed investigations during the past weeks.

slide-61
SLIDE 61

The MtGox Incident

I July 2010: First trade on MtGox I May 2011: Transaction malleability identified as low priority issue I February 7, 2014: MtGox halts withdrawals I February 10, 2014: MtGox announces loss of 850,000 bitcoins (620

millio USD) and cites transaction malleability as root cause

I February 28, 2014: MtGox files for bankruptcy I March 7 2014: MtGox finds 200,000 bitcoins I August 2015: MtGox CEO is arrested

slide-62
SLIDE 62

Signatures

61 af bb 4d e9 f8 b8 74 86 1e

slide-63
SLIDE 63

Signatures

00 00 61 af bb 4d e9 f8 b8 74 86 1e There are multiple ways to serialize a signature:

I Multiple push operations (1 byte, 2 byte, 4 byte) I Non-canonical DER encodings I Padding I . . .

slide-64
SLIDE 64

Transaction Malleability Attack

slide-65
SLIDE 65

Transaction Malleability Attack

TX TX
slide-66
SLIDE 66

Transaction Malleability Attack

TX TX TX
slide-67
SLIDE 67

Transaction Malleability Attack

slide-68
SLIDE 68

Transaction Malleability Attack

Red! TX?

slide-69
SLIDE 69

Transaction Malleability Attack

Refund

slide-70
SLIDE 70

Incident Timeline

[Decker, W, 2014]

slide-71
SLIDE 71

Incident Timeline

386 BTC [Decker, W, 2014]

slide-72
SLIDE 72
slide-73
SLIDE 73

Is Bitcoin Secure?

slide-74
SLIDE 74

Securing Your Bitcoins

[Bamert, Decker, W, 2013]

slide-75
SLIDE 75

Does Bitcoin Scale?

slide-76
SLIDE 76

The Bitcoin Ecosystem is Growing

slide-77
SLIDE 77

Scalability Limits

I Disk space: < 500 transactions per second

slide-78
SLIDE 78

Scalability Limits

I Disk space: < 500 transactions per second I Processing power: < 200 transactions per second

slide-79
SLIDE 79

Scalability Limits

I Disk space: < 500 transactions per second I Processing power: < 200 transactions per second I Network bandwidth: < 100 transactions per second

slide-80
SLIDE 80

Scalability Limits

I Disk space: < 500 transactions per second I Processing power: < 200 transactions per second I Network bandwidth: < 100 transactions per second I Artificial 1MB limit: < 3 transactions per second

slide-81
SLIDE 81

Scalability Limits

I Disk space: < 500 transactions per second I Processing power: < 200 transactions per second I Network bandwidth: < 100 transactions per second I Artificial 1MB limit: < 3 transactions per second

Today:

I Bitcoin: 1 transaction per second I Credit Cards: > 10, 000 transactions per second

slide-82
SLIDE 82

Payment Network

slide-83
SLIDE 83

Payment Network

slide-84
SLIDE 84

Payment Network

slide-85
SLIDE 85

Micropayment Channels

5

slide-86
SLIDE 86

Micropayment Channels

5 5

slide-87
SLIDE 87

Micropayment Channels

5 5 T=100 5

slide-88
SLIDE 88

Micropayment Channels

5 5 T=100 5

slide-89
SLIDE 89

Micropayment Channels

5 5 T=100 5

slide-90
SLIDE 90

Micropayment Channels

5 5 T=100 5 5

slide-91
SLIDE 91

Micropayment Channels

5 5 T=100 5 5 4 1

slide-92
SLIDE 92

Micropayment Channels

5 5 T=100 5 5 4 1 3 2

slide-93
SLIDE 93

Micropayment Channels

5 5 T=100 5 5 4 1 3 2

slide-94
SLIDE 94

Duplex Micropayment Channels

Setup Invalidation Tree Micropayment Channels

T = 100 T = 100 T = 100 T = 99 T = 100 T = 100 T = 99 T = 100 T = 99

slide-95
SLIDE 95

Summary

Red! TX? Refund T = 100 T = 100 T = 100 T = 99 T = 100 T = 100 T = 99 T = 100 T = 99
slide-96
SLIDE 96

Economy

slide-97
SLIDE 97

BTC in USD

slide-98
SLIDE 98

Inflation

slide-99
SLIDE 99

Fungibility

=

?

slide-100
SLIDE 100

Improving Bitcoin?

saver miner payer payee relay

slide-101
SLIDE 101

What is Money?

slide-102
SLIDE 102

What is Money?

slide-103
SLIDE 103

Summary

slide-104
SLIDE 104

Thank You!

Questions & Comments?

www.disco.ethz.ch

Thanks to my co-author Christian Decker