Trait TryCommitVerify

Source
pub trait TryCommitVerify<Msg, Protocol: CommitmentProtocol>
where Self: Eq + Sized,
{ type Error: Error; // Required method fn try_commit(msg: &Msg) -> Result<Self, Self::Error>; // Provided method fn verify(&self, msg: &Msg) -> Result<(), VerifyError> { ... } }
Expand description

Trait for a failable version of commit-verify scheme.

Required Associated Types§

Source

type Error: Error

Error type that may be reported during TryCommitVerify::try_commit.

Required Methods§

Source

fn try_commit(msg: &Msg) -> Result<Self, Self::Error>

Tries to create commitment to a byte representation of a given message.

Provided Methods§

Source

fn verify(&self, msg: &Msg) -> Result<(), VerifyError>

Verifies the commitment against the message; default implementation just repeats the commitment to the message and check it against the self.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl TryCommitVerify<MultiSource, UntaggedProtocol> for MerkleTree

§Panics

Panics if the crate is compiled without rand feature enabled and the MultiSource doesn’t contain a static entropy.