Problem bizantyjskich generałów
Jak n generałów ma osiągnąć konsensus, gdy część z nich aktywnie sabotuje komunikację? Klasyczny problem systemów rozproszonych.
Lamport, Shostak, Pease (1982). Wykazano, że do tolerowania f węzłów bizantyjskich potrzeba co najmniej 3f+1 uczestników. To coś innego niż awaria typu „crash” (węzeł po prostu przestaje odpowiadać) — węzły bizantyjskie potrafią kłamać, wysyłać różne komunikaty różnym adresatom i szerzyć dezinformację. Praktyczne algorytmy BFT: PBFT (1999), Tendermint, HotStuff (Diem/Libra), a także PoW w stylu Bitcoina (probabilistyczny). Problem napędzający projektowanie blockchainów.