LearnViz CompSci
Home / Learn / Distributed Systems & Cloud / Byzantine Fault Tolerance

Intermediate Topic 31 of 51 Distributed Systems & Cloud

Byzantine Fault Tolerance

Agreement even when some nodes behave maliciously.

How it works

Byzantine fault tolerance is the ability of a system to reach agreement even when some nodes behave arbitrarily or maliciously, such as sending conflicting messages to different peers, rather than merely crashing. The Byzantine generals problem shows that with oral messages, agreement requires more than three times as many nodes as faulty ones: n of at least 3f plus 1. Protocols such as PBFT, Tendermint and HotStuff use multiple voting rounds and signatures, while proof-of-work and proof-of-stake blockchains achieve probabilistic Byzantine resilience in open networks.

Where it is used

Blockchains, safety-critical aerospace controllers, financial settlement systems and permissioned consortium networks use BFT.

Common pitfall

It costs much more communication and latency than crash-fault-tolerant consensus, with quadratic messages in classic protocols, limiting scale. It needs authentication and assumes bounded collusion; if more than a third of nodes are faulty, safety fails. Most data-center systems assume crash faults only, since trusted infrastructure makes full BFT unnecessary overhead.

Where it fits in the course

Byzantine Fault Tolerance is topic 31 of 51 in Distributed Systems & Cloud, rated Intermediate. It follows Failure Detectors. The next topic is Distributed File Systems.

Practice and explore

How to study this topic

  1. Read the explanation above and restate the definition in your own words.
  2. Open the interactive lesson and answer its mini quiz.
  3. Read the common pitfall, then write a short example that avoids it.
  4. Check your understanding in the Distributed Systems & Cloud quiz, and revisit the topic if you miss a question.

Frequently asked questions

What is Byzantine Fault Tolerance?
Agreement even when some nodes behave maliciously. It belongs to Distributed Systems & Cloud and is an intermediate-level topic.
Where do people use Byzantine Fault Tolerance?
Blockchains, safety-critical aerospace controllers, financial settlement systems and permissioned consortium networks use BFT.
What is the most common mistake with Byzantine Fault Tolerance?
It costs much more communication and latency than crash-fault-tolerant consensus, with quadratic messages in classic protocols, limiting scale.
What should I learn before this topic?
Start with Failure Detectors, the topic just before it in Distributed Systems & Cloud.
How can I practice it?
Answer the mini quiz in the interactive lesson, then take the Distributed Systems & Cloud quiz.
Is Byzantine Fault Tolerance hard to learn?
It is an Intermediate topic. Be comfortable with the Beginner topics in this area first, then read the common pitfall carefully, since it is where most mistakes happen.
How long does it take to learn Byzantine Fault Tolerance?
Most learners can read the explanation and finish the interactive lesson in under an hour. Fluency comes from applying the idea, so plan a few short practice sessions with the quiz.
Which topics are related to Byzantine Fault Tolerance?
Failure Detectors, Distributed File Systems, Gossip Protocols are closely connected. The full list is in the related topics section of this page.
What should I study after Byzantine Fault Tolerance?
Continue with Distributed File Systems, the next topic in Distributed Systems & Cloud.

Related topics