Strengthened Fault Tolerance in Byzantine Fault Tolerant Replication

Byzantine fault tolerant (BFT) state machine replication (SMR) is an important building block for constructing permissioned blockchain systems. In contrast to Nakamoto Consensus where any block obtains higher assurance as buried deeper in the blockchain, in BFT SMR, any committed block is secure has a fixed resilience threshold. In this paper, we investigate strengthened fault tolerance (SFT) in BFT SMR under partial synchrony, which provides gradually increased resilience guarantees (like Nakamoto Consensus) during an optimistic period when the network is synchronous and the number of Byzantine faults is small. Moreover, the committed blocks can tolerate more than one-third (up to two-thirds) corruptions even after the optimistic period. Compared to the prior best solution Flexible BFT which requires quadratic message complexity, our solution maintains the linear message complexity of state-of-the-art BFT SMR protocols and requires only marginal bookkeeping overhead. We implement our solution over the open-source Diem project, and give experimental results that demonstrate its efficiency under real-world scenarios.

[1]  Álvaro García-Pérez,et al.  Deconstructing Stellar Consensus , 2019, OPODIS.

[2]  Ramakrishna Kotla,et al.  Zyzzyva , 2007, SOSP.

[3]  Marko Vukolic,et al.  The Next 700 BFT Protocols , 2015, ACM Trans. Comput. Syst..

[4]  I. Keidar,et al.  Expected Linear Round Synchronization: The Missing Link for Linear Byzantine SMR , 2020, DISC.

[5]  O. Naor,et al.  Cogsworth: Byzantine View Synchronization. , 2019 .

[6]  S. Nakamoto,et al.  Bitcoin: A Peer-to-Peer Electronic Cash System , 2008 .

[7]  Elaine Shi,et al.  The Honey Badger of BFT Protocols , 2016, CCS.

[8]  Miguel Oom Temudo de Castro,et al.  Practical Byzantine fault tolerance , 1999, OSDI '99.

[9]  David Mazières,et al.  Fast and secure global payments with Stellar , 2019, SOSP.

[10]  Michael K. Reiter,et al.  Byzantine quorum systems , 1997, STOC '97.

[11]  Elaine Shi,et al.  Thunderella: Blockchains with Optimistic Instant Confirmation , 2018, IACR Cryptol. ePrint Arch..

[12]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[13]  David Mazières,et al.  Beyond One-Third Faulty Replicas in Byzantine Fault Tolerant Systems , 2007, NSDI.

[14]  Benny Pinkas,et al.  SBFT: A Scalable and Decentralized Trust Infrastructure , 2018, 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[15]  Nancy A. Lynch,et al.  Consensus in the presence of partial synchrony , 1988, JACM.

[16]  Alysson Neves Bessani,et al.  State Machine Replication for the Masses with BFT-SMART , 2014, 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks.

[17]  Alexander Spiegelman,et al.  In Search for a Linear Byzantine Agreement , 2020, ArXiv.

[18]  Jonathan Katz,et al.  Synchronous Consensus with Optimal Asynchronous Fallback Guarantees , 2019, IACR Cryptol. ePrint Arch..

[19]  Marko Vukolic,et al.  Hyperledger fabric: a distributed operating system for permissioned blockchains , 2018, EuroSys.

[20]  Damian Lesniak,et al.  Aleph: Efficient Atomic Broadcast in Asynchronous Networks with Byzantine Nodes , 2019, AFT.

[21]  Christian Cachin,et al.  Asymmetric Byzantine Consensus , 2020, ArXiv.

[22]  Vitalik Buterin,et al.  Casper the Friendly Finality Gadget , 2017, ArXiv.

[23]  Ittai Abraham,et al.  Revisiting Fast Practical Byzantine Fault Tolerance: Thelma, Velma, and Zelma , 2018, ArXiv.

[24]  Michael K. Reiter,et al.  Fault-scalable Byzantine fault-tolerant services , 2005, SOSP '05.

[25]  Dominic Williams,et al.  DFINITY Technology Overview Series, Consensus System , 2018, ArXiv.

[26]  Kartik Nayak,et al.  Flexible Byzantine Fault Tolerance , 2019, CCS.

[27]  Kartik Nayak,et al.  On the Optimality of Optimistic Responsiveness , 2020, IACR Cryptol. ePrint Arch..

[28]  Jason Paul Cruz,et al.  Hybrid-BFT: Optimistically Responsive Synchronous Consensus with Optimal Latency or Resilience , 2020, IACR Cryptol. ePrint Arch..

[29]  Ethan Buchman,et al.  Tendermint: Byzantine Fault Tolerance in the Age of Blockchains , 2016 .

[30]  David Mazières,et al.  Stellar Consensus by Instantiation , 2019, DISC.

[31]  Jonathan Katz,et al.  Network-Agnostic State Machine Replication , 2020, IACR Cryptol. ePrint Arch..

[32]  Elaine Shi,et al.  Streamlet: Textbook Streamlined Blockchains , 2020, IACR Cryptol. ePrint Arch..

[33]  Ittai Abraham,et al.  Asymptotically Optimal Validated Asynchronous Byzantine Agreement , 2019, PODC.

[34]  Elaine Shi,et al.  PiLi: An Extremely Simple Synchronous Blockchain , 2018, IACR Cryptol. ePrint Arch..

[35]  Kartik Nayak,et al.  Sync HotStuff: Simple and Practical Synchronous State Machine Replication , 2020, 2020 IEEE Symposium on Security and Privacy (SP).

[36]  Christian Cachin,et al.  Asymmetric Distributed Trust , 2019, OPODIS.

[37]  Klaus Kursawe,et al.  Optimistic Byzantine agreement , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[38]  Victor Shoup,et al.  Optimistic Asynchronous Atomic Broadcast , 2005, ICALP.