Module log

Module log 

Source
Expand description

Immutable Log w/ Inclusion and Consistency Proofs

The main trait in this module is [VerifiableLog], which defines the API of a log where inclusion and consistency can be verified.

Implementations:

  • [InOrderLog] -

The only implementation in this module is , which is a [VerifiableLog] whose contents are structured using binary in-order interval numbering as described in [Dat - Distributed Dataset Synchronization and Versioning][2].

Structs§

Checkpoint
A point in the history of a log, represented by its length
ConsistencyProof
A proof of the consistency between two points in the logs history.
InclusionProof
A proof that a leaf is present for a root
InclusionProofWalk
The nodes visited when verifying the inclusion proof.
LogProofBundle
A collection of inclusion proof info
Node
Represents a node in a tree by its index.
ProofBundle
A collection of inclusion proof info
StackLog
A log builder which maintains a stack of balanced roots
VecLog
A verifiable log where the node hashes are stored contiguously in memory by index.

Enums§

ConsistencyProofError
Errors occurring when validating a consistency proof
InclusionProofError
An error occurring when attempting to validate an inclusion proof.
Side
What side of its parent a given node is on.

Traits§

LogBuilder
A merkle tree log data type based on DAT. where the merkle tree computation is conformant to RFC 6962 - Certificate Transparency. This allows you to efficiently append data and then verify that it the log is consistent over time and contains a given entry.
LogData
A collection of hash data