Blockchain & Cryptocurrency Glossary

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

  • search-icon Clear Definitions
  • search-icon Practical
  • search-icon Technical
  • search-icon Related Terms

Practical Byzantine Fault Tolerance

1 min read
Pronunciation
[prak-ti-kuhl byz-an-teen fault tol-er-uhns]
Analogy
PBFT is like a committee that votes in three rounds—proposal, confirmation, and commitment—ensuring a decision stands even if some members lie.
Definition
PBFT is a BFT consensus algorithm optimized for real‑world performance in small‐to‐medium permissioned networks, achieving finality in three communication phases.
Key Points Intro
PBFT’s workflow relies on these phases:
Key Points

Pre-prepare: Leader proposes a value to all replicas.

Prepare: Replicas broadcast acceptance of the proposal.

Commit: Replicas confirm others' acceptance and commit.

View change: On timeout, replicas elect a new leader.

Example
A Hyperledger Fabric ordering service uses PBFT to order transactions among 7 nodes, tolerating up to 2 malicious nodes.
Technical Deep Dive
PBFT uses authenticated messaging with MACs or digital signatures. In each view, the primary multicasts a pre-prepare. Replicas reply with prepare messages; upon receiving 2f prepares, they multicast commit. Receiving 2f + 1 commits triggers execution. If messages are delayed, timers expire and replicas enter view-change to select a new primary.
Security Warning
A faulty primary can stall consensus until a view change completes; ensure view-change timeouts are tuned to network latency.
Caveat
O(n²) message complexity limits scalability beyond a few dozen replicas.

Practical Byzantine Fault Tolerance - Related Articles

No related articles for this term.