Instant Confirmation Rafael Pass and Elaine Shi Cornell Tech & - - PowerPoint PPT Presentation

instant confirmation
SMART_READER_LITE
LIVE PREVIEW

Instant Confirmation Rafael Pass and Elaine Shi Cornell Tech & - - PowerPoint PPT Presentation

Thunderella: Blockchains with Optimistic Instant Confirmation Rafael Pass and Elaine Shi Cornell Tech & Cornell University State-machine replication ( a.k.a. linearly ordered log, consensus, blockchain) State-machine replication ( a.k.a.


slide-1
SLIDE 1

Thunderella: Blockchains with Optimistic Instant Confirmation

Rafael Pass and Elaine Shi

Cornell Tech & Cornell University

slide-2
SLIDE 2

State-machine replication

(a.k.a. linearly ordered log, consensus, blockchain)

slide-3
SLIDE 3

State-machine replication

(a.k.a. linearly ordered log, consensus, blockchain)

Consistency:

honest nodes agree on log

Liveness:

TXs are incorporated soon

slide-4
SLIDE 4

Classical

(e.g. PBFT, Paxos)

Blockchains

slide-5
SLIDE 5

Classical

(e.g. PBFT, Paxos)

Fast (most of the time) Complex Asynch

Blockchains

slide-6
SLIDE 6

Classical

(e.g. PBFT, Paxos)

Fast (most of the time) Complex Asynch

Blockchains

(PoW and non-PoW)

Slow Sync Simple Robust

slide-7
SLIDE 7

Thunderella

As simple and robust as a blockchain Confirm in 2 actual network rounds in the “optimistic case” Fall back to blockchain when things “go bad”

slide-8
SLIDE 8

Classical

(e.g. PBFT, Paxos)

Let’s start with this

Roadmap

Blockchains

(PoW and non-PoW)

slide-9
SLIDE 9

Classical

(e.g. PBFT, Paxos)

Blockchains

(PoW and non-PoW)

Roadmap

slide-10
SLIDE 10
slide-11
SLIDE 11

Leader proposes transaction

(Seq, )

slide-12
SLIDE 12

Everyone “ack’s”

slide-13
SLIDE 13

Confirm on upon “enough” acks

slide-14
SLIDE 14

Ex: Assume ⅔n+1 honest; wait for ⅔n+1 acks

slide-15
SLIDE 15

⅔n+1 ⅔n+1

“Y”

Must intersect at an honest node

Assume ⅔n+1 honest

slide-16
SLIDE 16

⅔n+1 ⅔n+1

“Y”

Must intersect at an honest node

Assume 1/3n malicious

slide-17
SLIDE 17

⅔n+1 ⅔n+1

“Y”

Must intersect at an honest node

Thus X = Y

slide-18
SLIDE 18

Assume ⅔ honest and online

slide-19
SLIDE 19

Assume ⅔ honest and online

Consistency Liveness

slide-20
SLIDE 20

Assume ⅔ honest and online

Consistency Liveness Consistency No liveness

slide-21
SLIDE 21

How do we achieve liveness?

slide-22
SLIDE 22

How do we achieve liveness?

You don’t want to know …

[PBFT, Paxos...]

slide-23
SLIDE 23

Anatomy of classical consensus

Simple normal path Complicated recovery path

slide-24
SLIDE 24

Classical

(e.g. PBFT, Paxos)

Blockchains

(PoW and non-PoW)

Roadmap

slide-25
SLIDE 25

blockchain

Thunderella

slide-26
SLIDE 26

Thunderella

for

permissionless Thunderella

for

permissioned

slide-27
SLIDE 27

Thunderella

for

permissionless

For concreteness, we’ll focus on this

slide-28
SLIDE 28

blockchain miners Leader/ ”accelerator” Committee

(recent miners/ stakeholders)

slide-29
SLIDE 29

3/4 fraction honest and online

“Optimistic” mode: Instant confirmation

honest and

  • nline

majority honest

slide-30
SLIDE 30

majority honest majority honest

(but need not be online)

But, still SECURE as long as:

majority Arbitrary deviation!

slide-31
SLIDE 31

¾n+1 “X” ¾n+1 “Y”

Must intersect at an honest node

Assume ½n+1 honest

slide-32
SLIDE 32

Ack Propose (seq, )

slide-33
SLIDE 33

Propose (seq, ) Ack

¾ acks:

notarized

slide-34
SLIDE 34

¾ voted:

notarized Confirm maximal “lucky” sequence

slide-35
SLIDE 35

Confirm maximal “lucky” sequence

¾ voted:

notarized

No liveness when

slide-36
SLIDE 36

blockchain collects evidence

  • f
slide-37
SLIDE 37

blockchain collects evidence

  • f

Now enter slow mode

slide-38
SLIDE 38

What evidence do we collect?

Need: faulty nodes cannot implicate honest leader

slide-39
SLIDE 39

Miners “tell blockchain” everything they know

slide-40
SLIDE 40

What evidence do we collect?

k blocks

slide-41
SLIDE 41

What evidence do we collect?

k blocks

has not appeared in a lucky sequence

slide-42
SLIDE 42

blockchain collects evidence

  • f

Now enter slow mode

slide-43
SLIDE 43

Now enter slow mode

Nodes have different logs when entering slow mode

slide-44
SLIDE 44

Now enter slow mode

Need: agree on log before entering slow mode

slide-45
SLIDE 45

Grace period: k blocks

  • Stop optimistic output
  • Share knowledge
  • All knowledge → blockchain

Stop “acking” new transactions Tell others what you know Miners tell blockchain what they know

slide-46
SLIDE 46

Summary

k blocks

Slow mode has not appeared in a lucky sequence Grace period

slide-47
SLIDE 47

3/4 fraction honest and online

“Optimistic” mode: Instant confirmation

honest and

  • nline

majority honest

slide-48
SLIDE 48

majority honest majority honest

(but need not be online)

But, still SECURE as long as:

majority Arbitrary deviation!

slide-49
SLIDE 49

Thank you.