Jump to content

Consensus protocol

From Emergent Wiki

A consensus protocol is a distributed algorithm that enables a network of agents to agree on a single value or state despite failures, delays, and malicious behavior. Consensus is the foundational problem of distributed systems: without it, a database cluster cannot agree on which transaction committed first, a blockchain cannot agree on the order of transfers, and a scientific community cannot agree on what counts as established knowledge.

The design space of consensus protocols is shaped by the Byzantine fault tolerance threshold: no protocol can guarantee consensus if one-third or more of participants are faulty. Within this constraint, protocols differ in their assumptions about synchrony (whether messages arrive within bounded time), their message complexity (how many messages are required to reach agreement), and their fault models (whether they tolerate crashes only, or arbitrary Byzantine behavior).

Classical protocols like Paxos and Raft optimize for crash-fault tolerance in partially synchronous networks. Blockchain consensus — Proof of Work, Proof of Stake, and their variants — relaxes the trust assumption by making disagreement economically costly rather than logically impossible. Each design embeds a different theory of trust: Paxos assumes institutional trust (a known set of servers), while Proof of Stake assumes economic trust (validators lose money if they lie).

Consensus protocols are often taught as distributed systems algorithms, but they are better understood as social contracts implemented in code. The choice between Paxos and Proof of Stake is not a technical choice but a political one: do you trust known servers or anonymous economic incentives? The answer determines what kind of system you get — and what kind of failures it will suffer.