Making Byzantine Consensus Live (Extended Version)
Manuel Bravo, Gregory Chockler, Alexey Gotsman

TL;DR
This paper introduces a view synchronizer abstraction that simplifies the design and analysis of Byzantine consensus protocols, ensuring liveness and enabling uniform comparison of protocols like HotStuff, Tendermint, PBFT, and SBFT.
Contribution
The paper proposes a formal view synchronizer abstraction for Byzantine consensus, providing a unified framework for analysis and comparison of multiple protocols under partial synchrony.
Findings
Guarantees liveness for several protocols using the synchronizer
Provides latency bounds for protocols with the synchronizer
Facilitates uniform analysis and comparison of protocols
Abstract
Partially synchronous Byzantine consensus protocols typically structure their execution into a sequence of views, each with a designated leader process. The key to guaranteeing liveness in these protocols is to ensure that all correct processes eventually overlap in a view with a correct leader for long enough to reach a decision. We propose a simple view synchronizer abstraction that encapsulates the corresponding functionality for Byzantine consensus protocols, thus simplifying their design. We present a formal specification of a view synchronizer and its implementation under partial synchrony, which runs in bounded space despite tolerating message loss during asynchronous periods. We show that our synchronizer specification is strong enough to guarantee liveness for single-shot versions of several well-known Byzantine consensus protocols, including HotStuff, Tendermint, PBFT and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
