pub trait Digest: OutputSizeUser {
fn new() -> Self;
fn new_with_prefix(data: impl AsRef<[u8]>) -> Self;
fn update(&mut self, data: impl AsRef<[u8]>);
fn chain_update(self, data: impl AsRef<[u8]>) -> Self;
fn finalize(self) -> Output<Self>;
fn finalize_into(self, out: &mut Output<Self>);
fn finalize_reset(&mut self) -> Output<Self>
where
Self: FixedOutputReset;
fn finalize_into_reset(&mut self, out: &mut Output<Self>)
where
Self: FixedOutputReset;
fn reset(&mut self)
where
Self: Reset;
fn output_size() -> usize;
fn digest(data: impl AsRef<[u8]>) -> Output<Self>;
}
Expand description
Convinience wrapper trait covering functionality of cryptographic hash functions with fixed output size.
This trait wraps Update
, FixedOutput
, Default
, and
HashMarker
traits and provides additional convenience methods.
Required Methods
fn new_with_prefix(data: impl AsRef<[u8]>) -> Self
fn new_with_prefix(data: impl AsRef<[u8]>) -> Self
Create new hasher instance which has processed the provided data.
fn chain_update(self, data: impl AsRef<[u8]>) -> Self
fn chain_update(self, data: impl AsRef<[u8]>) -> Self
Process input data in a chained manner.
fn finalize_into(self, out: &mut Output<Self>)
fn finalize_into(self, out: &mut Output<Self>)
Write result into provided array and consume the hasher instance.
fn finalize_reset(&mut self) -> Output<Self> where
Self: FixedOutputReset,
fn finalize_reset(&mut self) -> Output<Self> where
Self: FixedOutputReset,
Retrieve result and reset hasher instance.
fn finalize_into_reset(&mut self, out: &mut Output<Self>) where
Self: FixedOutputReset,
fn finalize_into_reset(&mut self, out: &mut Output<Self>) where
Self: FixedOutputReset,
Write result into provided array and reset the hasher instance.
fn output_size() -> usize
fn output_size() -> usize
Get output size of the hasher