Trait sequoia_openpgp::crypto::hash::Digest
source · pub trait Digest: DynClone + Write + Send + Sync {
// Required methods
fn algo(&self) -> HashAlgorithm;
fn digest_size(&self) -> usize;
fn update(&mut self, data: &[u8]);
fn digest(&mut self, digest: &mut [u8]) -> Result<()>;
// Provided method
fn into_digest(self) -> Result<Vec<u8>>
where Self: Sized { ... }
}
Expand description
Hasher capable of calculating a digest for the input byte stream.
This provides an abstract interface to the hash functions used in
OpenPGP. Digest
s can be are created using HashAlgorithm::context
.
Required Methods§
sourcefn algo(&self) -> HashAlgorithm
fn algo(&self) -> HashAlgorithm
Returns the algorithm.
sourcefn digest_size(&self) -> usize
fn digest_size(&self) -> usize
Size of the digest in bytes
Provided Methods§
Trait Implementations§
source§impl Digest for Box<dyn Digest>
impl Digest for Box<dyn Digest>
source§fn digest(&mut self, digest: &mut [u8]) -> Result<()>
fn digest(&mut self, digest: &mut [u8]) -> Result<()>
Finalizes the hash function and writes the digest into the provided slice.
Resets the hash function contexts.
digest
must be at least self.digest_size()
bytes large,
otherwise the digest will be truncated.
source§fn algo(&self) -> HashAlgorithm
fn algo(&self) -> HashAlgorithm
Returns the algorithm.
source§fn digest_size(&self) -> usize
fn digest_size(&self) -> usize
Size of the digest in bytes
Implementations on Foreign Types§
source§impl Digest for Box<dyn Digest>
impl Digest for Box<dyn Digest>
source§fn digest(&mut self, digest: &mut [u8]) -> Result<()>
fn digest(&mut self, digest: &mut [u8]) -> Result<()>
Finalizes the hash function and writes the digest into the provided slice.
Resets the hash function contexts.
digest
must be at least self.digest_size()
bytes large,
otherwise the digest will be truncated.