HomeLearnCoursesHackathonsAccount
Blockchain Consensus Mechanisms
The Byzantine Generals Problem · 1/2

A classic thought experiment

In 1982, computer scientists Leslie Lamport, Robert Shostak, and Marshall Pease published a paper describing a scenario that has since become the standard way to talk about this challenge. Several generals, each commanding a division, surround a city. They can only communicate by messenger, and they must all attack at the same time or all retreat at the same time, because a partial attack would fail. The catch is that some of the generals might be traitors, sending different messages to different peers specifically to cause the loyal generals to act out of sync.

The generals in the story stand in for nodes on a network, and the traitors stand in for participants who are faulty or malicious. The paper's core finding was about how many traitors a system can tolerate while the loyal generals still reach agreement, and what kind of communication and voting rules are needed to get there. That finding is why the problem is described as needing tolerance for Byzantine faults, meaning failures that can include arbitrary, even actively deceptive behavior, not just going silent.