Struct Sha512_224

pub struct Sha512_224 { /* private fields */ }

SHA-512/224 hasher.

Trait Implementations

impl AlgorithmName for Sha512_224

fn write_alg_name(f: &mut Formatter<'_>) -> Result<(), Error>

impl AssociatedOid for Sha512_224

const OID: ObjectIdentifier = _;

impl BlockSizeUser for Sha512_224

type BlockSize = <CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as BlockSizeUser>::BlockSize;

impl Clone for Sha512_224

fn clone(&self) -> Self

impl CoreProxy for Sha512_224

type Core = CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>>;
fn compose(core: Self::Core, buffer: Buffer<Self::Core>) -> Self
fn decompose(self) -> (Self::Core, Buffer<Self::Core>)

impl Debug for Sha512_224

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl Default for Sha512_224

fn default() -> Self

impl FixedOutput for Sha512_224

fn finalize_into(self, out: &mut Output<Self>)

impl FixedOutputReset for Sha512_224

fn finalize_into_reset(&mut self, out: &mut Output<Self>)

impl HashMarker for Sha512_224

impl OutputSizeUser for Sha512_224

type OutputSize = <CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as OutputSizeUser>::OutputSize;

impl Reset for Sha512_224

fn reset(&mut self)

impl SerializableState for Sha512_224

type SerializedStateSize = <<CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as SerializableState>::SerializedStateSize as Add<<<CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as BlockSizeUser>::BlockSize as Add<<<CtOutWrapper<Sha512VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as BufferKindUser>::BufferKind as Sealed>::Overhead>>::Output>>::Output;
fn serialize(&self) -> SerializedState<Self>
fn deserialize(serialized_state: &SerializedState<Self>) -> Result<Self, DeserializeStateError>

impl Update for Sha512_224

fn update(&mut self, data: &[u8])

Auto Trait Implementations

impl Freeze for Sha512_224

impl RefUnwindSafe for Sha512_224

impl Send for Sha512_224

impl Sync for Sha512_224

impl Unpin for Sha512_224

impl UnsafeUnpin for Sha512_224

impl UnwindSafe for Sha512_224

Blanket Implementations

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

fn new() -> D
fn new_with_prefix(data: impl AsRef<[u8]>) -> D
where
    D: Sized + Default,
fn update(&mut self, data: impl AsRef<[u8]>)
fn chain_update(self, data: impl AsRef<[u8]>) -> D
fn finalize(self) -> Array<u8, <D as OutputSizeUser>::OutputSize>
fn finalize_into(self, out: &mut Array<u8, <D as OutputSizeUser>::OutputSize>)
fn finalize_reset(&mut self) -> Array<u8, <D as OutputSizeUser>::OutputSize>
where
    D: FixedOutputReset,
fn finalize_into_reset(&mut self, out: &mut Array<u8, <D as OutputSizeUser>::OutputSize>)
where
    D: FixedOutputReset,
fn reset(&mut self)
where
    D: Reset,
fn output_size() -> usize
fn digest(data: impl AsRef<[u8]>) -> Array<u8, <D as OutputSizeUser>::OutputSize>

impl<D> DynDigest for Sha512_224 where D: Update + FixedOutputReset + Reset + Clone + 'static,

fn update(&mut self, data: &[u8])
fn finalize_reset(&mut self) -> Box<[u8]>
fn finalize(self: Box<D>) -> Box<[u8]>
fn finalize_into(self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
fn finalize_into_reset(&mut self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
fn reset(&mut self)
fn output_size(&self) -> usize
fn box_clone(&self) -> Box<dyn DynDigest>

impl<T> Any for Sha512_224 where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for Sha512_224 where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for Sha512_224 where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> CloneToUninit for Sha512_224 where T: Clone,

unsafe fn clone_to_uninit(&self, dest: *mut u8)

impl<T> DynAssociatedOid for Sha512_224 where T: AssociatedOid,

fn oid(&self) -> ObjectIdentifier

impl<T> DynDigestWithOid for Sha512_224 where T: DynDigest + DynAssociatedOid,

impl<T> EagerHash for Sha512_224 where T: SmallBlockSizeUser + Digest + Clone + CoreProxy, <T as CoreProxy>::Core: HashMarker + UpdateCore + FixedOutputCore<_BlockSize = <T as SmallBlockSizeUser>::_BlockSize, BufferKind = Eager> + SmallBlockSizeUser + BufferKindUser + Default + Clone,

type Core = <T as CoreProxy>::Core;

impl<T> From<T> for Sha512_224

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Same for Sha512_224

type Output = T;

impl<T> SmallBlockSizeUser for Sha512_224 where T: BlockSizeUser, <T as BlockSizeUser>::BlockSize: BlockSizes,

type _BlockSize = <T as BlockSizeUser>::BlockSize;

impl<T> ToOwned for Sha512_224 where T: Clone,

type Owned = T;
fn to_owned(&self) -> T
fn clone_into(&self, target: &mut T)

impl<T, U> Into<U> for Sha512_224 where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for Sha512_224 where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for Sha512_224 where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>