In the first part of this post, we describe a single-shot variation of Two Round HotStuff (see HotStuff v1 paper, March 2018 and this March 2018 post) using Locked-Broadcast that follows a similar path as our previous posts on Paxos and Linear PBFT. In the second part, we describe a...| decentralizedthoughts.github.io
We introduced definitions for consensus, Byzantine Broadcast (BB) and Byzantine Agreement (BA), in an earlier post. In this post, we discuss how consensus protocols are used in State Machine Replication (SMR), a fundamental approach in distributed computing for building fault-tolerant systems. We compare and contrast this setting to that of...| decentralizedthoughts.github.io
PBFT is a foundational multi-year project led by Barbara Liskov and her students, obtaining major advances in both the theory and practice of Byzantine Fault Tolerance. The PBFT conference version, journal version, Castro’s thesis, Liskov’s talk, and follow-up work on BASE are all required reading for anyone who wants to...| decentralizedthoughts.github.io
We explore a family of broadcast protocols in the authenticated setting in which a designated sender wants to create a delivery-certificate of its input value. After describing the base protocol we call Provable Broadcast ($PB$), we explore the surprising power of simply running $PB$ two times in a row, then...| decentralizedthoughts.github.io
Many blockchain protocols work under partial synchrony. Examples include PBFT, SBFT, Cosmos (Tendermint), Diem (DiemBFT), Jolteon, Espresso Systems (HotStuff), Dfinity (Internet Computer Consensus) and Ethereum (Casper). In this post, we discuss key principles behind the design of partially synchronous blockchain protocols. These principles, in some form, apply to all of...| decentralizedthoughts.github.io