Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 1.4 KB

README.md

File metadata and controls

30 lines (24 loc) · 1.4 KB

Malachite Consensus

Malachite core libraries implement the Tendermint consensus algorithm in Rust. These libraries come together with an executable specification in Quint. We use model-based testing to make sure that the implementation corresponds to the specification.

The specification of the consensus algorithm covers several concerns and is organized as follows:

  • overview.md: a summary of the operation and components of the Tendermint consensus algorithm at the protocol level;
  • pseudo-code.md: the Algorithm in page 6 of the Tendermint paper; since it is referenced several times in this specification, for simplicity and easy reference it was copied into this file;
  • misbehavior.md: describes different kinds of misbehavior by Byzantine processes that over time can harm the system (lead to disagreement), and how each misbehavior is defined and can be detected;
  • design.md: overviews the design of Malachite's implementation of the Tendermint consensus algorithm.

References