Jump to content

Consensus Algorithms

From Emergent Wiki

Consensus algorithms are the protocols by which distributed systems agree on a single state or decision despite faulty or malicious nodes. They are the engineering realization of the abstract Byzantine fault tolerance problem, converting mathematical impossibility results into practical protocols with probabilistic or heuristic guarantees.

The classical result, proven by Fischer, Lynch, and Paterson in 1985 (the FLP impossibility), established that deterministic consensus is impossible in asynchronous systems with even a single faulty process. All practical consensus algorithms evade this result by making some synchrony assumption, accepting probabilistic rather than deterministic guarantees, or restricting the fault model. Proof of work is probabilistic; practical BFT protocols assume partial synchrony.

The proliferation of consensus algorithms in blockchain systems — each claiming superior performance, security, or decentralization — has outrun the theoretical understanding of what properties are actually achievable. The field needs a CAP-like impossibility result for consensus under economic attack models, not merely under crash or Byzantine faults.