ABSTRACT
To reduce latency and communication overhead of asynchronous Byzantine Fault Tolerance (BFT) consensus, an optimistic path is often added, with Ditto and BDT as state-of-the-art representatives. These protocols first attempt to run an optimistic path that is typically adapted from partially-synchronous BFT and promises good performance in good situations. If the optimistic path fails to make progress, these protocols switch to a pessimistic path after a timeout, to guarantee liveness in an asynchronous network. This design crucially relies on an accurate estimation of the network delay Δ to set the timeout parameter correctly. A wrong estimation of Δ can lead to either premature or delayed switching to the pessimistic path, hurting the protocol's efficiency in both cases.
To address the above issue, we propose ParBFT, which employs a parallel optimistic path. As long as the leader of the optimistic path is non-faulty, ParBFT ensures low latency without requiring an accurate estimation of the network delay. We propose two variants of ParBFT, namely ParBFT1 and ParBFT2, with a trade-off between latency and communication. ParBFT1 simultaneously launches the two paths, achieves lower latency under a faulty leader, but has a quadratic message complexity even in good situations. ParBFT2 reduces the message complexity in good situations by delaying the pessimistic path, at the cost of a higher latency under a faulty leader. Experimental results demonstrate that ParBFT outperforms Ditto or BDT. In particular, when the network condition is bad, ParBFT can reach consensus through the optimistic path, while Ditto and BDT suffer from path switching and have to make progress using the pessimistic path.
- Ittai Abraham, Naama Ben-David, and Sravya Yandamuri. 2022. Efficient and Adaptively Secure Asynchronous Binary Agreement via Binding Crusader Agreement. In Proceedings of the 2022 ACM Symposium on Principles of Distributed Computing. ACM, 381--391.Google ScholarDigital Library
- Ittai Abraham, Srinivas Devadas, Danny Dolev, Kartik Nayak, and Ling Ren. 2019a. Synchronous Byzantine Agreement with Expected O (1) Rounds, Expected Communication, and Optimal Resilience. In Proceedings of the 23rd International Conference on Financial Cryptography and Data Security. Springer, 320--334.Google ScholarDigital Library
- Ittai Abraham, Philipp Jovanovic, Mary Maller, Sarah Meiklejohn, Gilad Stern, and Alin Tomescu. 2021. Reaching Consensus for Asynchronous Distributed Key Generation. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing. ACM, 363--373.Google ScholarDigital Library
- Ittai Abraham, Dahlia Malkhi, Kartik Nayak, Ling Ren, and Maofan Yin. 2020. Sync Hotstuff: Simple and Practical Synchronous State Machine Replication. In Proceedings of the 41st IEEE Symposium on Security and Privacy. IEEE, 106--118.Google ScholarCross Ref
- Ittai Abraham, Dahlia Malkhi, and Alexander Spiegelman. 2019b. Asymptotically Optimal Validated Asynchronous Byzantine Agreement. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing. ACM, 337--346.Google ScholarDigital Library
- Andreea B. Alexandru, Erica Blum, Jonathan Katz, and Julian Loss. 2022. State Machine Replication under Changing Network Conditions. In Proceedings of the 2022 International Conference on the Theory and Application of Cryptology and Information Security. Springer, 681--710.Google ScholarDigital Library
- Pierre-Louis Aublin, Rachid Guerraoui, Nikola Knevz ević, Vivien Quéma, and Marko Vukolić. 2015. The Next 700 BFT Protocols. ACM Transactions on Computer Systems, Vol. 32, 4 (2015), 1--45.Google ScholarDigital Library
- Michael Ben-Or. 1983. Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols. In Proceedings of the 2nd Annual ACM Symposium on Principles of Distributed Computing. ACM, 27--30.Google Scholar
- Piotr Berman, Juan A Garay, and Kenneth J. Perry. 1992. Bit Optimal Distributed Consensus. Computer Science Research (1992), 313--322.Google ScholarDigital Library
- Erica Blum, Jonathan Katz, and Julian Loss. 2021. Tardigrade: An Atomic Broadcast Protocol for Arbitrary Network Conditions. In Proceedings of the 27th International Conference on the Theory and Application of Cryptology and Information Security. Springer, 547--572.Google ScholarDigital Library
- Gabriel Bracha. 1987. Asynchronous Byzantine Agreement Protocols. Information and Computation, Vol. 75, 2 (1987), 130--143.Google ScholarDigital Library
- Gabriel Bracha and Sam Toueg. 1985. Asynchronous Consensus and Broadcast Protocols. Journal of the ACM, Vol. 32, 4 (1985), 824--840.Google ScholarDigital Library
- Ethan Buchman. 2016. Tendermint: Byzantine Fault Tolerance in the Age of Blockchains. Ph.,D. Dissertation. University of Guelph.Google Scholar
- Vitalik Buterin and Virgil Griffith. 2017. Casper the Friendly Finality Gadget. arXiv preprint arXiv:1710.09437 (2017).Google Scholar
- Christian Cachin, Klaus Kursawe, Frank Petzold, and Victor Shoup. 2001. Secure and Efficient Asynchronous Broadcast Protocols. In Proceedings of the 2001 Annual International Cryptology Conference. Springer, 524--541.Google ScholarCross Ref
- Christian Cachin and Jonathan A. Poritz. 2002. Secure Intrusion-tolerant Replication on the Internet. In Proceedings of the 2002 International Conference on Dependable Systems and Networks. IEEE, 167--176.Google Scholar
- Ran Canetti and Tal Rabin. 1993. Fast Asynchronous Byzantine Agreement with Optimal Resilience. In Proceedings of the 25th Annual ACM Symposium on Theory of Computing. ACM, 42--51.Google ScholarDigital Library
- Miguel Castro and Barbara Liskov. 1999. Practical Byzantine Fault Tolerance. In Proceedings of the 1999 USENIX Symposium on Operating Systems Design and Implementation. USENIX, 173--186.Google Scholar
- Benjamin Y. Chan and Elaine Shi. 2020. Streamlet: Textbook Streamlined Blockchains. In Proceedings of the 2nd ACM Conference on Advances in Financial Technologies. ACM, 1--11.Google Scholar
- Miguel Correia, Nuno Ferreira Neves, and Paulo Veríssimo. 2006. From Consensus to Atomic Broadcast: Time-free Byzantine-resistant Protocols without Signatures. The Computer Journal, Vol. 49, 1 (2006), 82--96.Google ScholarDigital Library
- Xiaohai Dai, Liping Huang, Jiang Xiao, Zhaonan Zhang, Xia Xie, and Hai Jin. 2022. Trebiz: Byzantine Fault Tolerance with Byzantine Merchants. In Proceedings of the 38th Annual Computer Security Applications Conference. ACM, 923--935.Google ScholarDigital Library
- Xiaohai Dai, Bolin Zhang, Hai Jin, and Ling Ren. 2023. ParBFT: Faster Asynchronous BFT Consensus with a Parallel Optimistic Path. Cryptology ePrint Archive, Paper 2023/679. https://eprint.iacr.org/2023/679 https://eprint.iacr.org/2023/679.Google Scholar
- George Danezis, Lefteris Kokoris-Kogias, Alberto Sonnino, and Alexander Spiegelman. 2022. Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus. In Proceedings of the 17th European Conference on Computer Systems. ACM, 34--50.Google ScholarDigital Library
- Sourav Das, Thomas Yurek, Zhuolun Xiang, Andrew Miller, Lefteris Kokoris-Kogias, and Ling Ren. 2022. Practical Asynchronous Distributed Key Generation. In Proceedings of the 2022 IEEE Symposium on Security and Privacy. IEEE, 2518--2534.Google ScholarCross Ref
- Danny Dolev. 1982. The Byzantine Generals Strike Again. Journal of Algorithms, Vol. 3, 1 (1982), 14--30.Google ScholarCross Ref
- Danny Dolev and H. Raymond Strong. 1983. Authenticated Algorithms for Byzantine Agreement. SIAM Journal on Computing, Vol. 12, 4 (1983), 656--666.Google ScholarDigital Library
- Sisi Duan, Michael K. Reiter, and Haibin Zhang. 2018. BEAT: Asynchronous BFT Made Practical. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2028--2041.Google ScholarDigital Library
- Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. 1988. Consensus in the Presence of Partial Synchrony. Journal of the ACM, Vol. 35, 2 (1988), 288--323.Google ScholarDigital Library
- Paul Feldman and Silvio Micali. 1988. Optimal Algorithms for Byzantine Agreement. In Proceedings of the 20th Annual ACM Symposium on Theory of Computing. ACM, 148--161.Google ScholarDigital Library
- Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson. 1985. Impossibility of Distributed Consensus with One Faulty Process. Journal of the ACM, Vol. 32, 2 (1985), 374--382.Google ScholarDigital Library
- Roy Friedman, Achour Mostefaoui, and Michel Raynal. 2005. Simple and Efficient Oracle-based Consensus Protocols for Asynchronous Byzantine Systems. IEEE Transactions on Dependable and Secure Computing, Vol. 2, 1 (2005), 46--56.Google ScholarDigital Library
- Yingzi Gao, Yuan Lu, Zhenliang Lu, Qiang Tang, Jing Xu, and Zhenfeng Zhang. 2022. Dumbo-ng: Fast Asynchronous BFT Consensus with Throughput-oblivious Latency. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. ACM, 1187--1201.Google ScholarDigital Library
- Rati Gelashvili, Lefteris Kokoris-Kogias, Alberto Sonnino, Alexander Spiegelman, and Zhuolun Xiang. 2022. Jolteon and Ditto: Network-adaptive Efficient Consensus with Asynchronous Fallback. In Proceedings of the 2022 International Conference on Financial Cryptography and Data Security. Springer, 296--315.Google ScholarDigital Library
- Vincent Gramoli. 2020. From Blockchain Consensus back to Byzantine Consensus. Future Generation Computer Systems, Vol. 107 (2020), 760--769.Google ScholarDigital Library
- Guy Golan Gueta, Ittai Abraham, Shelly Grossman, Dahlia Malkhi, Benny Pinkas, Michael Reiter, Dragos-Adrian Seredinschi, Orr Tamir, and Alin Tomescu. 2019. Sbft: A Scalable and Decentralized Trust Infrastructure. In Proceedings of the 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks. IEEE, 568--580.Google Scholar
- Bingyong Guo, Yuan Lu, Zhenliang Lu, Qiang Tang, Jing Xu, and Zhenfeng Zhang. 2022. Speeding Dumbo: Pushing Asynchronous BFT Closer to Practice. Cryptology ePrint Archive (2022).Google Scholar
- Bingyong Guo, Zhenliang Lu, Qiang Tang, Jing Xu, and Zhenfeng Zhang. 2020. Dumbo: Faster Asynchronous BFT Protocols. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security. ACM, 803--818.Google ScholarDigital Library
- Hai Jin and Jiang Xiao. 2022. Towards Trustworthy Blockchain Systems in the Era of ?Internet of Value": Development, Challenges, and Future Trends. Science China Information Sciences, Vol. 65 (2022), 1--11.Google ScholarCross Ref
- Jonathan Katz and Chiu-Yuen Koo. 2006. On Expected Constant-round Protocols for Byzantine Agreement. In Proceedings of the 2006 Annual International Cryptology Conference. Springer, 445--462.Google ScholarDigital Library
- Idit Keidar, Eleftherios Kokoris-Kogias, Oded Naor, and Alexander Spiegelman. 2021. All You Need is DAG. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing. ACM, 165--175.Google ScholarDigital Library
- Eleftherios Kokoris Kogias, Dahlia Malkhi, and Alexander Spiegelman. 2020. Asynchronous Distributed Key Generation for Computationally-Secure Randomness, Consensus, and Threshold Signatures. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security. ACM, 1751--1767.Google ScholarDigital Library
- Ramakrishna Kotla, Lorenzo Alvisi, Mike Dahlin, Allen Clement, and Edmund Wong. 2007. Zyzzyva: Speculative Byzantine Fault Tolerance. In Proceedings of 21st ACM SIGOPS Symposium on Operating Systems Principles. ACM, 45--58.Google ScholarDigital Library
- Klaus Kursawe and Victor Shoup. 2005. Optimistic Asynchronous Atomic Broadcast. In Proceedings of the 32nd International Colloquium on Automata, Languages and Programming. Springer, 204--215.Google ScholarDigital Library
- Leslie Lamport, Robert Shostak, and Marshall Pease. 1982. The Byzantine Generals Problem. ACM Transactions on Programming Languages and Systems, Vol. 4, 3 (1982), 382--401.Google ScholarDigital Library
- Jian Liu, Wenting Li, Ghassan O. Karame, and Nadarajah Asokan. 2018. Scalable Byzantine Consensus via Hardware-assisted Secret Sharing. IEEE Transactions on Computers, Vol. 68, 1 (2018), 139--151.Google ScholarDigital Library
- Yuan Lu, Zhenliang Lu, and Qiang Tang. 2022. Bolt-dumbo Transformer: Asynchronous Consensus as Fast as the Pipelined BFT. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2159--2173.Google ScholarDigital Library
- Yuan Lu, Zhenliang Lu, Qiang Tang, and Guiling Wang. 2020. Dumbo-mvba: Optimal Multi-valued Validated Asynchronous Byzantine Agreement, Revisited. In Proceedings of the 39th ACM Symposium on Principles of Distributed Computing. ACM, 129--138.Google ScholarDigital Library
- Ethan MacBrough. 2018. Cobalt: BFT Governance in Open Networks. arXiv preprint arXiv:1802.07240 (2018).Google Scholar
- Dahlia Malkhi, Kartik Nayak, and Ling Ren. 2019. Flexible Byzantine Fault Tolerance. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security. ACM, 1041--1053.Google ScholarDigital Library
- Andrew Miller, Yu Xia, Kyle Croman, Elaine Shi, and Dawn Song. 2016. The Honey Badger of BFT Protocols. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 31--42.Google ScholarDigital Library
- Atsuki Momose and Ling Ren. 2021. Multi-threshold Byzantine Fault Tolerance. In Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security. ACM, 1686--1699.Google ScholarDigital Library
- Achour Mostéfaoui, Hamouma Moumen, and Michel Raynal. 2014. Signature-free Asynchronous Byzantine Consensus with t< n/3 and O (n2) Messages. In Proceedings of the 2014 ACM Symposium on Principles of Distributed Computing. ACM, 2--9.Google ScholarDigital Library
- Achour Mostéfaoui, Hamouma Moumen, and Michel Raynal. 2015. Signature-free Asynchronous Binary Byzantine Consensus with t n/3, O (n2) Messages, and O (1) Expected Time. Journal of the ACM, Vol. 62, 4 (2015), 1--21.Google ScholarDigital Library
- Marshall Pease, Robert Shostak, and Leslie Lamport. 1980. Reaching Agreement in the Presence of Faults. Journal of the ACM, Vol. 27, 2 (1980), 228--234.Google ScholarDigital Library
- Marc Pilkington. 2016. Blockchain Technology: Principles and Applications. In Research Handbook on Digital Transformations. Edward Elgar Publishing.Google Scholar
- Michael O. Rabin. 1983. Randomized Byzantine Generals. In Proceedings of the 24th Annual Symposium on Foundations of Computer Science. IEEE, 403--409.Google ScholarDigital Library
- HariGovind V. Ramasamy and Christian Cachin. 2005. Parsimonious Asynchronous Byzantine-Fault-Tolerant Atomic Broadcast. In Proceedings of the 2005 International Conference On Principles Of Distributed Systems. Springer, 88--102.Google Scholar
- Maria A. Schett and George Danezis. 2021. Embedding A Deterministic BFT Protocol in A Block DAG. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing. ACM, 177--186.Google Scholar
- Alexander Spiegelman. 2020. In Search for An Optimal Authenticated Byzantine Agreement. arXiv preprint arXiv:2002.06993 (2020).Google Scholar
- Alexander Spiegelman, Neil Giridharan, Alberto Sonnino, and Lefteris Kokoris-Kogias. 2022. Bullshark: DAG BFT Protocols Made Practical. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2705--2718.Google ScholarDigital Library
- Chrysoula Stathakopoulou, Matej Pavlovic, and Marko Vukolić. 2022a. State Machine Replication Scalability Made Simple. In Proceedings of the 17th European Conference on Computer Systems. ACM, 17--33.Google ScholarDigital Library
- Chrysoula Stathakopoulou, David Tudor, Matej Pavlovic, and Marko Vukolić. 2022b. Mir-BFT: Scalable and Robust BFT for Decentralized Networks. Journal of Systems Research, Vol. 2, 1 (2022).Google ScholarCross Ref
- Sam Toueg. 1984. Randomized Byzantine Agreements. In Proceedings of the 3rd Annual ACM Symposium on Principles of Distributed Computing. ACM, 163--178.Google ScholarDigital Library
- Jun Wan, Atsuki Momose, Ling Ren, Elaine Shi, and Zhuolun Xiang. 2023. On the Amortized Communication Complexity of Byzantine Broadcast. In Proceedings of the 2023 ACM Symposium on Principles of Distributed Computing. ACM, 253--261.Google ScholarDigital Library
- Xin Wang, Sisi Duan, James Clavin, and Haibin Zhang. 2022. BFT in Blockchains: From Protocols to Use Cases. ACM Computing Surveys, Vol. 54, 10 (2022), 1--37.Google ScholarDigital Library
- Karl Wüst and Arthur Gervais. 2018. Do You Need A Blockchain. In Proceedings of the 2018 Crypto Valley Conference on Blockchain Technology. IEEE, 45--54.Google ScholarCross Ref
- Yang Xiao, Ning Zhang, Wenjing Lou, and Y. Thomas Hou. 2020. A Survey of Distributed Consensus Protocols for Blockchain Networks. IEEE Communications Surveys & Tutorials, Vol. 22, 2 (2020), 1432--1465.Google ScholarCross Ref
- Maofan Yin, Dahlia Malkhi, Michael K. Reiter, Guy Golan Gueta, and Ittai Abraham. 2019. Hotstuff: BFT Consensus with Linearity and Responsiveness. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing. ACM, 347--356.Google ScholarDigital Library
Index Terms
- ParBFT: Faster Asynchronous BFT Consensus with a Parallel Optimistic Path
Recommendations
Generalized Consensus for Practical Fault Tolerance
Middleware '19: Proceedings of the 20th International Middleware ConferenceDespite extensive research on Byzantine Fault Tolerant (BFT) systems, overheads associated with such solutions preclude widespread adoption. Past efforts such as the Cross Fault Tolerance (XFT) model address this problem by making a weaker assumption ...
Trebiz: Byzantine Fault Tolerance with Byzantine Merchants
ACSAC '22: Proceedings of the 38th Annual Computer Security Applications ConferenceThe popularity of blockchain technology has revived interest in Byzantine Fault Tolerance (BFT) consensus protocols. However, existing protocols suffer from high latency, especially when the system is deployed in a worldwide manner. Taking Practical ...
Consensus on transaction commit
The distributed transaction commit problem requires reaching agreement on whether a transaction is committed or aborted. The classic Two-Phase Commit protocol blocks if the coordinator fails. Fault-tolerant consensus algorithms also reach agreement, but ...
Comments