Struct akd::proof_structs::LookupProof
source · [−]pub struct LookupProof<H: Hasher> {
pub epoch: u64,
pub plaintext_value: AkdValue,
pub version: u64,
pub exisitence_vrf_proof: Vec<u8>,
pub existence_proof: MembershipProof<H>,
pub marker_vrf_proof: Vec<u8>,
pub marker_proof: MembershipProof<H>,
pub freshness_vrf_proof: Vec<u8>,
pub freshness_proof: NonMembershipProof<H>,
}
Expand description
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:
- committed in the tree,
- not too far ahead of the most recent marker version,
- not stale when served. This proof is sent in response to a lookup query for a particular key.
Fields
epoch: u64
The epoch of this record
plaintext_value: AkdValue
The plaintext value in question
version: u64
The version of the record
exisitence_vrf_proof: Vec<u8>
VRF proof for the label corresponding to this version
existence_proof: MembershipProof<H>
Record existence proof
marker_vrf_proof: Vec<u8>
VRF proof for the marker preceding (less than or equal to) this version
marker_proof: MembershipProof<H>
Existence at specific marker
freshness_vrf_proof: Vec<u8>
VRF proof for the label corresponding to this version being stale
freshness_proof: NonMembershipProof<H>
Freshness proof (non membership of stale label)
Trait Implementations
sourceimpl<H: Hasher> Clone for LookupProof<H>
impl<H: Hasher> Clone for LookupProof<H>
sourceimpl<H: Debug + Hasher> Debug for LookupProof<H>
impl<H: Debug + Hasher> Debug for LookupProof<H>
sourceimpl<H: PartialEq + Hasher> PartialEq<LookupProof<H>> for LookupProof<H>
impl<H: PartialEq + Hasher> PartialEq<LookupProof<H>> for LookupProof<H>
sourcefn eq(&self, other: &LookupProof<H>) -> bool
fn eq(&self, other: &LookupProof<H>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &LookupProof<H>) -> bool
fn ne(&self, other: &LookupProof<H>) -> bool
This method tests for !=
.
impl<H: Hasher> StructuralPartialEq for LookupProof<H>
Auto Trait Implementations
impl<H> RefUnwindSafe for LookupProof<H> where
<H as Hasher>::Digest: RefUnwindSafe,
impl<H> Send for LookupProof<H>
impl<H> Sync for LookupProof<H>
impl<H> Unpin for LookupProof<H> where
<H as Hasher>::Digest: Unpin,
impl<H> UnwindSafe for LookupProof<H> where
<H as Hasher>::Digest: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more