bitcoin without extra slides - tik › file › da14cd8d9f298b03ca4804d56ca12ec0...themtgoxincident...

105

Upload: others

Post on 31-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'()* – +(,-'(.&-/0$1234&-(56$7'2&4

826/'$9:--/5*2;/'

1'<4-2)&''/5)(/,;'23$-/)*52=26<$-2$/)2523<

Page 2: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue
Page 3: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'("")*'+),

Page 4: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue
Page 5: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

What is Bitcoin?

+ + =

Page 6: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

«Satoshi Nakamoto»

Page 7: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'&()

Page 8: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Bank of Bitcoin

Page 9: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Bank of Bitcoin

User Balance

A 2

B 5

C 8

Page 10: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Bank of Bitcoin

User Balance

A 2

B 5

C 8

TXB −→ A

Page 11: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Bank of Bitcoin

TXB −→ A

User Balance

A 2 4

B 5 3

C 8

Page 12: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Opening an Account in Bitcoin

Private Key Public Key Address

Page 13: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

Page 14: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

Page 15: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

A4.798

A4.899

Page 16: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

A4.798

A4.899

Page 17: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

A4.798

A4.899

Inputs Outputs

Page 18: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

A4.798

A4.899

Inputs OutputsFee

0.001

Page 19: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transferring Bitcoins

TX: 41b221

B0.1

A4.798

A4.899

Inputs OutputsFee

0.001

Prev. TX:

a1a53743

4.899

0

C...

1

|Outputs

Page 20: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

User Balance

A 2

B 5

C 8

TX

Page 21: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

Page 22: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

TX

Page 23: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

TX

Page 24: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

Page 25: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Distributing the Bank

Page 26: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Let’s Buy a Snack

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

Page 27: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Doublespending

TX

A

1

1

Inputs

Page 28: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Doublespending

TX

A

1

1

Inputs

TX’

1

Page 29: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Doublespending

TX

A

1

1

Inputs

TX’

1

Page 30: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Conflicts

Page 31: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Conflicts

TX

TX

Page 32: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Conflicts

TX

TX

Page 33: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Conflicts

Page 34: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Resolving Conflicts

Page 35: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Resolving Conflicts

Green!

Page 36: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Resolving Conflicts

Page 37: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

How to Choose a Leader?

Page 38: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

TX TX TX TX

Page 39: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

TX TX TX TX

Page 40: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX

Page 41: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX

◮ H(Block) → fd2e2055f117bfa261b5a6c7e11df367. . .

Page 42: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX Nonce

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

Page 43: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX Nonce

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

◮ H(Block|1) → f2496854af8bf989171587a9259f634f. . .

Page 44: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX Nonce

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

◮ H(Block|1) → f2496854af8bf989171587a9259f634f. . .

◮ H(Block|2) → aec87c0ca2e5eb3f23111092f1089ada. . .

Page 45: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Proof-of-Work

Block

H(Previous Block) TX TX TX TX Nonce

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

◮ H(Block|1) → f2496854af8bf989171587a9259f634f. . .

◮ H(Block|2) → aec87c0ca2e5eb3f23111092f1089ada. . .

◮ H(Block|3) → 777f75b2a8ecfdc8026c236fc1d2ffa0. . ....

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

Page 46: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Blockchain

Time

Page 47: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Blockchain

Time

Page 48: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Is Bitcoin stable?

Page 49: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Blockchain

Time

Page 50: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Blockchain

Time

Page 51: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Propagation Speed

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

Page 52: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Propagation Speed

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

Page 53: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Blockchain Forks

1.69%

[Decker, W, 2013]

Page 54: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Aside: Mining Evolution

Page 55: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Aside: Mining Evolution

Page 56: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Aside: Mining Evolution

Page 57: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

*++,-.

Page 58: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Summary

TX

Green!

Block

H(Previous Block) TX TX TX TX Nonce

Time

Page 59: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'

Page 60: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

How to Lose 500M

Page 61: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Addressing Transaction Malleability: MtGox has detected

unusual activity on its Bitcoin wallets and performed

investigations during the past weeks.

Page 62: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The MtGox Incident

◮ July 2010: First trade on MtGox

◮ May 2011: Transaction malleability identified as low priority issue

◮ February 7, 2014: MtGox halts withdrawals

◮ February 10, 2014: MtGox announces loss of 850,000 bitcoins (620millio USD) and cites transaction malleability as root cause

◮ February 28, 2014: MtGox files for bankruptcy

◮ March 7 2014: MtGox finds 200,000 bitcoins

◮ August 2015: MtGox CEO is arrested

Page 63: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Signatures

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

Page 64: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Signatures

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

There are multiple ways to serialize a signature:

◮ Multiple push operations (1 byte, 2 byte, 4 byte)

◮ Non-canonical DER encodings

◮ Padding

◮ . . .

Page 65: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

Page 66: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

TX

TX

Page 67: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

TX

TX

TX

Page 68: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

Page 69: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

Red!

TX?

Page 70: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Transaction Malleability Attack

Refund

Page 71: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Incident Timeline

[Decker, W, 2014]

Page 72: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Incident Timeline

386 BTC

[Decker, W, 2014]

Page 73: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue
Page 74: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Is Bitcoin Secure?

Page 75: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Securing Your Bitcoins

[Bamert, Decker, W, 2013]

Page 76: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Does Bitcoin Scale?

Page 77: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

The Bitcoin Ecosystem is Growing

Page 78: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Scalability Limits

◮ Disk space: < 500 transactions per second

Page 79: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Scalability Limits

◮ Disk space: < 500 transactions per second

◮ Processing power: < 200 transactions per second

Page 80: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Scalability Limits

◮ Disk space: < 500 transactions per second

◮ Processing power: < 200 transactions per second

◮ Network bandwidth: < 100 transactions per second

Page 81: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Scalability Limits

◮ Disk space: < 500 transactions per second

◮ Processing power: < 200 transactions per second

◮ Network bandwidth: < 100 transactions per second

◮ Artificial 1MB limit: < 3 transactions per second

Page 82: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Scalability Limits

◮ Disk space: < 500 transactions per second

◮ Processing power: < 200 transactions per second

◮ Network bandwidth: < 100 transactions per second

◮ Artificial 1MB limit: < 3 transactions per second

Today:

◮ Bitcoin: 1 transaction per second

◮ Credit Cards: > 10, 000 transactions per second

Page 83: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Payment Network

Page 84: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Payment Network

Page 85: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Payment Network

Page 86: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5

Page 87: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

Page 88: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

Page 89: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

Page 90: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

Page 91: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

5

0

Page 92: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

5

0

4

1

Page 93: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

5

0

4

1

3

2

Page 94: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Micropayment Channels

5 5

T=100 5

5

0

4

1

3

2

Page 95: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

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

Page 96: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

Summary

Red!

TX?Refund

T = 100 T = 100 T = 100

T = 99 T = 100 T = 100

T = 99 T = 100

T = 99

Page 97: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

/#&%&0)

Page 98: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

1!2,3%,456

Page 99: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

7%8'9:3&%

Page 100: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&%'%()

*+

Page 101: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

70;<&=3%(,13:#&3%>

?9="< 03%"<

;9)"< ;9)""

<"'9)

Page 102: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'%()*+,-

Page 103: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"#$%&'%()*+,-

Page 104: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!"##$%&

Page 105: bitcoin without extra slides - TIK › file › da14cd8d9f298b03ca4804d56ca12ec0...TheMtGoxIncident July2010: FirsttradeonMtGox May2011: Transactionmalleabilityidentifiedaslowpriorityissue

!$9%@,A&BCDB"?:3&%?,E,2&00"%:?>

FFFGH3?#&G":$IG#$

!$9%@?,:&,0),#&J9B:$&<

2$<3?:39%,6"#@"<