logo
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

Create new hasher instance.

Create new hasher instance which has processed the provided data.

Process data, updating the internal state.

Process input data in a chained manner.

Retrieve result and consume hasher instance.

Write result into provided array and consume the hasher instance.

Retrieve result and reset hasher instance.

Write result into provided array and reset the hasher instance.

Reset hasher instance to its initial state.

Get output size of the hasher

Compute hash of data.

Implementors