The Honey Badger of BFT Protocols Authors: Andrew Miller, Yu Xia, - - PowerPoint PPT Presentation

the honey badger of bft protocols
SMART_READER_LITE
LIVE PREVIEW

The Honey Badger of BFT Protocols Authors: Andrew Miller, Yu Xia, - - PowerPoint PPT Presentation

The Honey Badger of BFT Protocols Authors: Andrew Miller, Yu Xia, Kyle Croman, Elaine Shi, Dawn Song Minqiang Hu 10/29/2018 Timing assumptions considered harmful Weak Synchrony and Asynchronous BFT Protocol Why not weak synchrony


slide-1
SLIDE 1

The Honey Badger of BFT Protocols

Authors: Andrew Miller, Yu Xia, Kyle Croman, Elaine Shi, Dawn Song

Minqiang Hu 10/29/2018

slide-2
SLIDE 2

Timing assumptions considered harmful

  • Weak Synchrony and Asynchronous BFT Protocol
  • Why not weak synchrony

○ The liveness will fail when expected time assumptions are violated ○ Less throughput when network is unpredictable

  • HoneyBadgerBFT guarantees liveness without making

time assumptions

2/11

slide-3
SLIDE 3

Asynchronous networks are the “harsh climates” of distributed computing

Full Synchrony: all messages are delivered within Δ time Eventual Synchrony: after unknown time GST, all messages delivered within Δ Partial Synchrony: Δ is unknown to the protocol Weak Synchrony: Δt is time varying, but grows polynomially in t Asynchronous: all messages are eventually delivered

3/11

slide-4
SLIDE 4

4/11

slide-5
SLIDE 5

The Approach

Adapt synchronous BFT for efficiency in the batch setting 1. Improve by O(N) by “refactoring” with known(but overlooked) primitives 2. Improve by another O(N) by using random selection and threshold encryption

5/11

slide-6
SLIDE 6

Refactor of the transactions to mitigate node bandwidth bottleneck

PBFT broadcast standard way P: leader Leader bandwidthO(n*3)

6/11

slide-7
SLIDE 7

Refactor of the transactions to mitigate node bandwidth bottleneck

Improved broadcast way Leader bandwidthO(n)

7/11

slide-8
SLIDE 8

Avoid sending redundant transactions-random

selection and threshold encryption

8/11

slide-9
SLIDE 9

Results: Optimal resilience and efficiency

Choose a large enough batch size, of B = Ω(λ N^2 logN). Total Bandwidth per transaction (for each node) is O(1). Expected # of rounds is O(LogN).

9/11

slide-10
SLIDE 10

Implementation

Python protocol implementation, using gevent Threshold cryptography: Charm/PBC library Signature:Boldyreva ‘03 Encryptions: Baek and Zhang ‘03 Experiments on local cluster, worldwide EC2, & over Tor

10/11

slide-11
SLIDE 11

11

Thank you!