HomeAlgorithms & AIByzantine Fault Tolerant Consensus (PBFT)

Byzantine Fault Tolerant Consensus (PBFT) — 2D

Interactive 2D PBFT simulator: watch a ring of nodes run the pre-prepare / prepare / commit three-phase protocol, inject Byzantine nodes that send genuinely different values to different peers, and see live whether the 2f+1-of-N quorum still forces every honest replica to the same committed value.

Algorithms & AI2DAdvanced60 FPS📱 Mobile-adapted⇄ 3D version
2d-distributed-consensus-byzantine-fault-tolerance ↗ Open standalone

Distributed systems that must keep working even when some participants lie, crash, or send contradictory messages rely on Byzantine fault tolerant consensus. This 2D simulator renders a ring of replica nodes running the classic PBFT three-phase protocol — pre-prepare, prepare, commit — with animated message arrows travelling node to node. A configurable subset of nodes is marked Byzantine and, when equivocation is enabled, genuinely sends one value to one half of the ring and a different, fabricated value to the other half rather than a single consistent message — exactly the attack the protocol's 2f+1-out-of-N≥3f+1 quorum rule is designed to survive. Every honest node's vote count is computed from the actual messages it received each round. Push the faulty count past the safety bound and watch honest replicas on the minority side genuinely fail to reach a matching quorum and stall, in real time.

⚙ Under the hood

Watch a ring of replica nodes run the PBFT pre-prepare/prepare/commit protocol in real time, inject Byzantine nodes that equivocate, and see whether the 2f+1-out-of-N quorum still reaches safe consensus.

distributed systemsconsensusbyzantine fault tolerancepbftalgorithmsnetworking

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)