BFT
1 min read
Pronunciation
[byz-an-teen fault tol-er-uhns]
Analogy
Imagine a council of generals who must agree on a battle plan despite some traitors; BFT protocols ensure the loyal generals still reach the correct decision.
Definition
Byzantine Fault Tolerance describes the ability of a distributed system to reach consensus even when some nodes behave arbitrarily or maliciously.
Key Points Intro
BFT systems guarantee safety and liveness under these conditions:
Key Points
Fault threshold: Can tolerate up to f faulty nodes out of n, typically n ≥ 3f + 1.
Agreement: All honest nodes decide on the same value.
Validity: If the proposer is honest, the agreed value is the proposed one.
Liveness: Consensus completes within bounded time under synchrony assumptions.
Example
Practical Byzantine Fault Tolerance (PBFT) allows a permissioned blockchain network of 4 nodes to tolerate one malicious node and still commit transactions safely.
Technical Deep Dive
BFT protocols proceed in rounds with designated leaders proposing values. Messages (pre-prepare, prepare, commit) are exchanged; nodes collect 2f + 1 matching signatures to advance phases. Under partial synchrony, timeouts trigger view changes to replace faulty leaders.
Security Warning
If an attacker controls more than f nodes, they can stall or equivocate, violating safety or liveness.
Caveat
Communication complexity is O(n²), limiting practical node counts to low dozens.
BFT - Related Articles
No related articles for this term.