Trait tectonic::digest::Digest

pub trait Digest: OutputSizeUser {
    // Required methods
    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) -> GenericArray<u8, Self::OutputSize>;
    fn finalize_into(self, out: &mut GenericArray<u8, Self::OutputSize>);
    fn finalize_reset(&mut self) -> GenericArray<u8, Self::OutputSize>
       where Self: FixedOutputReset;
    fn finalize_into_reset(
        &mut self,
        out: &mut GenericArray<u8, Self::OutputSize>
    )
       where Self: FixedOutputReset;
    fn reset(&mut self)
       where Self: Reset;
    fn output_size() -> usize;
    fn digest(data: impl AsRef<[u8]>) -> GenericArray<u8, Self::OutputSize>;
}
Expand description

Convenience 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() -> Self

Create new hasher instance.

fn new_with_prefix(data: impl AsRef<[u8]>) -> Self

Create new hasher instance which has processed the provided data.

fn update(&mut self, data: impl AsRef<[u8]>)

Process data, updating the internal state.

fn chain_update(self, data: impl AsRef<[u8]>) -> Self

Process input data in a chained manner.

fn finalize(self) -> GenericArray<u8, Self::OutputSize>

Retrieve result and consume hasher instance.

fn finalize_into(self, out: &mut GenericArray<u8, Self::OutputSize>)

Write result into provided array and consume the hasher instance.

fn finalize_reset(&mut self) -> GenericArray<u8, Self::OutputSize>
where Self: FixedOutputReset,

Retrieve result and reset hasher instance.

fn finalize_into_reset(&mut self, out: &mut GenericArray<u8, Self::OutputSize>)
where Self: FixedOutputReset,

Write result into provided array and reset the hasher instance.

fn reset(&mut self)
where Self: Reset,

Reset hasher instance to its initial state.

fn output_size() -> usize

Get output size of the hasher

fn digest(data: impl AsRef<[u8]>) -> GenericArray<u8, Self::OutputSize>

Compute hash of data.

Object Safety§

This trait is not object safe.

Implementors§

§

impl<D> Digest for D
where D: FixedOutput + Default + Update + HashMarker,