PBFT Consensus Simulator
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
PBFT Consensus Simulator gives you complete visibility into the live consensus state of any EVM-based Practical Byzantine Fault Tolerance (PBFT) consensus contract. It reads and displays the current consensus contract state including the complete validator set with weights, current round and sequence numbers, all pending proposals awaiting voting, detailed vote tallies per proposal showing which validators have voted, commit messages confirming proposal acceptance, prepared certificates that demonstrate quorum commitment, view change messages when leadership transitions, the current leader or primary validator, checkpoint states marking safe execution points, height information tracking the blockchain level, quorum certificate data showing threshold crossing, lock and commit status indicating what the contract has agreed upon, timeout values that trigger view changes, individual validator weights used for voting power calculations, quorum threshold parameters determining supermajority requirements, network delay estimates for timing purposes, finalization status showing whether the current height is finalized, and consensus events that capture protocol transitions. All data is organized in a clean dashboard with real-time updates, giving developers and protocol researchers deep insight into PBFT consensus execution.
HOW TO USE
Connect your wallet to the tool and select the network where your PBFT consensus contract is deployed. Enter the consensus contract address in the input field and click "Simulate Consensus". The tool immediately queries the contract using batched multicall to retrieve all consensus state variables in a single consistent snapshot. Results are displayed in organized cards showing the overall system state, validator roster, current round details, proposal status, and quorum certificate information. The tool refreshes data on demand by clicking the Simulate Consensus button again. The tool works with any EVM PBFT contract that implements standard view functions for validators, rounds, proposals, and quorum tracking.
THE MECHANISM
PBFT Consensus Simulator uses a batched multicall pattern to fetch all consensus state variables in a single RPC request, ensuring that every piece of displayed data comes from the exact same block height. This prevents inconsistencies that would occur if separate calls were made — for example, validator weights and commit counts might change between calls if a new proposal is committed mid-query. The tool constructs a single multicall transaction containing all required view functions including getValidators, currentRound, pendingProposals, commitCount, and quorumCertificate, sends it to the provider, and decodes the aggregated response. If the multicall fails due to provider limits or timeouts, the tool automatically falls back to individual calls, then reconciles results by block number, discarding any data that comes from a different height than the majority. The tool also implements automatic retry with exponential backoff for each call attempt, because public RPC endpoints frequently timeout or reject large batch requests. All vote counts and quorum thresholds are computed with BigNumber precision to accurately reflect the supermajority requirements of PBFT, and validator weights are summed and compared to thresholds using integer arithmetic to avoid precision errors.
WHAT IT CANNOT SEE
PBFT Consensus Simulator cannot simulate actual network conditions or message propagation delays, as those require real network simulations. The tool cannot predict when consensus will finalize in real network conditions, as finalization depends on network timing and validator responsiveness. It cannot detect if validators are actually following the protocol or if they are equivocating (sending conflicting messages), as that requires cross-validator message comparison. The tool cannot verify the cryptographic signatures of messages without validator public keys, which are not stored in the consensus contract. It cannot prove that the consensus state is accurate without running a full consensus client and validating each message individually. The tool also cannot detect Byzantine faults or identify which validators are misbehaving, as that requires analyzing message patterns across multiple rounds.
PLEASE NOTE
PBFT Consensus Simulator supports EVM-compatible chains only. It requires that the consensus contract implements standard view functions for the data displayed. Some PBFT contracts may use custom function names or data structures not covered by the default ABI — users can adapt the tool by modifying the ABI definition in the script. The tool is read-only and does not modify any contract state or initiate transactions. It is free to use and does not store or transmit any data off-device. Always verify consensus contract addresses from official sources before use.