SoK: Understanding BFT Consensus in the Age of Blockchains
IACR Cryptology ePrint Archive
Blockchain as an enabler to current Internet infrastructure has provided many unique features and revolutionized current distributed systems into a new era. Its decentralization, immutability, and transparency have attracted many applications to adopt the design philosophy of blockchain and customize various replicated solutions. Under the hood of blockchain, consensus protocols play the most important role to achieve distributed replication systems. The distributed system community has
... ely studied the technical components of consensus to reach agreement among a group of nodes. Due to trust issues, it is hard to design a resilient system in practical situations because of the existence of various faults. Byzantine fault-tolerant (BFT) state machine replication (SMR) is regarded as an ideal candidate that can tolerate arbitrary faulty behaviors. However, the inherent complexity of BFT consensus protocols and their rapid evolution makes it hard to practically adapt themselves into application domains. There are many excellent Byzantine-based replicated solutions and ideas that have been contributed to improving performance, availability, or resource efficiency. This paper conducts a systematic and comprehensive study on BFT consensus protocols with a specific focus on the blockchain era. We explore both general principles and practical schemes to achieve consensus under Byzantine settings. We then survey, compare, and categorize the state-of-the-art solutions to understand BFT consensus in detail. For each representative protocol, we conduct an in-depth discussion of its most important architectural building blocks as well as the key techniques they used. We aim that this paper can provide system researchers and developers a concrete view of the current design landscape and help them find solutions to concrete problems. Finally, we present several critical challenges and some potential research directions to advance the research on exploring BFT consensus protocols in the age of blockchains. 7) Dumbo-MVBA: Dumbo-MVBA is an optimization to reduce the communication complexity of MVBA protocol to the order of O(n 2 ) (where n is the number of participating nodes), proposed by Lu et al. in 2020 . Original multi-valued validated asynchronous Byzantine agreement (MVBA)  requires around the O(ln 2 + λn 2 + n 3 ) communication (where n is the number of parties, l is the input length, and λ is the security parameter). And later, this communication complexity is reduced by removing the term n 3 when the input is small  . However, when the input length l ≥ λb, the communication is dominated by the λn 2 and the problem of O(n 3 ) communication remains open. Dumbo-MVBA intends to bridge this gap with O(ln 2 + λn 2 ) communicated bits, which is optimal when l ≥ λn. It also maintains other benefits including optimal resilience to tolerate up to n/3 adaptive Byzantine corruption, optimal expected constant running time, and optimal O(n 2 ) messages. At the core of Dumbo-MVBA is an asynchronous provable dispersal broadcast (APDB) in which each input can be split and dispersed to every party and later recovered in an efficient way. Based on the proposed APDB and asynchronous binary agreement, the authors design and present a self-bootstrap framework Dumbo-MVBA to reduce the communication cost of existing MVBA protocols.