mirror of
https://github.com/tendermint/tendermint.git
synced 2026-09-04 07:07:13 +00:00
* PBTS: second draft of protocol specification * PBTS: updates in consensus algorithm v2 * PBTS: adding/fixing links in second draft * PBTS: updated links for new algorithm specification * PBTS: changes suggested by Josef Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com> * PBTS: minor fixes and additions to spec Co-authored-by: Josef Widder <44643235+josef-widder@users.noreply.github.com>
order, parent
| order | parent | ||||
|---|---|---|---|---|---|
| 1 |
|
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).