BBCA-CHAIN: Low Latency, High Throughput BFT Consensus on a DAG (2310.06335v2)
Abstract: This paper presents a partially synchronous BFT consensus protocol powered by BBCA, a lightly modified Byzantine Consistent Broadcast (BCB) primitive. BBCA provides a Complete-Adopt semantic through an added probing interface to allow either aborting the broadcast by correct nodes or exclusively, adopting the message consistently in case of a potential delivery. It does not introduce any extra types of messages or additional communication costs to BCB. BBCA is harnessed into BBCA-CHAIN to make direct commits on a chained backbone of a causally ordered graph of blocks, without any additional voting blocks or artificial layering. With the help of Complete-Adopt, the additional knowledge gained from the underlying BCB completely removes the voting latency in popular DAG-based protocols. At the same time, causal ordering allows nodes to propose blocks in parallel and achieve high throughput. BBCA-CHAIN thus closes up the gap between protocols built by consistent broadcasts (e.g., Bullshark) to those without such an abstraction (e.g., PBFT/HotStuff), emphasizing their shared fundamental principles. Using a Bracha-style BCB as an example, we fully specify BBCA-CHAIN with simplicity, serving as a solid basis for high-performance replication systems (and blockchains).
- Malicious security comes for free in consensus with leaders. Cryptology ePrint Archive, 2020.
- L. Baird. The swirlds hashgraph consensus algorithm: Fair, fast, Byzantine fault tolerance. Swirlds Tech Reports SWIRLDS-TR-2016-01, Tech. Rep, 34:9–11, 2016.
- G. Bracha and S. Toueg. Asynchronous consensus and broadcast protocols. J. ACM, 32(4):824–840, 1985.
- E. Buchman. Tendermint: Byzantine fault tolerance in the age of blockchains. PhD thesis, University of Guelph, 2016.
- V. Buterin and V. Griffith. Casper the friendly finality gadget. arXiv preprint arXiv:1710.09437, 2017.
- Secure and efficient asynchronous broadcast protocols. In Annual International Cryptology Conference, pages 524–541. Springer, 2001.
- Random oracles in constantipole: practical asynchronous byzantine agreement using cryptography. In Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing, pages 123–132, 2000.
- M. Castro and B. Liskov. Practical Byzantine fault tolerance. In M. I. Seltzer and P. J. Leach, editors, Proceedings of the Third USENIX Symposium on Operating Systems Design and Implementation (OSDI), New Orleans, Louisiana, USA, February 22-25, 1999, pages 173–186. USENIX Association, 1999.
- Byzantine consensus is θ𝜃\thetaitalic_θ(n²): The Dolev-Reischuk bound is tight even in partial synchrony! In International Symposium on Distributed Computing, 2022.
- Making Byzantine fault tolerant systems tolerate Byzantine faults. In Proceedings of the 6th USENIX Symposium on Networked Systems Design and Implementation, NSDI’09, page 153–168. USENIX Association, 2009.
- Red belly: A secure, fair and scalable open blockchain. In 2021 IEEE Symposium on Security and Privacy (SP), pages 466–483. IEEE, 2021.
- GradedDAG: An asynchronous DAG-based BFT consensus with lower latency. In 42nd International Symposium on Reliable Distributed Systems, SRDS 2023, Marrakech, Morocco, September 27-29, 2023. IEEE, 2023.
- G. Danezis and D. Hrycyszyn. Blockmania: from block dags to consensus. arXiv preprint arXiv:1809.01620, 2018.
- Narwhal and tusk: a dag-based mempool and efficient BFT consensus. In Y. Bromberg, A. Kermarrec, and C. Kozyrakis, editors, EuroSys ’22: Seventeenth European Conference on Computer Systems, Rennes, France, April 5 - 8, 2022, pages 34–50. ACM, 2022.
- Early delivery totally ordered multicast in asynchronous environments. In FTCS-23 The Twenty-Third International Symposium on Fault-Tolerant Computing, pages 544–553. IEEE, 1993.
- Secure causal atomic broadcast, revisited. In 2017 47th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pages 61–72. IEEE, 2017.
- Consensus in the presence of partial synchrony. J. ACM, 35(2):288–323, 1988.
- E. Gafni. Round-by-round fault detectors (extended abstract) unifying synchrony and asynchrony. In Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing, pages 143–152, 1998.
- Aleph: Efficient atomic broadcast in asynchronous networks with byzantine nodes. In Proceedings of the 1st ACM Conference on Advances in Financial Technologies, AFT 2019, Zurich, Switzerland, October 21-23, 2019, pages 214–228. ACM, 2019.
- Jolteon and Ditto: Network-adaptive efficient consensus with asynchronous fallback. In Financial Cryptography and Data Security: 26th International Conference, FC 2022, pages 296–315. Springer, 2022.
- No-commit proofs: Defeating livelock in BFT. Cryptology ePrint Archive, 2021.
- SBFT: A scalable and decentralized trust infrastructure. In Proceedings - 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks, DSN 2019, Proceedings - 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks, DSN 2019, pages 568–580, 2019.
- RCC: resilient concurrent consensus for high-throughput secure transaction processing. In 37th IEEE International Conference on Data Engineering, ICDE 2021, Chania, Greece, April 19-22, 2021, pages 1392–1403. IEEE, 2021.
- Fast-HotStuff: A fast and resilient HotStuff protocol. arXiv preprint arXiv:2010.11454, 2020.
- All you need is DAG. In A. Miller, K. Censor-Hillel, and J. H. Korhonen, editors, PODC ’21: ACM Symposium on Principles of Distributed Computing, Virtual Event, Italy, July 26-30, 2021, pages 165–175. ACM, 2021.
- Zyzzyva: Speculative Byzantine fault tolerance. In Proceedings of Twenty-First ACM SIGOPS Symposium on Operating Systems Principles, SOSP ’07, page 45–58. Association for Computing Machinery, 2007.
- Fairledger: A fair blockchain protocol for financial institutions. In International Conference on Principles of Distributed Systems, 2019.
- A. Lewis-Pye. Quadratic worst-case message complexity for state machine replication in the partial synchrony model. ArXiv, abs/2201.01107, 2022.
- D. Malkhi and K. Nayak. Hotstuff-2: Optimal two-phase responsive bft. Cryptology ePrint Archive, 2023.
- D. Malkhi and P. Szalachowski. Maximal extractable value (MEV) protection on a DAG. CoRR, abs/2208.00940, 2022.
- J.-P. Martin and L. Alvisi. Fast Byzantine consensus. Dependable and Secure Computing, IEEE Transactions on, 3:202– 215, 08 2006.
- Byzantine-resistant total ordering algorithms. Information and Computation, 150(1):75–111, 1999.
- Mysten Labs. Private communication, 2023.
- M. K. Reiter. Secure agreement protocols: Reliable and atomic group multicast in Rampart. In Proceedings of the 2nd ACM Conference on Computer and Communications Security, CCS ’94, page 68–80. Association for Computing Machinery, 1994.
- How to securely replicate services. ACM Transactions on Programming Languages and Systems (TOPLAS), 16(3):986–1009, 1994.
- Shoal: Improving dag-bft latency and robustness. arXiv preprint arXiv:2306.03058, 2023.
- Bullshark: DAG BFT protocols made practical. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security, pages 2705–2718, 2022.
- [solution] Mir-BFT: Scalable and robust BFT for decentralized networks. J. Syst. Res., 2(1), 2022.
- State machine replication scalability made simple. In Y. Bromberg, A. Kermarrec, and C. Kozyrakis, editors, EuroSys ’22: Seventeenth European Conference on Computer Systems, Rennes, France, April 5 - 8, 2022, pages 17–33. ACM, 2022.
- E. Systems. The espresso sequencer: HotShot consensus and tiramisu data availability. arXiv preprint arXiv:2306.03058, 2023.
- T. D. Team. DiemBFT v4: State machine replication in the Diem blockchain. https://developers.diem.com/docs/technical-papers/state-machine-replication-paper, 2021.
- DispersedLedger: High-Throughput Byzantine consensus on variable bandwidth networks. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22), pages 493–512, 2022.
- HotStuff: BFT consensus with linearity and responsiveness. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC ’19, page 347–356. Association for Computing Machinery, 2019.