Jolteon and Ditto: Network-Adaptive Efficient Consensus with Asynchronous Fallback (2106.10362v4)
Abstract: Existing committee-based Byzantine state machine replication (SMR) protocols, typically deployed in production blockchains, face a clear trade-off: (1) they either achieve linear communication cost in the happy path, but sacrifice liveness during periods of asynchrony, or (2) they are robust (progress with probability one) but pay quadratic communication cost. We believe this trade-off is unwarranted since existing linear protocols still have asymptotic quadratic cost in the worst case. We design Ditto, a Byzantine SMR protocol that enjoys the best of both worlds: optimal communication on and off the happy path (linear and quadratic, respectively) and progress guarantee under asynchrony and DDoS attacks. We achieve this by replacing the view-synchronization of partially synchronous protocols with an asynchronous fallback mechanism at no extra asymptotic cost. Specifically, we start from HotStuff, a state-of-the-art linear protocol, and gradually build Ditto. As a separate contribution and an intermediate step, we design a 2-chain version of HotStuff, Jolteon, which leverages a quadratic view-change mechanism to reduce the latency of the standard 3-chain HotStuff. We implement and experimentally evaluate all our systems. Notably, Jolteon's commit latency outperforms HotStuff by 200-300ms with varying system size. Additionally, Ditto adapts to the network and provides better performance than Jolteon under faulty conditions and better performance than VABA (a state-of-the-art asynchronous protocol) under faultless conditions. This proves our case that breaking the robustness-efficiency trade-off is in the realm of practicality.
- Fault-scalable byzantine fault-tolerant services. In Proceedings of the twentieth ACM Symposium on Operating Systems Principles (SOSP), pages 59–74, 2005.
- Communication complexity of byzantine agreement, revisited. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, pages 317–326, 2019.
- Asymptotically optimal validated asynchronous byzantine agreement. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing (PODC), pages 337–346, 2019.
- Network-agnostic state machine replication. arXiv preprint arXiv:2002.03437, 2020.
- The latest gossip on bft consensus. arXiv preprint arXiv:1807.04938, 2018.
- 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 constantinople: Practical asynchronous byzantine agreement using cryptography. Journal of Cryptology, 18(3):219–246, 2005.
- Practical byzantine fault tolerance. In Proceedings of the third symposium on Operating Systems Design and Implementation (NSDI), pages 173–186. USENIX Association, 1999.
- Pili: An extremely simple synchronous blockchain. Cryptology ePrint Archive, Report 2018/980, 2018.
- Consensus in the presence of partial synchrony. Journal of the ACM (JACM), 35(2):288–323, 1988.
- Impossibility of distributed consensus with one faulty process. Journal of the ACM (JACM), 32(2):374–382, 1985.
- Aleph: Efficient atomic broadcast in asynchronous networks with byzantine nodes. In Proceedings of the 1st ACM Conference on Advances in Financial Technologies (AFT), pages 214–228, 2019.
- The next 700 bft protocols. In Proceedings of the 5th European Conference on Computer Systems (EuroSys), pages 363–376, 2010.
- Sbft: a scalable and decentralized trust infrastructure. In 2019 49th Annual IEEE/IFIP international conference on dependable systems and networks (DSN), pages 568–580. IEEE, 2019.
- Dumbo: Faster asynchronous bft protocols. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, pages 803–818, 2020.
- Fast-hotstuff: A fast and resilient hotstuff protocol. arXiv preprint arXiv:2010.11454, 2020.
- All you need is dag. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing (PODC), 2021.
- Enhancing bitcoin security and performance with strong consistency via collective signing. In 25th Usenix Security Symposium (Usenix Security 16), pages 279–296, 2016.
- 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, pages 1751–1767, 2020.
- Zyzzyva: speculative byzantine fault tolerance. In Proceedings of twenty-first ACM Symposium on Operating Systems Principles (SOSP), pages 45–58, 2007.
- Optimistic asynchronous atomic broadcast. In International Colloquium on Automata, Languages, and Programming (ICALP), pages 204–215. Springer, 2005.
- Bolt-dumbo transformer: Asynchronous consensus as fast as pipelined bft. arXiv preprint arXiv:2103.09425, 2021.
- Dumbo-mvba: Optimal multi-valued validated asynchronous byzantine agreement, revisited. In Proceedings of the 39th Symposium on Principles of Distributed Computing, pages 129–138, 2020.
- Flexible byzantine fault tolerance. In Proceedings of the 2019 ACM Conference on Computer and Communications Security (CCS), pages 1041–1053, 2019.
- The honey badger of bft protocols. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS), pages 31–42, 2016.
- Hybrid-bft: Optimistically responsive synchronous consensus with optimal latency or resilience. Cryptology ePrint Archive, Report 2020/406, 2020.
- Ebb-and-flow protocols: A resolution of the availability-finality dilemma. arXiv preprint arXiv:2009.04987, 2020.
- Thunderella: Blockchains with optimistic instant confirmation. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 3–33. Springer, 2018.
- Parsimonious asynchronous byzantine-fault-tolerant atomic broadcast. In International Conference On Principles Of Distributed Systems, pages 88–102. Springer, 2005.
- Matthieu Rambaud. Malicious security comes for free in consensus with leaders. IACR Cryptol. ePrint Arch., 2020:1480, 2020.
- Blockchain cap theorem allows user-dependent adaptivity and finality. arXiv preprint arXiv:2010.13711, 2020.
- On the optimality of optimistic responsiveness. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security (CCS), page 839–857, 2020.
- Alexander Spiegelman. In search for a linear byzantine agreement. arXiv preprint arXiv:2002.06993, 2020.
- Ace: Abstract consensus encapsulation for liveness boosting of state machine replication. In 23rd International Conference on Principles of Distributed Systems (OPODIS), 2020.
- The LibraBFT Team. State machine replication in the libra blockchain, 2020. https://developers.libra.org/docs/state-machine-replication-paper.
- Strengthened fault tolerance in byzantine fault tolerant replication. In The 41st IEEE International Conference on Distributed Computing Systems (ICDCS), 2021.
- Hotstuff: Bft consensus with linearity and responsiveness. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing (PODC), pages 347–356, 2019.
- Long live the honey badger: Robust asynchronous {{\{{DPSS}}\}} and its applications. In 32nd USENIX Security Symposium (USENIX Security 23), pages 5413–5430, 2023.