Trait VariableOutputCore
pub trait VariableOutputCore: UpdateCore + OutputSizeUser + BufferKindUser + Sized
Core trait for hash functions with variable output size.
Maximum output size is equal to OutputSizeUser::OutputSize.
Users are expected to truncate result returned by the
finalize_variable_core to output_size passed to the new method
during construction. Truncation side is defined by the TRUNC_SIDE
associated constant.
Associated Constants
const TRUNC_SIDE: TruncSide;Side which should be used in a truncated result.
Required Methods
fn new(output_size: usize) -> Result<Self, InvalidOutputSize>Initialize hasher state for given output size.
Errors
Returns
InvalidOutputSizeifoutput_sizeis not valid for the algorithm, e.g. if it's bigger than theOutputSizeassociated type.fn finalize_variable_core(&mut self, buffer: &mut Buffer<Self>, out: &mut Output<Self>)Finalize hasher and write full hashing result into the
outbuffer.The result must be truncated to
output_sizeused during hasher construction. Truncation side is defined by theTRUNC_SIDEassociated constant.