the graph of transactions in the iota cryptocurrency graph of...ref to block 1 block of data 3 ref...

106
©2015 ICube The graph of transactions in the IOTA cryptocurrency Jun, 20 th , 2018, Clermont-Ferrand Quentin Bramas [email protected] 1

Upload: others

Post on 22-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

©2015ICube

The graph of transactions in the IOTA cryptocurrency

Jun, 20th, 2018, Clermont-Ferrand

Quentin Bramas [email protected]

1

Page 2: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Talk ChainIntroduction

2

The Tangle

Unconfirmed Transactions

Parasite Chain Attack

Conclusion

Page 3: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

3

Data is distributed :

Page 4: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

3

Data is distributed :no single point of failure

Page 5: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

3

Data is distributed :no single point of failureno central Authority

Page 6: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

3

Data is distributed :no single point of failureno central Authorityno need to trust the others

Page 7: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

3

Data is distributed :no single point of failureno central Authorityno need to trust the others

I want to add some data

Page 8: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

4

Blockchain:

Block of data 1 Block of data 2

ref to block 1

Block of data 3

ref to block 2

Page 9: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

4

Basic principle of the Bitcoin Protocol :

Blockchain:

Block of data 1 Block of data 2

ref to block 1

Block of data 3

ref to block 2

Page 10: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

4

Basic principle of the Bitcoin Protocol : - Choose randomly one node

Blockchain:

Block of data 1 Block of data 2

ref to block 1

Block of data 3

ref to block 2

Page 11: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

4

Basic principle of the Bitcoin Protocol : - Choose randomly one node

The more computing power, the more chance you have to be selected

Blockchain:

Block of data 1 Block of data 2

ref to block 1

Block of data 3

ref to block 2

Page 12: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

4

Basic principle of the Bitcoin Protocol : - Choose randomly one node- This node decides what to write in the Blockchain

The more computing power, the more chance you have to be selected

Blockchain:

Block of data 1 Block of data 2

ref to block 1

Block of data 3

ref to block 2

Page 13: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

5

ProblemIt does not scale

Page 14: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The TangleIntroduction

5

ProblemIt does not scale

Page 15: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

6

The Tangle (IOTA)

Page 16: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

6

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

Page 17: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

6

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

Page 18: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

6

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

You come up with a DAG (Directed Acyclic Graph)

Page 19: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

6

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

You come up with a DAG (Directed Acyclic Graph)

You’re only limited by bandwidth and storage

Page 20: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

7

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

sites

Page 21: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

7

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

sites

tips (unconfirmed sites)

Page 22: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

7

The Tangle (IOTA)

Each transaction is a small block that reference two previous ones

sites

tips (unconfirmed sites)

A new site and its parents should not create conflicts.

Page 23: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

8

The Tangle (IOTA)

How to read a value?

Page 24: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

9

The Tangle (IOTA)

How to read a value?

If you take a tip, you can order transactions and do the same as in a blockchain

Page 25: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

10

The Tangle (IOTA)

What if tips are conflicting?

A new site cannot confirm conflicting sites

How to read a value?

Page 26: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

11

The Tangle (IOTA)

What if tips are conflicting?

How to read a value?

Two conflicting tangles can appear

Which one is correct?

Page 27: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

12

The Tangle (IOTA)

Tip Selection Algorithm (TSA):- so we know how to read values- so we know where to extend the Tangle

Page 28: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

12

The Tangle (IOTA)

Tip Selection Algorithm (TSA):- so we know how to read values- so we know where to extend the Tangle

In Bitcoin, we read values from, and we try to extend, the longest chain. If you don’t follow this, you’ll lose money.

Page 29: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

13

The Tangle (IOTA)

In the Tangle, forks are ok if not conflicting

Page 30: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

13

The Tangle (IOTA)

In the Tangle, forks are ok if not conflicting

But conflicting forks are worst in this case

Page 31: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

13

The Tangle (IOTA)

In the Tangle, forks are ok if not conflicting

But conflicting forks are worst in this case

Page 32: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

14

The Tangle (IOTA)

In the Tangle, forks are ok if not conflicting

So its better to have something like this

Page 33: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

15

The Tangle (IOTA)

Page 34: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

15

The Tangle (IOTA)

Should be chosen with higher probability

Page 35: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

16

The Tangle (IOTA)Compute cumulative weight to each site

Page 36: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

16

The Tangle (IOTA)Compute cumulative weight to each site

1

1

1

2

6

3

35

8

6

1

11

12

8

15

Page 37: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

16

The Tangle (IOTA)Compute cumulative weight to each site

1

1

1

2

6

3

35

8

6

1

11

12

8

15

Perform a random walk

Page 38: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

16

The Tangle (IOTA)Compute cumulative weight to each site

1

1

1

2

6

3

35

8

6

1

11

12

8

15

Perform a random walk

Page 39: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

Page 40: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

Page 41: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

4

3

Page 42: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

Transition function:

4

3

Page 43: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

Transition function:

4

3

MCMC

Page 44: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed TransactionsIntroduction

17

The Tangle (IOTA)Compute cumulative weight to each site

11

12

15

Perform a random walk

Transition function:

4

3

LMCMCMCMC

Page 45: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

18

How many tips are left behind ?

Page 46: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

18

How many tips over the time ?

How many tips are left behind ?

Page 47: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

18

How many tips over the time ?

How many tips are left behind ?

Page 48: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

19

How many tips over the time ?

How many tips are left behind ?

Page 49: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

20

How many tips over the time ?

How many tips are left behind ?

Page 50: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

21

Page 51: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

21

How many tips are left behind ?

Page 52: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

21

How many tips are left behind ?

- theoretical analysis, assuming random tip selection

Page 53: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

21

How many tips are left behind ?

- theoretical analysis, assuming random tip selection- by simulation, for other tip selection

Page 54: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

22

Theoretical analysis, assuming random tip selection

Discrete time model. At each round: Poisson(𝝀) new sites

Page 55: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

23

Discrete time model. At each round: Poisson(𝝀) new sites

Theoretical analysis, assuming random tip selection

Page 56: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

24

Discrete time model. At each round: Poisson(𝝀) new sites

Theoretical analysis, assuming random tip selection

Page 57: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 58: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 59: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 60: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 61: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 62: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 63: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 64: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

25

Theoretical analysis, assuming random tip selection

Page 65: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 66: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 67: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 68: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 69: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 70: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 71: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 72: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 73: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

26

Page 74: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

27

Page 75: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

28

Page 76: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

29

Page 77: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

30

Page 78: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

31

Page 79: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Necessary Security Assumption

32

Page 80: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

33

By simulation, for other tip selection

Page 81: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

33

By simulation, for other tip selection

Page 82: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

The Tangle Unconfirmed Transactions Parasite Chain Attack

34

By simulation, for other tip selection

number of tips

Page 83: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Page 84: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack

Page 85: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack Alice send 10 IOTA to Bob for a sandwich

Page 86: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack Alice send 10 IOTA to Bob for a sandwichBob waits to see the transaction in the Tangle

Page 87: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack Alice send 10 IOTA to Bob for a sandwichBob waits to see the transaction in the TangleBob gives Alice the sandwich

Page 88: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack Alice send 10 IOTA to Bob for a sandwichBob waits to see the transaction in the TangleBob gives Alice the sandwichAlice generates a lots of transactions so that her first transaction is discarded

Page 89: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

35

Double Spending Attack Alice send 10 IOTA to Bob for a sandwichBob waits to see the transaction in the TangleBob gives Alice the sandwichAlice generates a lots of transactions so that her first transaction is discardedAlice eats the sandwich

Page 90: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

36

The parasite chain attack

Page 91: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

37

The parasite chain attack

Page 92: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

38

The parasite chain attack

Page 93: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

39

The parasite chain attack

Page 94: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

40

Page 95: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

40

Theoretical analysis

Page 96: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

40

Theoretical analysisSimulations

Page 97: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

41

Theoretical analysis

Page 98: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

42

Theoretical analysis

Page 99: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

43

Theoretical analysis

Page 100: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

44

An attack is possible if hashing power of the adversary hashing power used by the all nodes.

An attack is possible if hashing power of the adversary hashing power of the all nodes

if all the honest nodes constantly generates new sites

Theorem

Corollary

Theoretical analysis

Page 101: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

45

How many red site so that:

By simulation

Page 102: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Unconfirmed Transactions Parasite Chain Attack Conclusion

46

Page 103: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Parasite Chain Attack Conclusion

47

Conclusion

Page 104: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Parasite Chain Attack Conclusion

47

Conclusion

The Tangle (Theoretical Protocol) : Security based on PoW IOTA (Current Implementation) : Central coordinator

Page 105: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Parasite Chain Attack Conclusion

47

Conclusion

How to attach the parasite chain?

The Tangle (Theoretical Protocol) : Security based on PoW IOTA (Current Implementation) : Central coordinator

Page 106: The graph of transactions in the IOTA cryptocurrency graph of...ref to block 1 Block of data 3 ref to block 2. Introduction The Tangle 5 Problem It does not scale. Introduction The

Parasite Chain Attack Conclusion

47

Conclusion

Number of tips Resistance to parasite chain attack

How to attach the parasite chain?

The Tangle (Theoretical Protocol) : Security based on PoW IOTA (Current Implementation) : Central coordinator