Skip to main content

Module writer

Module writer 

Source
Expand description

The log write path: append leaves, sign checkpoints, mint inclusion proofs (requires native feature). The write half of the transparency log: append leaves, sign checkpoints, and mint inclusion proofs a verifier can replay offline.

LogWriter is storage-agnostic: it speaks the same TileStore port the read path uses (filesystem via crate::FsTileStore, S3 behind the s3 feature), persisting leaf hashes as C2SP level-0 tiles and the current SignedCheckpoint (JSON) in the store’s checkpoint slot. The Merkle math is the shared RFC 6962 implementation in auths_verifier::tlog, so every proof minted here is checked by the exact code all verifier surfaces (native, FFI, browser WASM) run.

Scale posture: the writer re-derives the full leaf list from tiles on every call and re-verifies the stored root against it — fail-closed on a corrupted store. That is O(n) per operation by design: this is the local-first/operator log (release histories, org evidence), not the hosted sequencer, which keeps the tree in memory.

Structs§

AppendedLeaf
The outcome of appending one leaf: its assigned index and the new signed checkpoint covering it.
LogSigningKey
The log operator’s Ed25519 checkpoint-signing key, parsed and curve-checked at construction so signing can never fail on curve drift. The C2SP signed-note log_signature field is Ed25519-pinned by spec; non-Ed25519 keys are rejected here, once, at the boundary.
LogWriter
Appends leaves to a tile-backed transparency log and mints offline inclusion proofs against its signed checkpoint.