Probabilistic Byzantine Fault Tolerance (Extended Version) (2405.04606v3)
Abstract: Consensus is a fundamental building block for constructing reliable and fault-tolerant distributed services. Many Byzantine fault-tolerant consensus protocols designed for partially synchronous systems adopt a pessimistic approach when dealing with adversaries, ensuring safety in a deterministic way even under the worst-case scenarios that adversaries can create. Following this approach typically results in either an increase in the message complexity (e.g., PBFT) or an increase in the number of communication steps (e.g., HotStuff). In practice, however, adversaries are not as powerful as the ones assumed by these protocols. Furthermore, it might suffice to ensure safety and liveness properties with high probability. In order to accommodate more realistic and optimistic adversaries and improve the scalability of the BFT consensus, we propose ProBFT (Probabilistic Byzantine Fault Tolerance). ProBFT is a leader-based probabilistic consensus protocol with a message complexity of $O(n\sqrt{n})$ and an optimal number of communication steps that tolerates Byzantine faults in permissioned partially synchronous systems. It is built on top of well-known primitives, such as probabilistic Byzantine quorums and verifiable random functions. ProBFT guarantees safety and liveness with high probabilities even with faulty leaders, as long as a supermajority of replicas is correct, and using only a fraction of messages employed in PBFT (e.g., $20\%$). We provide a detailed description of ProBFT's protocol and its analysis.
- 2014. Tendermint : Consensus without Mining. https://www.weusecoins.com/assets/pdf/library/TendermintConsensuswithoutMining.pdf.
- 2014. Tezos – A Self-Amending Crypto-Ledger. https://tezos.com/whitepaper.pdf.
- 2024. Ethereum 2.0 – Validator. https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/validator.md.
- Good-case Latency of Byzantine Broadcast: a Complete Categorization. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing (PODC ’21).
- Exploiting Atomic Broadcast in Replicated Databases. In Proceedings of the 3rd International Euro-Par Conference (Euro-Par ’97).
- On the Availability of Non-strict Quorum Systems. In Proceedings of th 19th International Symposium on Distributed Computing (DISC ’05).
- Communication-efficient Randomized Consensus. Distributed Computing 31 (2018).
- Michael Ben-Or. 1983. Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols. In Proceedings of the 2nd Symposium on Principles of Distributed Computing (PODC ’83).
- State Machine Replication for the Masses with BFT-SMaRt. In Proceedings of the 44th International Conference on Dependable Systems and Networks (DSN ’14).
- Scalable State-Machine Replication. In Proceedings of the 44th International Conference on Dependable Systems and Networks (DSN ’14).
- Making Byzantine Consensus Live. Distributed Computing 35, 6 (2022).
- Secure and Efficient Asynchronous Broadcast Protocols. In Proceedings of the 21st Annual International Cryptology Conference (Crypto ’01).
- Random Oracles in Constantipole: Practical Asynchronous Byzantine Agreement Using Cryptography. In Proceedings of the 19th Symposium on Principles of Distributed Computing (PODC ’00).
- Quorum Systems in Permissionless Network. In Proceedings of the 26th International Conference on Principles of Distributed Systems (OPODIS ’22).
- Internet Computer Consensus. In Proceedings of the 41st Symposium on Principles of Distributed Computing (PODC ’22).
- Ran Canetti and Tal Rabin. 1993. Fast Asynchronous Byzantine Agreement with Optimal Resilience. In Proceedings of the 25th Annual Symposium on Theory of Computing (STOC ’93).
- The Design, Architecture and Performance of the Tendermint Blockchain Network. In Proceedings of the 40th International Symposium on Reliable Distributed Systems (SRDS ’21).
- Miguel Castro and Barbara Liskov. 1999. Practical Byzantine Fault Tolerance. In Proceedings of the 3rd Symposium on Operating Systems Design and Implementation (OSDI ’99).
- V. Chvátal. 1979. The Tail of the Hypergeometric Distribution. Discrete Mathematics 25, 3 (1979).
- Atomic Broadcast: From Simple Message Diffusion to Byzantine Agreement. Information and Computation 118, 1 (1995).
- Tobias Distler. 2021. Byzantine Fault-Tolerant State-Machine Replication from a Systems Perspective. Comput. Surveys 54, 1, Article 24 (2021), 38 pages.
- Micro Replication. In Proceedings of the 53rd International Conference on Dependable Systems and Networks (DSN ’23). 123–137.
- John R Douceur. 2002. The Sybil Attack. In Proceedings of the 1st International Workshop on Peer-to-Peer Systems (IPTPS ’02).
- BEAT: Asynchronous BFT made practical. In Conference on Computer and Communications Security.
- Devdatt P Dubhashi and Alessandro Panconesi. 2009. Concentration of Measure for the Analysis of Randomized Algorithms.
- Consensus in the Presence of Partial Synchrony. J. ACM 35, 2 (1988).
- Pesech Feldman and Silvio Micali. 1997. An Optimal Probabilistic Protocol for Synchronous Byzantine Agreement. SIAM J. Comput. 26, 4 (1997).
- Impossibility of Distributed Consensus with One Faulty Process. J. ACM 32, 2 (1985).
- Dumbo-NG: Fast Asynchronous BFT Consensus with Throughput-Oblivious Latency. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security (CCS’22).
- Algorand: Scaling Byzantine Agreements for Cryptocurrencies. In Proceedings of the 26th Symposium on Operating Systems Principles (SOSP ’17).
- Verifiable Random Functions (VRFs). Technical Report draft-irtf-cfrg-vrf-11. Internet Engineering Task Force.
- SBFT: A Scalable and Decentralized Trust Infrastructure. In Proceedings of the 49th International Conference on Dependable Systems and Networks (DSN ’19).
- Anthony J. Hayter. 2012. Probability and Statistics for Engineers and Scientists. Cengage Learning.
- Kumar Joag-Dev and Frank Proschan. 1983. Negative Association of Random Variables with Applications. The Annals of Statistics (1983).
- The Byzantine Generals Problem. ACM Transactions on Programming Languages and Systems 4, 3 (1982).
- Andrew Lewis-Pye and Ittai Abraham. 2024. Fever: Optimal Responsive View Synchronisation. In 27th International Conference on Principles of Distributed Systems (OPODIS 2023) (Leibniz International Proceedings in Informatics (LIPIcs)).
- Gosig: A Scalable and High-Performance Byzantine Consensus for Consortium Blockchains. In Proceedings of the 11th Symposium on Cloud Computing (SoCC ’20).
- A Scalable Multi-Layer PBFT Consensus for Blockchain. IEEE Transactions on Parallel and Distributed Systems 32, 5 (2020).
- Quorum Subsumption for Heterogeneous Quorum Systems. In Proceedings of the 37th International Symposium on Distributed Computing (DISC ’23).
- Teechain: A Secure Payment Network with Asynchronous Blockchain Access. In Proceedings of the 27th Symposium on Operating Systems Principles (SOSP ’19).
- Shyh-Wei Luan and Virgil D Gligor. 1990. A Fault-tolerant Protocol for Atomic Broadcast. IEEE Transactions on Parallel & Distributed Systems 1, 3 (1990).
- Probabilistic Quorum Systems. In Proceedings of the 16th Symposium on Principles of Distributed Computing (PODC ’97).
- High Performance State-Machine Replication. In Proceedings of the 41st International Conference on Dependable Systems and Networks (DSN ’11).
- David Mazieres. 2015. The Stellar Consensus Protocol: A Federated Model for Internet-level Consensus. https://stellar.org/papers/stellar-consensus-protocol.pdf.
- Verifiable Random Functions. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (FOCS ’99).
- The Honey Badger of BFT Protocols. In Proceedings of the 23rd Conference on Computer and Communications Security (CCS ’16).
- Signature-free Asynchronous Binary Byzantine Consensus with t<n/3𝑡𝑛3t<n/3italic_t < italic_n / 3, O(n2)𝑂superscript𝑛2O(n^{2})italic_O ( italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) Messages, and O(1)𝑂1O(1)italic_O ( 1 ) Expected Time. J. ACM 62, 4 (2015).
- Rajeev Motwani and Prabhakar Raghavan. 1995. Randomized Algorithms. Cambridge University Press.
- Satoshi Nakamoto. 2008. Bitcoin: A Peer-to-Peer Electronic Cash System.
- Cogsworth: Byzantine View Synchronization. Cryptoeconomic Systems 1, 2 (2021).
- Oded Naor and Idit Keidar. 2020. Expected Linear Round Synchronization: The Missing Link for Linear Byzantine SMR. In 34th International Symposium on Distributed Computing (DISC 2020) (Leibniz International Proceedings in Informatics (LIPIcs)).
- Kauri: Scalable BFT Consensus with Pipelined Tree-based Dissemination and Aggregation. In Proceedings of the 28th Symposium on Operating Systems Principles (SOSP ’21).
- Rafael Pass and Elaine Shi. 2017. The Sleepy Model of Consensus. In Proceedings of the 23rd International Conference on the Theory and Applications of Cryptology and Information Security (ASIACRYPT ’17).
- Fernando Pedone and André Schiper. 1998. Optimistic Atomic Broadcast. In Proceedings of the 12th International Symposium on Distributed Computing (DISC ’98).
- Michael O. Rabin. 1983. Randomized Byzantine Generals. In Proceedings of the 24th Proceedings of the 24th Symposium on Foundations of Computer Science (FOCS ’83).
- Fred B. Schneider. 1990. Implementing Fault-Tolerant Services Using the State Machine Approach: A Tutorial. Comput. Surveys 22, 4 (1990).
- The Ripple Protocol Consensus Algorithm. https://ripple.com/files/ripple_consensus_whitepaper.pdf.
- Matthew Skala. 2013. Hypergeometric Tail Inequalities: Ending the Insanity. arXiv preprint arXiv:1311.5939 (2013).
- Sam Toueg. 1984. Randomized Byzantine Agreements. In Proceedings of the 3rd Symposium on Principles of Distributed Computing (PODC ’84).
- On the Minimal Knowledge Required for Solving Stellar Consensus. In Proceedings of the 43rd International Conference on Distributed Computing Systems (ICDCS ’23).
- Marko Vukolić. 2013. The Origin of Quorum Systems. Bulletin of EATCS 2, 101 (2013).
- Marko Vukolić. 2015. The Quest for Scalable Blockchain Fabric: Proof-of-Work vs. BFT Replication. In Proceedings of the International Workshop on Open Problems in Network Security (iNetSec ’15).
- HotStuff: BFT Consensus with Linearity and Responsiveness. In Proceedings of the 38th Symposium on Principles of Distributed Computing (PODC ’19).
- Haifeng Yu. 2006. Signed Quorum Systems. Distributed Computing 18, 4 (2006).
- RapidChain: Scaling Blockchain via Full Sharding. In Proceedings of the 2018 Conference on Computer and Communications Security (CCS ’18).