rfc9162
Rust crates for an append-only Merkle log hashed as RFC 9162 (Certificate Transparency Version 2.0). A log built with these crates gives each reader an inclusion proof for one entry and a consistency proof between two signed tree heads.
Why
A signature on a tree head binds the signer to one size and one root. An inclusion proof shows that one entry is in that tree. A consistency proof shows that a later head extends an earlier head by append. A reader who stores a head can check both, entry by entry and head by head.
The hash tree, the stored tiles and the indexed log are separate crates. A program can hash a tree in memory, store the same tree where a tlog-tiles client can read it, or keep an index whose own manifests are entries in the log.
Hash three records, prove inclusion, and prove that a fourth record extends the log.
Tutorial Build a logWrite the records to a store, sign a checkpoint, and check the proofs a reader receives.
How-to Tasks by crateRecipes for the hash tree, the tile store and the indexed log, including the sidecar.
Topics ConceptsThe Merkle tree, inclusion and consistency proofs, tiles, runs and signed checkpoints.
Reference API referencerustdoc for rfc9162, rfc9162-tiles and rfc9162-log, plus the sidecar command.
Rustup on Linux, macOS and Windows, then the three crates at one version.
The crates are version 0.10.0. Installation has the commands. The changelog records earlier releases.
Copyright (c) rfc9162 developers