pub trait FixedOutputCore: UpdateCore + BufferKindUser + OutputSizeUserwhere
    Self::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>,
    <Self::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,{
    // Required method
    fn finalize_fixed_core(
        &mut self,
        buffer: &mut BlockBuffer<Self::BlockSize, Self::BufferKind>,
        out: &mut GenericArray<u8, Self::OutputSize>
    );
}
Expand description

Core trait for hash functions with fixed output size.

Required Methods§

source

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<Self::BlockSize, Self::BufferKind>, out: &mut GenericArray<u8, Self::OutputSize> )

Finalize state using remaining data stored in the provided block buffer, write result into provided array and leave self in a dirty state.

Implementations on Foreign Types§

source§

impl<D> FixedOutputCore for HmacCore<D>where D: CoreProxy, <D as CoreProxy>::Core: HashMarker + UpdateCore + FixedOutputCore<BufferKind = Eager> + BufferKindUser + Default + Clone, <<D as CoreProxy>::Core as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>, <<<D as CoreProxy>::Core as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,

§

impl FixedOutputCore for Ripemd320Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Ripemd320Core as BlockSizeUser>::BlockSize, <Ripemd320Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Ripemd320Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Ripemd256Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Ripemd256Core as BlockSizeUser>::BlockSize, <Ripemd256Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Ripemd256Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Ripemd160Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Ripemd160Core as BlockSizeUser>::BlockSize, <Ripemd160Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Ripemd160Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Ripemd128Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Ripemd128Core as BlockSizeUser>::BlockSize, <Ripemd128Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Ripemd128Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Keccak512Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Keccak512Core as BlockSizeUser>::BlockSize, <Keccak512Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Keccak512Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Sha3_512Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Sha3_512Core as BlockSizeUser>::BlockSize, <Sha3_512Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Sha3_512Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Keccak384Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Keccak384Core as BlockSizeUser>::BlockSize, <Keccak384Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Keccak384Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Sha3_224Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Sha3_224Core as BlockSizeUser>::BlockSize, <Sha3_224Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Sha3_224Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Keccak224Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Keccak224Core as BlockSizeUser>::BlockSize, <Keccak224Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Keccak224Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Keccak256Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Keccak256Core as BlockSizeUser>::BlockSize, <Keccak256Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Keccak256Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Keccak256FullCore

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Keccak256FullCore as BlockSizeUser>::BlockSize, <Keccak256FullCore as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Keccak256FullCore as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Sha3_256Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Sha3_256Core as BlockSizeUser>::BlockSize, <Sha3_256Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Sha3_256Core as OutputSizeUser>::OutputSize> )

§

impl FixedOutputCore for Sha3_384Core

§

fn finalize_fixed_core( &mut self, buffer: &mut BlockBuffer<<Sha3_384Core as BlockSizeUser>::BlockSize, <Sha3_384Core as BufferKindUser>::BufferKind>, out: &mut GenericArray<u8, <Sha3_384Core as OutputSizeUser>::OutputSize> )

Implementors§