Practical Byzantine Fault Tolerance
E467813
Practical Byzantine Fault Tolerance is a consensus algorithm for distributed systems that efficiently tolerates Byzantine (arbitrary) faults, enabling reliable operation even when some nodes behave maliciously or unpredictably.
Observed surface forms (2)
| Surface form | Occurrences |
|---|---|
| IBFT 2.0 | 1 |
| practical Byzantine fault tolerance (PBFT) | 1 |
Statements (47)
| Predicate | Object |
|---|---|
| instanceOf |
Byzantine fault tolerant protocol
ⓘ
consensus algorithm ⓘ distributed systems protocol ⓘ |
| abbreviation | PBFT NERFINISHED ⓘ |
| applicableTo | mission-critical distributed services ⓘ |
| assumes |
authenticated channels between replicas
ⓘ
digital signatures or message authentication codes ⓘ |
| category | state machine replication protocol ⓘ |
| communicationComplexity | O(n^2) per consensus decision ⓘ |
| comparedTo | classical Byzantine Generals Problem solutions ⓘ |
| designedFor | distributed systems ⓘ |
| ensures |
agreement among non-faulty replicas
ⓘ
fault isolation of Byzantine replicas ⓘ integrity of decisions ⓘ validity of decided values ⓘ |
| focusesOn | safety over availability under severe faults ⓘ |
| goal | practical performance for Byzantine fault tolerance ⓘ |
| guarantees |
liveness under partial synchrony assumptions
ⓘ
safety under asynchronous network assumptions with some synchrony conditions ⓘ |
| handles | primary failures via view change ⓘ |
| improvesOn | naive Byzantine agreement protocols in performance ⓘ |
| influenced |
early permissioned blockchain designs
ⓘ
enterprise blockchain consensus protocols ⓘ |
| messagePattern | all-to-all communication among replicas in prepare and commit phases ⓘ |
| optimizesFor | low latency in local-area networks ⓘ |
| originatedIn | late 1990s ⓘ |
| phase |
commit phase
ⓘ
pre-prepare phase ⓘ prepare phase ⓘ |
| property |
deterministic finality
ⓘ
replicated state machine semantics ⓘ strong consistency ⓘ |
| requires |
a designated primary replica per view
ⓘ
at least 3f+1 replicas to tolerate f Byzantine faults ⓘ deterministic application logic for replicas ⓘ |
| securityModel | up to f Byzantine replicas out of 3f+1 total ⓘ |
| tolerates |
Byzantine faults
ⓘ
arbitrary faults ⓘ malicious node behavior ⓘ unpredictable node behavior ⓘ |
| typeOfFaultTolerance | Byzantine fault tolerance ⓘ |
| usedIn |
fault-tolerant services
ⓘ
permissioned distributed ledger systems ⓘ replicated databases ⓘ |
| uses |
primary-backup replication model
ⓘ
three-phase commit-like message pattern ⓘ view-change protocol for primary replacement ⓘ |
Referenced by (3)
Full triples — surface form annotated when it differs from this entity's canonical label.
subject surface form:
Reaching Agreement in the Presence of Faults
this entity surface form:
practical Byzantine fault tolerance (PBFT)
this entity surface form:
IBFT 2.0