pub struct BashHashCore<OS: OutputSize> { /* private fields */ }Expand description
Core bash-hash hasher generic over output size.
Specified in Section 7 of STB 34.101.77-2020.
Trait Implementations§
Source§impl<OS: OutputSize> AlgorithmName for BashHashCore<OS>
impl<OS: OutputSize> AlgorithmName for BashHashCore<OS>
Source§fn write_alg_name(f: &mut Formatter<'_>) -> Result
fn write_alg_name(f: &mut Formatter<'_>) -> Result
Write algorithm name into
f.Source§impl<OS: OutputSize> BlockSizeUser for BashHashCore<OS>
impl<OS: OutputSize> BlockSizeUser for BashHashCore<OS>
Source§type BlockSize = <OS as OutputSize>::BlockSize
type BlockSize = <OS as OutputSize>::BlockSize
Size of the block in bytes.
Source§fn block_size() -> usize
fn block_size() -> usize
Return block size in bytes.
Source§impl<OS: OutputSize> BufferKindUser for BashHashCore<OS>
impl<OS: OutputSize> BufferKindUser for BashHashCore<OS>
Source§type BufferKind = Eager
type BufferKind = Eager
Block buffer kind over which type operates.
Source§impl<OS: OutputSize> Clone for BashHashCore<OS>
impl<OS: OutputSize> Clone for BashHashCore<OS>
Source§impl<OS: OutputSize> Debug for BashHashCore<OS>
impl<OS: OutputSize> Debug for BashHashCore<OS>
Source§impl<OS: OutputSize> Default for BashHashCore<OS>
impl<OS: OutputSize> Default for BashHashCore<OS>
Source§impl<OS: OutputSize> Drop for BashHashCore<OS>
impl<OS: OutputSize> Drop for BashHashCore<OS>
Source§impl<OS: OutputSize> FixedOutputCore for BashHashCore<OS>
impl<OS: OutputSize> FixedOutputCore for BashHashCore<OS>
Source§fn finalize_fixed_core(
&mut self,
buffer: &mut Buffer<Self>,
out: &mut Output<Self>,
)
fn finalize_fixed_core( &mut self, buffer: &mut Buffer<Self>, out: &mut Output<Self>, )
Finalize state using remaining data stored in the provided block buffer,
write result into provided array and leave
self in a dirty state.Source§impl<OS: OutputSize> OutputSizeUser for BashHashCore<OS>
impl<OS: OutputSize> OutputSizeUser for BashHashCore<OS>
Source§type OutputSize = OS
type OutputSize = OS
Size of the output in bytes.
Source§fn output_size() -> usize
fn output_size() -> usize
Return output size in bytes.
Source§impl<OS: OutputSize> Reset for BashHashCore<OS>
impl<OS: OutputSize> Reset for BashHashCore<OS>
Source§impl<OS: OutputSize> SerializableState for BashHashCore<OS>
impl<OS: OutputSize> SerializableState for BashHashCore<OS>
Source§type SerializedStateSize = UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B0>, B0>, B0>
type SerializedStateSize = UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B0>, B0>, B0>
Size of serialized internal state.
Source§fn serialize(&self) -> SerializedState<Self>
fn serialize(&self) -> SerializedState<Self>
Serialize and return internal state.
Source§fn deserialize(
serialized_state: &SerializedState<Self>,
) -> Result<Self, DeserializeStateError>
fn deserialize( serialized_state: &SerializedState<Self>, ) -> Result<Self, DeserializeStateError>
Create an object from serialized internal state.
Source§impl<OS: OutputSize> UpdateCore for BashHashCore<OS>
impl<OS: OutputSize> UpdateCore for BashHashCore<OS>
Source§fn update_blocks(&mut self, blocks: &[Block<Self>])
fn update_blocks(&mut self, blocks: &[Block<Self>])
Update state using the provided data blocks.
impl<OS: OutputSize> HashMarker for BashHashCore<OS>
impl<OS: OutputSize> ZeroizeOnDrop for BashHashCore<OS>
Available on crate feature
zeroize only.Auto Trait Implementations§
impl<OS> Freeze for BashHashCore<OS>
impl<OS> RefUnwindSafe for BashHashCore<OS>where
OS: RefUnwindSafe,
impl<OS> Send for BashHashCore<OS>where
OS: Send,
impl<OS> Sync for BashHashCore<OS>where
OS: Sync,
impl<OS> Unpin for BashHashCore<OS>where
OS: Unpin,
impl<OS> UnwindSafe for BashHashCore<OS>where
OS: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more