rethinking bitcoin-like consensus designhszhou/alt-winterschool.pdf · 1.1.3 twinschain: making...

122
Alternative Consensus Hong-Sheng Zhou Virginia Commonwealth University Rethinking Bitcoin-like Consensus Design

Upload: others

Post on 24-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Alternative Consensus

Hong-Sheng ZhouVirginia Commonwealth University

Rethinking Bitcoin-like Consensus Design

Page 2: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Towards a unified view of blockchain design

• A design example: 2-hop blockchain

• A design technique: Constructing blockchains via blockchain(s)

Outline

Page 3: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Joe

• Andrew

• Vassilis

• Aggelos

• Jon

Talks so far

Page 4: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Motivation(s)

Page 5: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

We don't want to put all eggs in one basket.

Page 6: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

We don't want to put all eggs in one basket.

Page 7: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Good people worry about the future.

Page 8: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Good people worry about the future.

——— anonymous

Page 9: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Can we do a better job than Nakamoto?

Page 10: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Most of tools were known

• Public keys as identities

• Time stamping

• Hash chain

• Incentives

• Proof-of-work

Nakamoto’s design

Page 11: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Most of tools were known

• Public keys as identities

• Time stamping

• Hash chain

• Incentives

• Proof-of-work

Nakamoto’s design

Arvind Narayanan’s talk at NSF

Page 12: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Amazing design

• Put them together

• Cute points

• Open (via PoW); easy to join/leave

• Suitable incentives

• Adaptive difficulty adjustment

• Scalable to a huge network of nodes; very lightweight communication

Nakamoto’s design

Page 13: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

2009 2017

Page 14: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

2009 2017

the  blockchain  is  backed  up  by  a  huge  network  of  compu7ng  power;  censorship  resilient;  very  trustworthy    

Page 15: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

2009 2017

the  blockchain  is  backed  up  by  a  huge  network  of  compu7ng  power;  censorship  resilient;  very  trustworthy    

The  flip  side:   lots  of  electricity  has  been  invested  in  this  system;not  environment  friendly  

Page 16: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Cute points

• Open (via PoW)

• Suitable incentives

• Adaptive difficulty adjustment

• Scalable to a huge network of nodes; very lightweight communication

Nakamoto’s design

Page 17: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Cute points

• Open (via PoW) tricky; overlooked

• Suitable incentives Jon’s talk

• Adaptive difficulty adjustment Aggelos’s talk: [GKL16]

• Scalable to a huge network of nodes; very lightweight communicationtricky; overlooked

Nakamoto’s design

Page 18: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

Page 19: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

Hash

Page 20: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

Hash

Page 21: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s design

Hash

Page 22: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s designAlterna7ve  View

Page 23: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto’s designAlterna7ve  View

(inspired  by  ideas  in  [Garay,  Kiayias,  Z.,  CSF10])

Page 24: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Page 25: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Page 26: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Page 27: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Hash

Page 28: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Hash

Page 29: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Nakamoto  Blockchain:  Alterna7ve  View

Hash

Page 30: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Beacon-­‐based  Blockchain

FHash

Page 31: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

F

Page 32: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Beacon-­‐based  Blockchain

F1

Sign

use  the  NIST  beacon  

Page 33: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Beacon-­‐based  Blockchain

F2

Sign

consider  an  environment  friendly  beacon  functionality  

Page 34: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Conven7onal  MPC-­‐based  Blockchain

Sign

run  a  conventional  secure  Multi-­‐Party  Computation  (MPC)  protocol

Page 35: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Conven7onal  MPC-­‐based  Blockchain

Sign

run  a  conventional  secure  Multi-­‐Party  Computation  (MPC)  protocol

our  goal  is  to  obtain  a  large-­‐scale  blockchain.    Warning:  Conven7onal  MPC  cannot  scale.  

Page 36: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 37: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 38: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 39: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 40: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 41: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Broadcast  “Flooding”

Page 42: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Broadcast  Channel

Communication  Complexity    for  1  Message  is  Θ(n).

Broadcast  “Flooding”

Page 43: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Lightweight  communication  protocols:    • constant  c  messages  are  broadcast;  • communication    complexity  is  Θ(n).• can  scale  to  a  huge  network

Heavy  communication  protocols:    • such  as  voting  needs;    • Θ(n) messages  are  broadcast;    • communication    complexity  is  Θ(n2). • It  is  not  scalable.

Page 44: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Conven7onal  MPC-­‐based  Blockchain

Sign

run  a  conventional  secure  Multi-­‐Party  Computation  (MPC)  protocol

our  goal  is  to  obtain  a  large-­‐scale  blockchain.    Warning:  Conven7onal  MPC  cannot  scale.  Communica7on  complexity  (n^2)

Page 45: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

only  lightweight  blockchains  scale

Sign

expect  a  lightweight  protocol

Page 46: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

F2

Sign

consider  an  environment  friendly  beacon  functionality  

Page 47: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

F2

if  we  can  design  a  lightweight  protocol

which  achieves  an  environment  friendly  beacon  functionality  

then  we  could  make  a  better  blockchain  than  Nakamoto's

Page 48: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Page 49: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 50: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 51: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 52: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 53: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 54: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 55: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

Sign

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 56: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 57: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

Page 58: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

existing players

length ~ the resource

Page 59: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

existing players

length ~ the resource

not a concern

Page 60: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

new players

Page 61: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

spliUng  aVack  on  a  class  of  lightweight  protocols

new players

a big concern

Page 62: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue?

Page 63: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue? Yes. players run a voting.

Page 64: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue? Yes. players run a voting.

Voting is a conventional MPC, which cannot scale to a large network of nodes.

Page 65: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue?

Page 66: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue? Yes. via external checkpoints

Page 67: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is that possible to fix the issue? Yes. via external checkpoints

this violates the decentralization.

Page 68: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

F2

if  we  can  design  a  lightweight  protocol

which  achieves  an  environment  friendly  beacon  functionality  

then  we  could  make  a  better  blockchain  than  Nakamoto's

Page 69: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

F2

if  we  can  design  a  lightweight  protocol

which  achieves  an  environment  friendly  beacon  functionality  

then  we  could  make  a  better  blockchain  than  Nakamoto's

a  class  of  lightweight  protocols  DO  NOT  work

Page 70: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Proof-of-stake blockchain

• open

• Internet-scale

• provably secure

Open Question

Page 71: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is Nakamoto’s design OK?

Page 72: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Hash

spliUng  aVack  on  Nakamoto’s  design?

Page 73: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

existing players

length ~ the resource

spliUng  aVack  on  Nakamoto’s  design?

Page 74: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

new players

length ~ the resource

spliUng  aVack  on  Nakamoto’s  design?

Page 75: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Page 76: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Page 77: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is Nakamoto’s design OK? Yes.

Page 78: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Any other solutions against splitting attack?

Page 79: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

Sign

trusted  hardware  based  blockchains

Page 80: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is this hardware based solution good?

Page 81: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Is this hardware based solution good?

No. Trapdoor available to a single party

Page 82: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• hardware-based blockchain

• trapdoor-resilient

Open Question

Page 83: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Any other solutions against splitting attack?

Yes. Proof of XX={Work, Storage, … Human-work, …}

Page 84: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Any other solutions against splitting attack?

Yes. Proof of XX={Work, Storage, … Human-work, …}

useful work, combining work with storage, memory hard PoW

Page 85: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

However….main obstacle: splitting attack

Any other solutions against splitting attack?

Yes. Proof of XX={Work, Storage, … Human-work, …}

Are they good? useful work, combining work with storage, memory hard PoW

Page 86: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Modeling idea: Garay, Kiayias, Z., CSF 10

• Proof-of-Stake: Orborous; Snow White;

• Proof-of-X: PoET; SpaceMint; PermaCoin; PrimeCoin; PoST; memory hard PoW;

References

Page 87: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

A Design Example: 2-hop Blockchain

Page 88: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• a unified view for constructing (a class of) open blockchains has been developed

• existing proof-of-stake based open blockchains cannot scale to a large number of nodes

so far

Page 89: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

Page 90: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 91: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 92: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 93: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 94: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 95: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T

Page 96: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T

Page 97: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

Page 98: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

Page 99: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

H(B2||B2||nonce2) < T

Page 100: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

H(B2||B2||nonce2) < T

Page 101: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

H(B2||B2||nonce2) < T H(B3||vk3) < T

Page 102: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

H(B2||B2||nonce2) < T H(B3||vk3) < T

Page 103: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

2-hop blockchain

time

B�1 B0 B1 B2 B3 B4 B5

B1 B2 B3 B4

. . .

. . .

. . .

Figure 1: 2-hop blockchain structureHere, dot arrows denote the �rst hops, and solid arrows denote the second hops. Green blocks Bi’s denote the proof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocks are fromthe “mature blockchain”.

We �nally remark that, in the 2-hop design [11], Duong et al suggest to use an “alreadymature blockchain”as the setup. Note that, this way of bootstrapping a blockchain can e�ectively eliminate malicious trapdoorinformation. Please also refer to Figure 1.

1.1.3 TwinsChain: Making 2-hop design practical

Duong et al [11] design the �rst provably secure and scalable open blockchain via combining proof-of-workand proof-of-stake. Our original research goal is to design Bitcoin-like practical blockchain. However, push-ing a scalable blockchain to the practice is non trivial. In particular, we note that scalable design does notnecessarily give us practical solutions. For example, relying on trusted hardware, it is possible to obtain ascalable open blockchain; see the Proof-of-Elapsed-Time proposal [21] by Intel. But this solution cannot beused in the practice for constructing open blockchain: certain trapdoor information is known/leaked to theIntel; this immediately makes the system untrustworthy.

Fortunately, Duong et al’s 2-hop blockchain is well designed; when we push their design ideas to thepractice, we do not need to worry about such trapdoor information leakage discussed above. However, weare facing di�erent challenges. First, in the original 2-hop design, the resulting blockchain protocols areexpected to be executed in the idealized �at-model. Note that, in the �at model, each proof-of-work minerholds the same amount of computing power and each proof-of-stake holder has the same amount of stake(i.e., coins). Apparently, this �at model does not re�ect the reality. Strictly sticking to the �at model will onlyallow us to design non-practical blockchains.

Second, in the 2-hop design, the resulting blockchain protocols are expected to be executed in the staticprotocol execution environments. �at is, in each round, the invested/involved physical computing resourcesas well as virtual resources (i.e., stake/coins) in the system are always the same. �is again, does not re�ectthe reality. Take Bitcoin as an example. In the past years, the amount of computing resources that invested foreach unit of time period has increased dramatically. In Bitcoin, Nakamoto creatively introduces the di�cultyadjustmentmechanism to address this issue. By se�ing a target of extending the blockchain with a new blockin each 10mins, and by measuring the total time for extending a �x number (e.g., 2016) of blocks, each minercan be aware if more computing power has been invested. If so, then each miner will increase the di�culty,and vice versa.

In our TwinsChain design, we need to make our blockchain protocols to be adaptive to the protocolexecution environments. Note that here we have to address two types of resources. It seems that we need tomeasure the system thru two di�erent ways. However, in the original 2-hop design, the total number of PoWblocks is equal to the total number of PoS blocks. It is not clear how to use Nakamoto’s di�culty adjustmentmechanism directly for our purpose.

As in Figure 2, we change the blockchain structure. Our new blockchain structure allow us to “measure”

3

[Duong,Fan,Z.,16]

H(B1||B1||nonce1) < T H(B2||vk2) < T

H(B2||B2||nonce2) < T H(B3||vk3) < T

Page 104: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

PoW/PoS-­‐based  Blockchain

 

 

Page 105: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

 

Page 106: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

 ↵ ↵

��

Page 107: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

 ↵ ↵

��� < ↵

Page 108: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Scalable to a huge network of nodes

• provably secure

2-hop Blockchain[Duong,Fan,Z.,16]

Page 109: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Scalable to a huge network of nodes

• provably secure

2-hop Blockchain[Duong,Fan,Z.,16]

V.0

Page 110: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

a breakthrough in certain area may be a big disaster in other areas

each new technique may have two sides

51% Honest Mining Power Assumption could be challenged

What about dedicated hardware? ⿊黑科技

Page 111: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

June 12, 2014 GHash.IO large mining pool crisis

51% Honest Mining Power Assumption could be challenged

Page 112: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

All top mining pools are in China!

They might collude for whatever reason

Page 113: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Scalable to a huge network of nodes

• provably secure

• adaptive difficulty adjustment

• implementation

TwinsChain[Chepurnoy,Duong,Fan,Z.,16]

V.1

Page 114: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

these blocks are generated due to a successful �rst hop, but a failure second hop. For the sake of presentation,we call PoW blocks successful if they are generated due to a successful �rst hop along with a successful secondhop. Oncewe have two types of PoWblocks, we canmeasure the ratio between these two types of PoWblocks.�is idea eventually allows us to design a new di�culty adjustment mechanism, which is very important inpractice.

time

B�1 B0

B12

B22

B32

B13

B23

B33

B1 B2 B3

B1 B2

. . .

. . .

. . .

Figure 2: TwinsChain blockchain structureHere, dot arrows (that link to the previous successful block and a�empting blocks) denote the �rst hops, and solid arrowsdenote the second hops. Green blocks Bi’s denote the successful proof-of-work blocks, Bj

i ’s denote the a�emptingproof-of-work blocks, and red blocks Bi’s denote the corresponding proof-of-stake blocks. Note that the blue blocksare from the “mature blockchain”.

1.2 Our Contributions

A�er illustrating the main ideas in our approach, we here claim the following contributions:

• We provide a clear roadmap for designing provably secure yet scalable blockchain protocols which canbe secure even when the adversary controls more than 50% computing power in the system.

• We provide the �rst implementation of provably secure and scalable blockchain design. Source code isavailable; more implantation and evaluation details can be found in section 4.

• We introduce novel design ideas which allow us to construct practical open blockchain protocols viacombining proof-of-work and proof-of-stake mechanisms. Construction details can be found in sec-tion 3. Security analysis can be found in section 5.

Highlights: We design a novel di�culty adjustment mechanism. �is idea is very important to make the2-hop design practical.

�e security of the TwinsChain system is great. Our evaluation shows that even with 70% of total miningpower an adversary also needs for about 20% of total stake to generate a be�er chain than honest party’s.Given Bitcoin capitalization of $11.5 billion at the moment of writing, 20% of stake is about $2.3 billion.

Organization. In Section 2, we present our analysis framework, important security properties, as well as thechallenges. In Section 3, we present the details of our TwinsChain construction. �en, in Section 4, we providethe implementation and evaluation details. �en, in Section 5 we analyze the security of our construction.Related work is also provided in Section 6.

4

• adaptive difficulty adjustment

Page 115: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

https://bitbucket.org/twinscoin/twinschain

Page 116: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

The simulation results show that even with 70% of total mining power an adversary also needs for about 20% of total stake to generate abetter chain than honest party's.

Given Bitcoin capitalization of $11.5 billion, 20% of stake is about $2.3 billion.

how much is needed to mess up our system?

Page 117: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• Scalable to a huge network of nodes

• provably secure

• adaptive difficulty adjustment

• implementation

• incentives

• Mode switching

• Stress test

TwinsChain[Chepurnoy,Duong,Fan,Z.,16]

V.2

Page 118: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

A Design Technique: Constructing blockchains via blockchains

Page 119: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• i=1, other than Bitcoin

• i=2,

• i=3,

• ….

i-hop Blockchain

Page 120: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• BitcoinNG; Hybrid consensus; Elastico; ByzCoin;

• 2-hop blockchain;

References

Page 121: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• A unified view

• A design example

• A design technique

Take home

Page 122: Rethinking Bitcoin-like Consensus Designhszhou/alt-winterschool.pdf · 1.1.3 TwinsChain: Making 2-hop design practical Duong et al [11] design the rst provably secure and scalable

• A unified view

• A design example

• A design technique

Take home

Thanks