Module akd::proof_structs[][src]

Expand description

Note that the proofs AppendOnlyProof, MembershipProof and NonMembershipProof are Merkle Patricia tree proofs, while the proofs HistoryProof and LookupProof are AKD proofs.

Structs

Proof that no leaves were deleted from the initial epoch. This means that unchanged_nodes should hash to the initial root hash and the vec of inserted is the set of leaves inserted between these epochs. If we built the tree using the nodes in inserted and the nodes in unchanged_nodes as the leaves, it should result in the final root hash.

This proof is just an array of UpdateProofs.

Proof that a given label was at a particular state at the given epoch. This means we need to show that the state and version we are claiming for this node must have been:

Merkle proof of membership of a NodeLabel with a particular hash value in the tree at a given epoch.

Merkle Patricia proof of non-membership for a NodeLabel in the tree at a given epoch.

A vector of UpdateProofs are sent as the proof to a history query for a particular key. For each version of the value associated with the key, the verifier must check that: