WHERE BLOCKCHAINS FAIL (AND WHY HPC IS OF NO HELP) MAARTEN VAN - - PowerPoint PPT Presentation

where blockchains fail
SMART_READER_LITE
LIVE PREVIEW

WHERE BLOCKCHAINS FAIL (AND WHY HPC IS OF NO HELP) MAARTEN VAN - - PowerPoint PPT Presentation

WHERE BLOCKCHAINS FAIL (AND WHY HPC IS OF NO HELP) MAARTEN VAN STEEN 2001 2007 2017 BLOCKCHAIN IN A NUTSHELL ALICE CREATES A TRANSACTION ALICE SIGNS THE TRANSACTION SIGNED TRANSACTION NEEDS TO BE FINALIZED: VALIDATED AND IMMUTABLE


slide-1
SLIDE 1
slide-2
SLIDE 2

WHERE BLOCKCHAINS FAIL

(AND WHY HPC IS OF NO HELP)

MAARTEN VAN STEEN

slide-3
SLIDE 3

2001 2007 2017

slide-4
SLIDE 4

BLOCKCHAIN IN A NUTSHELL

slide-5
SLIDE 5

ALICE CREATES A TRANSACTION ALICE SIGNS THE TRANSACTION SIGNED TRANSACTION NEEDS TO BE FINALIZED: VALIDATED AND IMMUTABLE

slide-6
SLIDE 6

VALIDATION AND STORAGE OF TRANSACTIONS

slide-7
SLIDE 7

THE NETWORK

VALIDATION AND STORAGE OF TRANSACTIONS?

slide-8
SLIDE 8

THE NETWORK

VALIDATION AND STORAGE OF TRANSACTIONS? VALIDATOR COLLECTS & VALIDATES TRANSACTIONS

slide-9
SLIDE 9

ATTEMPTS TO LINK TO CURRENT BLOCK CHAIN PUBLICLY ACCESSIBLE & DISTRIBUTED BLOCKS OF VALIDATED TRANSACTIONS

slide-10
SLIDE 10

THE NETWORK MANY VALIDATORS COMPETE..... SO WHO’S ALLOWED TO LINK TO THE BLOCKCHAIN?

slide-11
SLIDE 11

ALL CORRECTLY BEHAVING VALIDATORS REACH AGREEMENT ON WHICH BLOCK IS TO BE APPENDED TO THE BLOCKCHAIN WHAT DO WE MEAN BY CONSENSUS?

slide-12
SLIDE 12

DISTRIBUTED CONSENSUS PROTOCOLS

slide-13
SLIDE 13

THE NETWORK OFTEN THE BEST DISTRIBUTED CONSENSUS PROTOCOL.... COORDINATOR .... IS THE ONE WITH A CENTRALIZED COORDINATOR GO FOR IT! REQUEST REQUEST REQUEST REQUEST REQUEST

slide-14
SLIDE 14
  • 1. HIGHLY SCALABLE
  • TRANSACTIONS / TIME UNIT
  • PARTICIPATING VALIDATORS
  • 2. FULLY DECENTRALIZED
  • 3. COMPLETE CONSENSUS AMONG

CORRECTLY BEHAVING PARTICIPANTS REQUIREMENTS THAT HAVE BECOME PROMISES

slide-15
SLIDE 15
  • 1. RUN A DECENTRALIZED LEADER-

ELECTION ALGORITHM FOR EACH NEW BLOCK TO BE ADDED

  • 2. ALLOW THE ELECTED LEADER TO

VALIDATE THE TRANSACTIONS

  • 3. MAKE SURE THAT YOU CAN TRUST THE

ELECTED LEADER FULLY DECENTRALIZED?

slide-16
SLIDE 16

PROTOCOLS BASED ON RACING

slide-17
SLIDE 17

HASH

HASHING

HASH INPUT

COMPUTATIONALLY EASY COMPUTATIONALLY HARD (BRUTE FORCE NEEDED)

slide-18
SLIDE 18

HASH

FIND N

N

+

HASHING

0000000000D6A8.....

HASH WITH K LEADING ZEROES

slide-19
SLIDE 19

HASH

FIND N

N

+

HASHING

0000000000D6A8.....

HASH WITH K LEADING ZEROES

  • LIMIT THE NUMBER OF BLOCKS /

TIMEUNIT SO THAT VALIDATORS CAN FIND OUT IF SOMEONE ELSE WON

  • VERY SMALL TIMEOUT: YOU’LL FIND OUT

TOO LATE AND HAVE WASTED EFFORTS (LONGEST CHAIN WINS)

slide-20
SLIDE 20
  • SEPARATE LEADER ELECTION FROM

TRANSACTION VALIDATION (BUT STILL REQUIRES RACING)

  • VALIDATORS SHOULD ALREADY HAVE A

PROVEN STAKE IN THE SYSTEM (BUT STILL REQUIRES SOME LEADER ELECTION; VULNERABLE TO ATTACKS) VARIATIONS ON A THEME

slide-21
SLIDE 21

WE SHOULD CHALLENGE THE QUALITY OF HAVING COMPUTATIONAL RACES AS A DESIGN PRINCIPLE FOR BLOCKCHAINS:

  • THEY WASTE ENERGY FOR THE SAKE OF RACING
  • THEY INHERENTLY INCUR THROUGHPUT/

SCALABILITY PROBLEMS BOTTOM LINE

slide-22
SLIDE 22

PROTOCOLS BASED ON TALKING

slide-23
SLIDE 23

FLOODING CONSENSUS

slide-24
SLIDE 24

FLOODING CONSENSUS

slide-25
SLIDE 25
  • NODES NEED TO BE TRUSTED
  • CLOSED GROUP
  • (FAILURES CAN BE HANDLED)

FLOODING CONSENSUS

slide-26
SLIDE 26
  • WE NEED 2f + 1 NODES TO TOLERATE f

CRASHING VALIDATORS

  • WE NEED 3f + 1 NODES IF FAULTY

VALIDATORS CAN PRODUCE ARBITRARY RESULTS (WHICH MAY GO UNDETECTED) NODES NEED TO BE TRUSTED?

slide-27
SLIDE 27
  • NEEDED IF CONSENSUS IS TO BE

REACHED BEFORE APPENDING A BLOCK TO THE BLOCKCHAIN (PESSIMISTIC APPROACH)

  • MAY BE LEFT OUT IF UNRIGHTFUL

APPEND OPERATIONS CAN BE MITIGATED (OPTIMISTIC APPROACH) CLOSED GROUP?

slide-28
SLIDE 28

PRACTICAL BYZANTINE FAULT TOLERANCE

slide-29
SLIDE 29

PRACTICAL BYZANTINE FAULT TOLERANCE

  • CLOSED GROUP
  • SCALES IN THROUGHPUT
  • DOES NOT SCALE IN PARTICIPANTS
  • HIGHLY FAULT-TOLERANT SOLUTION

CONSENSUS-AS-A-SERVICE

slide-30
SLIDE 30

WE SHOULD CHALLENGE THE QUALITY OF HAVING CONSENSUS-AS-A-SERVICE AS A DESIGN PRINCIPLE FOR BLOCKCHAINS:

  • THE SERVICE IS CENTRALIZED, LOGICALLY AS

WELL AS PHYSICALLY

  • THE SERVICE NEEDS TO BE TRUSTED

BOTTOM LINE

slide-31
SLIDE 31

THE STORY SO FAR

slide-32
SLIDE 32
  • 1. HIGHLY SCALABLE
  • 2. FULLY DECENTRALIZED
  • 3. FULL CONSENSUS
slide-33
SLIDE 33

CONSENSUS-AS-A-SERVICE:

  • SERVICE IS CENTRALIZED
  • # PARTICIPANTS RESTRICTED
  • SERVICE NEEDS TO BE TRUSTED

COMPUTATIONAL RACES:

  • WASTE ENERGY DUE TO RACING
  • THROUGHPUT IS LIMITED
  • 1. SCALABLE
  • 2. DECENTRALIZED
slide-34
SLIDE 34

A PROTOCOL THAT MAY GET US SOMEWHERE

slide-35
SLIDE 35
  • EACH NODE N DEFINES A SET OF NODES

WHO SHOULD AGREE BEFORE IT WILL ALSO AGREE: A QUORUM SLICE

  • A NODE MAY HAVE MULTIPLE SLICES
  • IF Q IS IN A QUORUM, THEN SO MUST ONE OF

ITS SLICES BE IN THAT QUORUM

  • IF ALL NODES HAVE THE SAME QUORUM

SLICE(S), WE HAVE BFT FEDERATED BYZANTINE AGREEMENT

DAVID MAZIERES

slide-36
SLIDE 36
  • TO REACH AGREEMENT AMONG A SET OF NODES, THEIR RESPECTIVE

QUORUM SLICES NEED TO PAIRWISE HAVE A (NONFAULTY) NODE IN COMMON

  • YOU DISCOVER THE NODES NEEDED TO REACH CONSENSUS
  • THE PROTOCOL GOES THROUGH 3 PHASES:
  • NOMINATE < some value >
  • PREPARE < that value >
  • CONFIRM < that value >

FEDERATED BYZANTINE AGREEMENT

slide-37
SLIDE 37
  • IMPORTANT PROPERTIES:
  • OPEN MEMBERSHIP
  • DECENTRALIZED
  • KEY OBSERVATIONS:
  • CLAIMS A TRANSACTION CAN BE HANDLED IN 3 SECONDS
  • STELLAR CLAIMS IT CAN HANDLE 1000 TRANSACTIONS PER

SECOND

  • NO SCIENTIFIC PUBLICATION OF THE PROTOCOL EXISTS

FEDERATED BYZANTINE AGREEMENT

slide-38
SLIDE 38

FROM HYPE TO RESEARCH

slide-39
SLIDE 39
  • BLOCKCHAIN IS SURPRISINGLY POPULAR
  • COOL APPLICATIONS
  • SOME PEOPLE GOT VERY RICH
  • EVERYONE IGNORES THE TOUGH STUFF
  • BLOCKCHAIN IS SURPRISINGLY POPULAR
  • VERY FEW PEOPLE UNDERSTAND WHAT’S

REALLY GOING ON (AND THE CORE IS VERY DIFFICULT)

  • THERE ARE MANY FUNDAMENTAL

PROBLEMS THAT WILL HINDER DEPLOYMENT