Tendermint vs HotStuff (Serial and Chained)
Tendermint, Serial HotStuff, and Chained HotStuff are all Byzantine fault tolerant (BFT) consensus protocols. They share the same safety threshold (n >= 3f + 1) but differ in how they pipeline votes, where ordering is defined, and when finality is achieved.
This post compares them side by side with a color‑coded table for quick scanning.
One‑line intuition
- Tendermint: round‑based prevote/precommit with deterministic finality per block; block height is fundamental.
- Serial HotStuff: three explicit phases per block; QC chains are the safety backbone.
- Chained HotStuff: blocks form a chain; QC chains are fundamental and finality happens when a grandchild is certified.
Comparison table
| Aspect | Tendermint | HotStuff (Serial) | HotStuff (Chained) |
|---|---|---|---|
| Data availability | At proposal + gossip | At proposal + Prepare QC | At proposal + QC per block |
| Ordering | Per round (single proposer) | Per round (single proposer) | By chain (parent → child) |
| Finality | At 2f+1 precommits | After 3 phases | At certified grandchild |
| Execution | After commit | After commit | After commit |
| Consensus step | Prevote + Precommit quorum | 3-phase vote on a block | QC chain progression |
| Throughput | Medium | Lower | Higher |
| Latency | Medium | Higher | Lower |
What to pick
- Choose Tendermint if you want a clean round‑based protocol with fast deterministic finality and strong safety in permissioned or PoS settings.
- Choose Serial HotStuff if you want maximum clarity and explicit phases, and can tolerate lower throughput.
- Choose Chained HotStuff if you want better throughput/latency while keeping BFT finality.
Summary
All three provide strong safety under Byzantine faults, but they trade off pipelining efficiency and finality timing. Tendermint is stable and widely deployed, Serial HotStuff is conceptually simple, and Chained HotStuff is the performance‑optimized evolution.