Struct Sha224

pub struct Sha224 { /* private fields */ }

SHA-224 hasher.

Trait Implementations

impl AlgorithmName for Sha224

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

impl AssociatedOid for Sha224

const OID: ObjectIdentifier = _;

impl BlockSizeUser for Sha224

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

impl Clone for Sha224

fn clone(&self) -> Self

impl CoreProxy for Sha224

type Core = CtOutWrapper<Sha256VarCore, 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 Sha224

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

impl Default for Sha224

fn default() -> Self

impl FixedOutput for Sha224

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

impl FixedOutputReset for Sha224

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

impl HashMarker for Sha224

impl OutputSizeUser for Sha224

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

impl Reset for Sha224

fn reset(&mut self)

impl SerializableState for Sha224

type SerializedStateSize = <<CtOutWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as SerializableState>::SerializedStateSize as Add<<<CtOutWrapper<Sha256VarCore, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>> as BlockSizeUser>::BlockSize as Add<<<CtOutWrapper<Sha256VarCore, 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 Sha224

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

Auto Trait Implementations

impl Freeze for Sha224

impl RefUnwindSafe for Sha224

impl Send for Sha224

impl Sync for Sha224

impl Unpin for Sha224

impl UnsafeUnpin for Sha224

impl UnwindSafe for Sha224

Blanket Implementations

impl<D> Digest for Sha224 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 Sha224 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 Sha224 where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

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

fn oid(&self) -> ObjectIdentifier

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

impl<T> EagerHash for Sha224 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 Sha224

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Same for Sha224

type Output = T;

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

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

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

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

impl<T, U> Into<U> for Sha224 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 Sha224 where U: Into<T>,

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

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

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