In this post we show how to use Binding Crusader Agreement from the previous post, along with a strong common coin to get a simple and efficient Binary Byzantine Agreement with only an expected $O(n^2)$ message complexity. This is a simplified version from our paper. In the four previous posts...| decentralizedthoughts.github.io
In this post we introduce a key building block in the Byzantine Model called Binding Crusader Agreement. We show how to use it in the next post. This is a simplified version extracted from our paper. In the three previous posts we (1) defined the problem and discussed the FLP...| decentralizedthoughts.github.io
Since 2018, blockchain research has seen a surge in DAG-based BFT protocols aimed at achieving higher throughput. These protocols trace back to Hashgraph, 2018, Aleph, 2019, the theoretical work of All You Need is DAG, 2021, and systems papers like Narwhal and Bullshark. In this post, we highlight six key...| decentralizedthoughts.github.io
In this series of posts, we explore the marvelous world of consensus in the Asynchronous model. In this post, we start by simply defining the problem. Recall the FLP theorem: FLP theorem 1985: Any protocol where no two non-faulty parties decide different values in the asynchronous model that is resilient...| decentralizedthoughts.github.io
In this second post, we show the fundamental lower bound on the number of rounds for consensus protocols in the synchronous model. Theorem: Any protocol solving consensus in the synchronous model for $n$ parties that is resilient to $n-2 \geq t \geq 1$ crash failures must have an execution with...| decentralizedthoughts.github.io
TL;DR: We give a simple, unified proof that consensus with one mobile crash in synchrony, or one crash in asynchrony, inevitably admits infinite executions. The proof uses a single reduction to a mobile delay adversary, a weaker but expressive fault model and then shows that every consensus protocol resilient to...| decentralizedthoughts.github.io