Graph
Byzantine Fault Tolerance

🧩Byzantine Fault Tolerance

NEW

Also known as: BFT

A property of distributed systems to reach correct consensus despite arbitrary, including malicious, node failures.

DESCRIPTION

Byzantine Fault Tolerance (BFT) addresses the most adversarial failure model where nodes may lie, collude, or behave arbitrarily. Protocols such as PBFT, Tendermint, and HotStuff tolerate up to one-third faulty replicas under partial synchrony assumptions. BFT underpins many permissioned blockchains and critical replicated services requiring strong consistency in hostile environments. Trade-offs include message complexity, latency, and scalability compared to crash fault tolerance. Quorum sizes, leader election, and view changes are key design aspects.

ALTERNATIVE DEFINITIONS

Wikipedia

Byzantine fault tolerance (BFT) is the property of a system that can resist the class of failures known as Byzantine faults, which are arbitrary or malicious failures.

Connects BFT directly to the Byzantine failure model and adversarial behavior.

Source

NIST Computer Security Resource Center

An arbitrary fault that can appear in many different ways, including malicious behavior.

Defines the failure model that BFT must tolerate.

Source

Byzantine Generals Problem Consensus PBFT Paxos Raft Durability (ACID) CAP Theorem Blockchain Proof of Stake Replication

COMPETING TERMS

Crash Fault Tolerance

RELATIONS

KNOWLEDGE AREAS

Infrastructure Software Engineering Real-time & Streaming Data Data Engineering

TARGET AUDIENCE

Software Architect Solution Architect Cloud Architect Software Developer Data Engineer AI Engineer

EXTERNAL SOURCES

TOP QUESTIONS

Why is Byzantine Fault Tolerance needed?

It ensures safety and liveness even when nodes behave arbitrarily or maliciously, critical for adversarial or untrusted environments.

Category: Relevancy

How many faults can BFT tolerate?

Classical protocols tolerate up to ⌊(n−1)/3⌋ Byzantine faults in a system of n replicas.

Category: Example

What’s the difference between BFT and Crash Fault Tolerance?

CFT assumes nodes fail by stopping; BFT assumes arbitrary failures, including lies and collusion, requiring stronger consensus.

Category: Misunderstanding

Is BFT scalable to hundreds of nodes?

Traditional BFT has high communication overhead; newer designs improve scalability but still face efficiency trade-offs.

Category: Opinion

Where is BFT used in practice?

Permissioned blockchains, critical control systems, and replicated services requiring strong guarantees under adversarial conditions.

Category: Example

What assumptions do BFT protocols rely on?

Typically partial synchrony, authenticated channels, and bounded Byzantine fraction for safety and liveness.

Category: Requirements

How does leader rotation help BFT?

View changes replace faulty leaders to maintain progress and reduce the impact of malicious behavior.

Category: Explanation

What is PBFT’s main contribution?

It showed practical performance for state machine replication with Byzantine faults in real networks.

Category: Example

Do public blockchains use classical BFT?

Some use BFT variants (e.g., Tendermint, HotStuff) or hybrid approaches combined with proof-of-stake.

Category: Example