In this week's episode, we go deep into Consensus Algorithms and HotStuff with Ittai Abraham from VMware Research. We chat about the evolution of consensus algorithms, BFT, and how these early ideas have become the backbone of blockchain tech. We cover PBFT, Tendermint and Ittai's research into SBFT, HotStuff, and the improvements he has been working on since HotStuff's incorporation into Facebook's Libra protocol.
The papers and references we mention:
- Early zkpodcast episode on consensus with Robert Habermeier
- PBFT (Castro and Liskov) (see project here)
- BASE (Castro, Rodrigues, and Liskov) (the forgotten companion of PBFT that suggests a clean State Machine abstraction)
- Consensus in the Presence of Partial Synchrony (Dwork, Lynch Stockmeyer)
- Consensus in the Presence of Partial Synchrony (Dwork, Lynch Stockmeyer) (this paper won the 2007 Dijkstra award)
- Multiple leader BFT (Katz and Koo)
Some of Ittai's work:
- SBFT (with Golan, Grossman, Malkhi, Pinkas, Reiter, Seredinschi, Tamir, and Tomescu)
- Hotstuff (with Yin, Malkhi, Reiter, and Golan)
- Asynchronous BFT (with Malkhi and Spiegelman)
- Sync Hotstuff (with Malkhi, Nayak, Ren, and Yin)
- Optimal Good-case Latency for Byzantine Broadcast and State Machine Replication (with Nayak, Ren, and Xiang) new!
- On the Optimality of Optimistic Responsiveness (with Nayak ,Ren, and Shrestha) new!
Ittai's group blog on cryptography and consensus: Decentralized Thoughts blog
We also mention:
- Tendermint (from 2016 not 2014)
- Casper FFG
- Thunderella
- The AVA consensus
Thank you to this week's sponsor Matter Labs.
Matter Labs, the creator of the first zkRollup prototype, is also the team behind zkSync: a user-centric Ethereum scaling solution, secured by zero-knowledge proofs.
zkSync testnet is live! You are welcome to try out its simple and intuitive user interface at zksync.io.
If you like what we do:
Follow us on Twitter – @zeroknowledgefm
Join us on Telegram
Give us feedback! https://forms.gle/iKMSrVtcAn6BByH6A
Support our Gitcoin Grant
Support us on the ZKPatreon
Or directly here:
ETH: 0xC0FFEE1B5083230a5154F55f253B6b6ae8F29B1a
BTC: 1cafekGa3podM4fBxPSQc6RCEXQNTK8Zz
ZEC: t1R2bujRF3Hzte9ALHpMJvY8t5kb9ut9SpQ