The Bedrock of BFT: A Unified Platform for BFT Protocol Design and Implementation

by   Mohammad Javad Amiri, et al.

Byzantine fault-tolerant protocols cover a broad spectrum of design dimensions from environmental setting on communication topology, to more technical features such as commitment strategy and even fundamental social choice related properties like order fairness. Designing and building BFT protocols remains a laborious task despite of years of intensive research. The proliferation of different BFT protocols has rendered it difficult to navigate BFT landscape, let alone determine the protocol that best meets application needs. This paper presents Bedrock, a unified platform for BFT protocols design and implementation. Bedrock exposes an API that presents a set of design choices capturing the trade-offs between different design space dimensions in BFT implementations. Based on user choices, Bedrock then generates the BFT protocols within the space of plausible choices, evolves current protocols to generate new ones, and even uncovers previously unknown protocols. Our experimental results validate the capability of Bedrock in deriving existing and new BFT protocols.


page 1

page 2

page 3

page 4


Dissecting the Performance of Chained-BFT

Permissioned blockchains employ Byzantine fault-tolerant (BFT) state mac...

Reliable Broadcast in Practical Networks: Algorithm and Evaluation

Reliable broadcast is an important primitive to ensure that a source nod...

BFT Protocol Forensics

Byzantine fault-tolerant (BFT) protocols allow a group of replicas to co...

Alea-BFT: Practical Asynchronous Byzantine Fault Tolerance

Traditional Byzantine Fault Tolerance (BFT) state machine replication pr...

A General Framework for the Security Analysis of Blockchain Protocols

Blockchain protocols differ in fundamental ways, including the mechanics...

Twins: White-Glove Approach for BFT Testing

Byzantine Fault Tolerant (BFT) systems have seen extensive study for mor...

DKVF: A Framework for Rapid Prototyping and Evaluating Distributed Key-value Stores

We present our framework DKVF that enables one to quickly prototype and ...