The Byzantine Generals Problem
The work
| Authors | Leslie Lamport; Robert Shostak; Marshall Pease |
|---|---|
| Editors | |
| Type | article |
| Year | 1982 |
| Citekey | lamport1982byzantine |
Where it appeared
| Published in | ACM Transactions on Programming Languages and Systems |
|---|---|
| Publisher | Association for Computing Machinery |
| Volume | 4 |
| Issue | 3 |
| Pages | 382--401 |
Identifiers
| DOI | 10.1145/357172.357176 |
|---|
Access
| Landing page | https://doi.org/10.1145/357172.357176 |
|---|---|
| Free full text | https://dl.acm.org/doi/pdf/10.1145/357172.357176 |
Related
| Distinct from | pease1980reaching |
|---|
Abstract
Reliable computer systems must handle malfunctioning components that give conflicting information to different parts of the system. This situation can be expressed abstractly in terms of a group of generals of the Byzantine army camped with their troops around an enemy city. Communicating only by messenger, the generals must agree upon a common battle plan. However, one or more of them may be traitors who will try to confuse the others. The problem is to find an algorithm to ensure that the loyal generals will reach agreement. It is shown that, using only oral messages, this problem is solvable if and only if more than two-thirds of the generals are loyal; so a single traitor can confound two loyal generals. With unforgeable written messages, the problem is solvable for any number of generals and possible traitors. Applications of the solutions to reliable computer systems are then discussed.
A copy is held
pdf, 1.2 MB. Not published — it may be under copyright. The facts and links here are.
How it got here
| How it got here | agent via unpaywall |
|---|---|
| Added | 2026-08-05 00:00 UTC |
| Approved by | a person 2026-08-23 14:11 UTC |
Cite it as
@article{lamport1982byzantine,
title = {The Byzantine Generals Problem},
author = {Leslie Lamport and Robert Shostak and Marshall Pease},
year = {1982},
journal = {ACM Transactions on Programming Languages and Systems},
publisher = {Association for Computing Machinery},
volume = {4},
number = {3},
pages = {382--401},
doi = {10.1145/357172.357176},
}
This record lives at https://refs.drheap.org/lamport1982byzantine/ and will keep doing so.