ACE: Abstract Consensus Encapsulation for Liveness Boosting of State Machine Replication

Authors Alexander Spiegelman, Arik Rinberg, Dahlia Malkhi

Thumbnail PDF


  • Filesize: 1.6 MB
  • 18 pages

Document Identifiers

Author Details

Alexander Spiegelman
  • Novi Research, Menlo Park, USA
Arik Rinberg
  • Technion, Haifa, Israel
Dahlia Malkhi
  • Novi Research, Menlo Park, USA

Cite AsGet BibTex

Alexander Spiegelman, Arik Rinberg, and Dahlia Malkhi. ACE: Abstract Consensus Encapsulation for Liveness Boosting of State Machine Replication. In 24th International Conference on Principles of Distributed Systems (OPODIS 2020). Leibniz International Proceedings in Informatics (LIPIcs), Volume 184, pp. 9:1-9:18, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021)


With the emergence of attack-prone cross-organization systems, providing asynchronous state machine replication (SMR) solutions is no longer a theoretical concern. This paper presents ACE, a framework for the design of such fault tolerant systems. Leveraging a known paradigm for randomized consensus solutions, ACE wraps existing practical solutions and real-life systems, boosting their liveness under adversarial conditions and, at the same time, promoting load balancing and fairness. Boosting is achieved without modifying the overall design or the engineering of these solutions. ACE is aimed at boosting the prevailing approach for practical fault tolerance. This approach, often named partial synchrony, is based on a leader-based paradigm: a good leader makes progress and a bad leader does no harm. The partial synchrony approach focuses on safety and forgoes liveness under targeted and dynamic attacks. Specifically, an attacker might block specific leaders, e.g., through a denial of service, to prevent progress. ACE provides boosting by running waves of parallel leaders and selecting a winning leader only retroactively, achieving boosting at a linear communication cost increase. ACE is agnostic to the fault model, inheriting it s failure model from the wrapped solution assumptions. As our evaluation shows, an asynchronous Byzantine fault tolerance (BFT) replication system built with ACE around an existing partially synchronous BFT protocol demonstrates reasonable slow-down compared with the base BFT protocol during faultless synchronous scenarios, yet exhibits significant speedup while the system is under attack.

Subject Classification

ACM Subject Classification
  • Security and privacy → Distributed systems security
  • Software and its engineering → Abstraction, modeling and modularity
  • Framework
  • Asynchronous
  • Consensus boosting
  • State Machine Replication


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Apache cassandra. Accessed: 2020-05-03.
  2. Apache zookeeper. Accessed: 2020-05-03.
  3. Concord-bft. Accessed: 2020-05-03.
  4. etcd: Reliable key-value store. Accessed: 2020-05-03.
  5. Hyperledger. Accessed: 2020-05-03.
  6. Libra. Accessed: 2020-05-03.
  7. Netem. Accessed: 2020-05-03.
  8. Michael Abd-El-Malek, Gregory R Ganger, Garth R Goodson, Michael K Reiter, and Jay J Wylie. Fault-scalable byzantine fault-tolerant services. In Operating Systems Review, 2005. Google Scholar
  9. Ittai Abraham, Dahlia Malkhi, and Alexander Spiegelman. Asymptotically optimal validated asynchronous byzantine agreement. In PODC 2019, New York, NY, USA, 2019. ACM. Google Scholar
  10. Yair Amir, Brian Coan, Jonathan Kirsch, and John Lane. Customizable fault tolerance forwide-area replication. In Reliable Distributed Systems, 2007. SRDS 2007., 2007. Google Scholar
  11. Yair Amir, Brian Coan, Jonathan Kirsch, and John Lane. Prime: Byzantine replication under attack. IEEE Transactions on Dependable and Secure Computing, 2011. Google Scholar
  12. Michael Ben-Or. Another advantage of free choice (extended abstract): Completely asynchronous agreement protocols. In PODC 1983. ACM, 1983. Google Scholar
  13. Alysson Bessani, João Sousa, and Eduardo EP Alchieri. State machine replication for the masses with bft-smart. In DSN 2014. IEEE, 2014. Google Scholar
  14. Dan Boneh, Ben Lynn, and Hovav Shacham. Short signatures from the weil pairing. In International Conference on the Theory and Application of Cryptology and Information Security. Springer, 2001. Google Scholar
  15. Christian Cachin, Klaus Kursawe, Frank Petzold, and Victor Shoup. Secure and efficient asynchronous broadcast protocols. In Advances in Cryptology, 2001. Google Scholar
  16. Christian Cachin, Klaus Kursawe, and Victor Shoup. Random oracles in constantinople: Practical asynchronous byzantine agreement using cryptography. Journal of Cryptology, 18, 2000. Google Scholar
  17. Ran Canetti and Tal Rabin. Fast asynchronous byzantine agreement with optimal resilience. In Proceedings of the twenty-fifth annual ACM symposium on Theory of computing, 1993. Google Scholar
  18. Carlos Carvalho, Daniel Porto, Luís Rodrigues, Manuel Bravo, and Alysson Bessani. Dynamic adaptation of byzantine consensus protocols. In SAC 2018, 2018. Google Scholar
  19. Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In OSDI 1999, 1999. Google Scholar
  20. Allen Clement, Edmund L Wong, Lorenzo Alvisi, Michael Dahlin, and Mirco Marchetti. Making byzantine fault tolerant systems tolerate byzantine faults. In NSDI, 2009. Google Scholar
  21. Huynh Tu Dang, Daniele Sciascia, Marco Canini, Fernando Pedone, and Robert Soulé. Netpaxos: Consensus at network speed. In SOSR 2015, 2015. Google Scholar
  22. Whitfield Diffie and Martin Hellman. New directions in cryptography. IEEE transactions on Information Theory, 22(6):644-654, 1976. Google Scholar
  23. Sisi Duan, Hein Meling, Sean Peisert, and Haibin Zhang. Bchain: Byzantine replication with high throughput and embedded reconfiguration. In Marcos K. Aguilera, Leonardo Querzoni, and Marc Shapiro, editors, Principles of Distributed Systems, pages 91-106, Cham, 2014. Springer International Publishing. Google Scholar
  24. Sisi Duan, Michael K Reiter, and Haibin Zhang. Beat: Asynchronous bft made practical. In CCS 2018, 2018. Google Scholar
  25. Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. Consensus in the presence of partial synchrony. Journal of the ACM (JACM), 35(2):288-323, 1988. Google Scholar
  26. James C. Corbett et al. Spanner: Google’s globally distributed database. ACM Trans. Comput. Syst., 2013. Google Scholar
  27. Michael J Fischer, Nancy A Lynch, and Michael S Paterson. Impossibility of distributed consensus with one faulty process. Journal of the ACM (JACM), 32(2):374-382, 1985. Google Scholar
  28. Rachid Guerraoui, Nikola Knežević, Vivien Quéma, and Marko Vukolić. The next 700 bft protocols. In Proceedings of the 5th European conference on Computer systems, pages 363-376. ACM, 2010. Google Scholar
  29. Guy Golan Gueta, Ittai Abraham, Shelly Grossman, Dahlia Malkhi, Benny Pinkas, Michael Reiter, Dragos-Adrian Seredinschi, Orr Tamir, and Alin Tomescu. Sbft: a scalable and decentralized trust infrastructure. In DSN 2019, 2019. Google Scholar
  30. Bruce M Kapron, David Kempe, Valerie King, Jared Saia, and Vishal Sanwalani. Fast asynchronous byzantine agreement and leader election with full information. ACM Transactions on Algorithms, 2010. Google Scholar
  31. Jonathan Katz and Chiu-Yuen Koo. On expected constant-round protocols for byzantine agreement. In Annual International Cryptology Conference, pages 445-462. Springer, 2006. Google Scholar
  32. Valerie King and Jared Saia. Byzantine agreement in polynomial expected time. In STOC 2103. ACM, 2013. Google Scholar
  33. Eleftherios Kokoris-Kogias, Alexander Spiegelman, Dahlia Malkhi, and Ittai Abraham. Bootstrapping consensus without trusted setup: Fully asynchronous distributed key generation. IACR Cryptol. ePrint Arch., 2019. Google Scholar
  34. Ramakrishna Kotla, Lorenzo Alvisi, Mike Dahlin, Allen Clement, and Edmund Wong. Zyzzyva: speculative byzantine fault tolerance. In ACM SIGOPS Operating Systems Review. ACM, 2007. Google Scholar
  35. Leslie Lamport et al. Paxos made simple. ACM Sigact News, 32(4):18-25, 2001. Google Scholar
  36. Leslie Lamport, Dahlia Malkhi, and Lidong Zhou. Vertical paxos and primary-backup replication. In Proceedings of the 28th ACM Symposium on Principles of Distributed Computing, PODC '09, page 312–313, New York, NY, USA, 2009. Association for Computing Machinery. URL:
  37. Daniel Lehmann and Michael O Rabin. On the advantages of free choice: a symmetric and fully distributed solution to the dining philosophers problem. In POPL. ACM, 1981. Google Scholar
  38. Kfir Lev-Ari, Alexander Spiegelman, Idit Keidar, and Dahlia Malkhi. FairLedger: A Fair Blockchain Protocol for Financial Institutions. In Pascal Felber, Roy Friedman, Seth Gilbert, and Avery Miller, editors, 23rd International Conference on Principles of Distributed Systems (OPODIS 2019), volume 153 of Leibniz International Proceedings in Informatics (LIPIcs), pages 4:1-4:17, Dagstuhl, Germany, 2020. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik. URL:
  39. Jinyuan Li and David Maziéres. Beyond one-third faulty replicas in byzantine fault tolerant systems. In NSDI, 2007. Google Scholar
  40. Shengyun Liu, Paolo Viotti, Christian Cachin, Vivien Quéma, and Marko Vukolić. XFT: Practical fault tolerance beyond crashes. In OSDI 2016, 2016. Google Scholar
  41. J-P Martin and Lorenzo Alvisi. Fast byzantine consensus. DSN 2006, 2006. Google Scholar
  42. Andrew Miller, Yu Xia, Kyle Croman, Elaine Shi, and Dawn Song. The honey badger of bft protocols. In CCS2 2016. ACM, 2016. Google Scholar
  43. Achour Mostéfaoui and Michel Raynal. Signature-free asynchronous byzantine systems: from multivalued to binary consensus with t < n/3, o(n²) messages, and constant time. Acta Informatica, 2017. Google Scholar
  44. Brian M Oki and Barbara H Liskov. Viewstamped replication: A new primary copy method to support highly-available distributed systems. In PODC. ACM, 1988. Google Scholar
  45. Diego Ongaro and John Ousterhout. In search of an understandable consensus algorithm. In 2014 USENIX Annual Technical Conference (USENIXATC 14), pages 305-319, 2014. Google Scholar
  46. Marshall Pease, Robert Shostak, and Leslie Lamport. Reaching agreement in the presence of faults. Journal of the ACM (JACM), 27(2):228-234, 1980. Google Scholar
  47. Michael O Rabin. Randomized byzantine generals. In SFCS 1983. IEEE, 1983. Google Scholar
  48. Nicola Santoro and Peter Widmayer. Time is not a healer. In STACS 1989. Springer, 1989. Google Scholar
  49. Alexander Spiegelman and Arik Rinberg. Ace: Abstract consensus encapsulation for liveness boosting of state machine replication, 2019. URL:
  50. Jian Yin, Jean-Philippe Martin, Arun Venkataramani, Lorenzo Alvisi, and Mike Dahlin. Separating agreement from execution for byzantine fault tolerant services. SIGOPS Oper. Syst. Rev., 37(5):253–267, 2003. URL:
  51. Maofan Yin, Dahlia Malkhi, Michael K Reiter, Guy Golan Gueta, and Ittai Abraham. Hotstuff: Bft consensus with linearity and responsiveness. In PODC 2019. ACM, 2019. Google Scholar