Struct merkle_sigs::Proof
[−]
[src]
pub struct Proof<T> { pub algorithm: &'static Algorithm, pub root_hash: Vec<u8>, pub lemma: Lemma, pub value: T, }
An inclusion proof represent the fact that a value
is a member
of a MerkleTree
with root hash root_hash
, and hash function algorithm
.
Fields
algorithm: &'static Algorithm
The hashing algorithm used in the original MerkleTree
root_hash: Vec<u8>
The hash of the root of the original MerkleTree
lemma: Lemma
The first Lemma
of the Proof
value: T
The value concerned by this Proof
Methods
impl<T> Proof<T>
[src]
fn new(
algo: &'static Algorithm,
root_hash: Vec<u8>,
lemma: Lemma,
value: T
) -> Proof<T>
algo: &'static Algorithm,
root_hash: Vec<u8>,
lemma: Lemma,
value: T
) -> Proof<T>
Constructs a new Proof
fn validate(&self, root_hash: &[u8]) -> bool
Checks whether this inclusion proof is well-formed,
and whether its root hash matches the given root_hash
.
impl<T> Proof<T>
[src]
fn from_protobuf(
algorithm: &'static Algorithm,
proto: ProofProto
) -> Option<Proof<T>> where
T: From<Vec<u8>>,
algorithm: &'static Algorithm,
proto: ProofProto
) -> Option<Proof<T>> where
T: From<Vec<u8>>,
Constructs a Proof
struct from its Protobuf representation.
fn into_protobuf(self) -> ProofProto where
T: Into<Vec<u8>>,
T: Into<Vec<u8>>,
Encode this Proof
to its Protobuf representation.
fn parse_from_bytes(
bytes: &[u8],
algorithm: &'static Algorithm
) -> Result<Option<Proof<T>>, ProtobufError> where
T: From<Vec<u8>>,
bytes: &[u8],
algorithm: &'static Algorithm
) -> Result<Option<Proof<T>>, ProtobufError> where
T: From<Vec<u8>>,
Parse a Proof
from its Protobuf binary representation.
fn write_to_bytes(self) -> Result<Vec<u8>, ProtobufError> where
T: Into<Vec<u8>>,
T: Into<Vec<u8>>,
Serialize this Proof
with Protobuf.
Trait Implementations
impl<T> Debug for Proof<T> where
T: Debug,
[src]
T: Debug,
fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
impl<T> Clone for Proof<T> where
T: Clone,
[src]
T: Clone,
fn clone(&self) -> Proof<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more