š§ BFT Algorithms: PBFT, Tendermint & HotStuff
Compare different approaches to Byzantine fault tolerance
Your Progress
0 / 5 completedāļø BFT Consensus Algorithms
Several algorithms have been developed to solve the Byzantine Generals Problem. Each makes different tradeoffs between performance, complexity, and fault tolerance guarantees.
Key Requirements for BFT
Agreement
All honest nodes must agree on the same value
Validity
If all honest nodes propose the same value, that value is chosen
Termination
All honest nodes eventually decide on a value
Fault Tolerance
System works correctly with up to f Byzantine nodes where n ā„ 3f + 1
š Interactive: Algorithm Comparison
Compare different BFT consensus algorithms and their characteristics:
PBFT
Practical Byzantine Fault Tolerance
Introduced: 1999
The first practical BFT algorithm that works in asynchronous networks. Uses a three-phase protocol: pre-prepare, prepare, commit.
Fault Tolerance
< 1/3 Byzantine
Throughput
1,000-3,500 TPS
Finality
Instant
ā Advantages
- ā¢Proven algorithm
- ā¢Fast finality
- ā¢Well-understood security
ā Tradeoffs
- ā¢O(n²) message complexity
- ā¢Complex view changes
- ā¢Scalability limits
Used By:
BFT vs CFT
| Aspect | BFT (Byzantine) | CFT (Crash) |
|---|---|---|
| Fault Type | Arbitrary/Malicious | Stop-fail only |
| Nodes Required | n ā„ 3f + 1 | n ā„ 2f + 1 |
| Communication | O(n²) or O(n) | O(n) |
| Complexity | High | Low |
| Use Case | Adversarial networks | Trusted datacenters |
Evolution of BFT
BFT consensus has evolved significantly since the original Byzantine Generals Problem paper in 1982:
- 1982: Byzantine Generals Problem formalized by Lamport, Shostak, and Pease
- 1999: PBFT makes BFT practical for the first time
- 2014: Tendermint simplifies BFT for blockchain applications
- 2018: HotStuff achieves linear communication complexity
- 2020s: New algorithms focus on scalability and threshold cryptography