You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
M. J. Fromberger c42c6d06d2
Migration of TLA+ files from the spec repo (#8004) (#8018)
2 years ago
..
consensus-paper ci: add markdown linter (#146) 4 years ago
light-client Clean up lint failures for Markdown files (#367) 2 years ago
proposer-based-timestamp Migration of TLA+ files from the spec repo (#8004) (#8018) 2 years ago
bft-time.md params: remove block timeiota (#248) 3 years ago
consensus.md rename HasVote to ReceivedVote (#289) 3 years ago
creating-proposal.md spec: remove reactor section (#242) 3 years ago
evidence.md evidence: add section explaining evidence (#324) 3 years ago
proposer-selection.md spec: remove reactor section (#242) 3 years ago
readme.md Clean up lint failures for Markdown files (#367) 2 years ago
signing.md ci: add markdown linter (#146) 4 years ago
wal.md spec: update spec with tendermint updates (#62) 5 years ago

readme.md

order parent
1 [{title Consensus} {order 4}]

Consensus

Specification of the Tendermint consensus protocol.

Contents

  • Consensus Paper - Latex paper on arxiv describing the core Tendermint consensus state machine with proofs of safety and termination.
  • BFT Time - How the timestamp in a Tendermint block header is computed in a Byzantine Fault Tolerant manner
  • Creating Proposal - How a proposer creates a block proposal for consensus
  • Light Client Protocol - A protocol for light weight consensus verification and syncing to the latest state
  • Signing - Rules for cryptographic signatures produced by validators.
  • Write Ahead Log - Write ahead log used by the consensus state machine to recover from crashes.

The protocol used to gossip consensus messages between peers, which is critical for liveness, is described in the reactors section.

There is also a stale markdown description of the consensus state machine (TODO update this).