In Search for an Optimal Authenticated Byzantine Agreement

In this paper, we challenge the conventional approach of state machine replication systems to design deterministic agreement protocols in the eventually synchronous communication model. We first prove that no such protocol can guarantee bounded communication cost before the global stabilization time and propose a different approach that hopes for the best (synchrony) but prepares for the worst (asynchrony). Accordingly, we design an optimistic byzantine agreement protocol that first tries an efficient deterministic algorithm that relies on synchrony for termination only, and then, only if an agreement was not reached due to asynchrony, the protocol uses a randomized asynchronous protocol for fallback that guarantees termination with probability 1. We formally prove that our protocol achieves optimal communication complexity under all network conditions and failure scenarios. We first prove a lower bound of Ω(ft + t) for synchronous deterministic byzantine agreement protocols, where t is the failure threshold, and f is the actual number of failures. Then, we present a tight upper bound and use it for the synchronous part of the optimistic protocol. Finally, for the asynchronous fallback, we use a variant of the (optimal) VABA protocol, which we reconstruct to safely combine it with the synchronous part. We believe that our adaptive to failures synchronous byzantine agreement protocol has an independent interest since it is the first protocol we are aware of which communication complexity optimally depends on the actual number of failures. 2012 ACM Subject Classification Theory of computation → Distributed algorithms; Security and privacy → Distributed systems security

[1]  Idit Keidar,et al.  A simple proof of the uniform consensus synchronous lower bound , 2003, Inf. Process. Lett..

[2]  Sam Toueg,et al.  Asynchronous consensus and broadcast protocols , 1985, JACM.

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

[4]  Idit Keidar,et al.  FairLedger: A Fair Blockchain Protocol for Financial Institutions , 2019, OPODIS.

[5]  Marcos K. Aguilera,et al.  Randomization and Failure Detection: A Hybrid Approach to Solve Consensus , 1996, WDAG.

[6]  George Danezis,et al.  Consensus in the Age of Blockchains , 2017, ArXiv.

[7]  Idit Keidar,et al.  Not a COINcidence: Sub-Quadratic Asynchronous Byzantine Agreement WHP , 2020, DISC.

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

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

[10]  Danny Dolev,et al.  Early stopping in Byzantine agreement , 1990, JACM.

[11]  Victor Shoup,et al.  Secure and Efficient Asynchronous Broadcast Protocols , 2001, CRYPTO.

[12]  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).

[13]  Jean-Philippe Martin,et al.  Fast Byzantine Consensus , 2006, IEEE Transactions on Dependable and Secure Computing.

[14]  Ling Ren,et al.  Optimal Communication Complexity of Byzantine Consensus under Honest Majority , 2020, ArXiv.

[15]  Ittai Abraham,et al.  HotStuff: BFT Consensus with Linearity and Responsiveness , 2019, PODC.

[16]  Kartik Nayak,et al.  Improved Extension Protocols for Byzantine Broadcast and Agreement , 2020, DISC.

[17]  Alexey Gotsman,et al.  Making Byzantine consensus live , 2022, Distributed Computing.

[18]  Chen-Da Liu Zhang,et al.  Asynchronous Byzantine Agreement with Subquadratic Communication , 2020, IACR Cryptol. ePrint Arch..

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

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

[21]  Ethan Buchman,et al.  The latest gossip on BFT consensus , 2018, ArXiv.

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

[23]  Danny Dolev,et al.  Authenticated Algorithms for Byzantine Agreement , 1983, SIAM J. Comput..

[24]  Rachid Guerraoui,et al.  Fast byzantine agreement , 2013, PODC '13.

[25]  Victor Shoup,et al.  Practical Threshold Signatures , 2000, EUROCRYPT.

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

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

[28]  Achour Mostéfaoui,et al.  Consensus in One Communication Step , 2001, PaCT.

[29]  Dahlia Malkhi,et al.  Concurrency: the Works of Leslie Lamport , 2019 .

[30]  Robbert van Renesse,et al.  Bosco: One-Step Byzantine Asynchronous Consensus , 2008, DISC.

[31]  Jared Saia,et al.  Byzantine Agreement in Expected Polynomial Time , 2016, J. ACM.

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

[33]  Alexander Spiegelman,et al.  ACE: Abstract Consensus Encapsulation for Liveness Boosting of State Machine Replication , 2019, OPODIS.

[34]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

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

[36]  Rachid Guerraoui,et al.  Speculative linearizability , 2012, PLDI.