pub struct Sha3_256 { /* private fields */ }Expand description
SHA-3-256 (FIPS 202).
Trait Implementations§
Source§impl AlgorithmName for Sha3_256
impl AlgorithmName for Sha3_256
Source§impl AssociatedOid for Sha3_256
Available on crate feature oid only.
impl AssociatedOid for Sha3_256
Available on crate feature
oid only.Source§const OID: ObjectIdentifier
const OID: ObjectIdentifier
The OID associated with this type.
Source§impl BlockSizeUser for Sha3_256
impl BlockSizeUser for Sha3_256
Source§type BlockSize = <SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#18}::BlockSize::{constant#0}> as BlockSizeUser>::BlockSize
type BlockSize = <SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#18}::BlockSize::{constant#0}> as BlockSizeUser>::BlockSize
Size of the block in bytes.
Source§fn block_size() -> usize
fn block_size() -> usize
Return block size in bytes.
Source§impl CoreProxy for Sha3_256
impl CoreProxy for Sha3_256
Source§type Core = SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#20}::Core::{constant#0}>
type Core = SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#20}::Core::{constant#0}>
Core block-level type.
Source§fn compose(
core: <Sha3_256 as CoreProxy>::Core,
buffer: BlockBuffer<<<Sha3_256 as CoreProxy>::Core as BlockSizeUser>::BlockSize, <<Sha3_256 as CoreProxy>::Core as BufferKindUser>::BufferKind>,
) -> Sha3_256
fn compose( core: <Sha3_256 as CoreProxy>::Core, buffer: BlockBuffer<<<Sha3_256 as CoreProxy>::Core as BlockSizeUser>::BlockSize, <<Sha3_256 as CoreProxy>::Core as BufferKindUser>::BufferKind>, ) -> Sha3_256
Create
Self from core and buffer.Source§fn decompose(
self,
) -> (<Sha3_256 as CoreProxy>::Core, BlockBuffer<<<Sha3_256 as CoreProxy>::Core as BlockSizeUser>::BlockSize, <<Sha3_256 as CoreProxy>::Core as BufferKindUser>::BufferKind>)
fn decompose( self, ) -> (<Sha3_256 as CoreProxy>::Core, BlockBuffer<<<Sha3_256 as CoreProxy>::Core as BlockSizeUser>::BlockSize, <<Sha3_256 as CoreProxy>::Core as BufferKindUser>::BufferKind>)
Decompose
self into core and buffer.Source§impl FixedOutput for Sha3_256
impl FixedOutput for Sha3_256
Source§fn finalize_into(
self,
out: &mut Array<u8, <Sha3_256 as OutputSizeUser>::OutputSize>,
)
fn finalize_into( self, out: &mut Array<u8, <Sha3_256 as OutputSizeUser>::OutputSize>, )
Consume value and write result into provided array.
Source§fn finalize_fixed(self) -> Array<u8, Self::OutputSize>
fn finalize_fixed(self) -> Array<u8, Self::OutputSize>
Retrieve result and consume the hasher instance.
Source§impl FixedOutputReset for Sha3_256
impl FixedOutputReset for Sha3_256
Source§fn finalize_into_reset(
&mut self,
out: &mut Array<u8, <Sha3_256 as OutputSizeUser>::OutputSize>,
)
fn finalize_into_reset( &mut self, out: &mut Array<u8, <Sha3_256 as OutputSizeUser>::OutputSize>, )
Write result into provided array and reset the hasher state.
Source§fn finalize_fixed_reset(&mut self) -> Array<u8, Self::OutputSize>
fn finalize_fixed_reset(&mut self) -> Array<u8, Self::OutputSize>
Retrieve result and reset the hasher state.
impl HashMarker for Sha3_256
Source§impl OutputSizeUser for Sha3_256
impl OutputSizeUser for Sha3_256
Source§type OutputSize = <SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#19}::OutputSize::{constant#0}> as OutputSizeUser>::OutputSize
type OutputSize = <SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#19}::OutputSize::{constant#0}> as OutputSizeUser>::OutputSize
Size of the output in bytes.
Source§fn output_size() -> usize
fn output_size() -> usize
Return output size in bytes.
Source§impl SerializableState for Sha3_256
impl SerializableState for Sha3_256
Source§type SerializedStateSize = <<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#0}> as SerializableState>::SerializedStateSize as Add<<<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#1}> as BlockSizeUser>::BlockSize as Add<<<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#2}> as BufferKindUser>::BufferKind as Sealed>::Overhead>>::Output>>::Output
type SerializedStateSize = <<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#0}> as SerializableState>::SerializedStateSize as Add<<<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#1}> as BlockSizeUser>::BlockSize as Add<<<SpongeHasherCore<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>, B0>, B0>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, lib_q_sha3::::{impl#29}::SerializedStateSize::{constant#2}> as BufferKindUser>::BufferKind as Sealed>::Overhead>>::Output>>::Output
Size of serialized internal state.
Source§fn serialize(
&self,
) -> Array<u8, <Sha3_256 as SerializableState>::SerializedStateSize>
fn serialize( &self, ) -> Array<u8, <Sha3_256 as SerializableState>::SerializedStateSize>
Serialize and return internal state.
Source§fn deserialize(
serialized_state: &Array<u8, <Sha3_256 as SerializableState>::SerializedStateSize>,
) -> Result<Sha3_256, DeserializeStateError>
fn deserialize( serialized_state: &Array<u8, <Sha3_256 as SerializableState>::SerializedStateSize>, ) -> Result<Sha3_256, DeserializeStateError>
Create an object from serialized internal state. Read more
Auto Trait Implementations§
impl Freeze for Sha3_256
impl RefUnwindSafe for Sha3_256
impl Send for Sha3_256
impl Sync for Sha3_256
impl Unpin for Sha3_256
impl UnsafeUnpin for Sha3_256
impl UnwindSafe for Sha3_256
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<D> Digest for D
impl<D> Digest for D
Source§fn new_with_prefix(data: impl AsRef<[u8]>) -> D
fn new_with_prefix(data: impl AsRef<[u8]>) -> D
Create new hasher instance which has processed the provided data.
Source§fn chain_update(self, data: impl AsRef<[u8]>) -> D
fn chain_update(self, data: impl AsRef<[u8]>) -> D
Process input data in a chained manner.
Source§fn finalize(self) -> Array<u8, <D as OutputSizeUser>::OutputSize>
fn finalize(self) -> Array<u8, <D as OutputSizeUser>::OutputSize>
Retrieve result and consume hasher instance.
Source§fn finalize_into(self, out: &mut Array<u8, <D as OutputSizeUser>::OutputSize>)
fn finalize_into(self, out: &mut Array<u8, <D as OutputSizeUser>::OutputSize>)
Write result into provided array and consume the hasher instance.
Source§fn finalize_reset(&mut self) -> Array<u8, <D as OutputSizeUser>::OutputSize>where
D: FixedOutputReset,
fn finalize_reset(&mut self) -> Array<u8, <D as OutputSizeUser>::OutputSize>where
D: FixedOutputReset,
Retrieve result and reset hasher instance.
Source§fn finalize_into_reset(
&mut self,
out: &mut 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,
Write result into provided array and reset the hasher instance.
Source§fn output_size() -> usize
fn output_size() -> usize
Get output size of the hasher
Source§fn digest(
data: impl AsRef<[u8]>,
) -> Array<u8, <D as OutputSizeUser>::OutputSize>
fn digest( data: impl AsRef<[u8]>, ) -> Array<u8, <D as OutputSizeUser>::OutputSize>
Compute hash of
data.Source§impl<T> DynAssociatedOid for Twhere
T: AssociatedOid,
impl<T> DynAssociatedOid for Twhere
T: AssociatedOid,
Source§fn oid(&self) -> ObjectIdentifier
fn oid(&self) -> ObjectIdentifier
Get the OID associated with this value.
Source§impl<D> DynDigest for D
impl<D> DynDigest for D
Source§fn finalize_reset(&mut self) -> Box<[u8]>
fn finalize_reset(&mut self) -> Box<[u8]>
Retrieve result and reset hasher instance
Source§fn finalize_into(self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
fn finalize_into(self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
Write result into provided array and consume the hasher instance. Read more
Source§fn finalize_into_reset(
&mut self,
buf: &mut [u8],
) -> Result<(), InvalidBufferSize>
fn finalize_into_reset( &mut self, buf: &mut [u8], ) -> Result<(), InvalidBufferSize>
Write result into provided array and reset the hasher instance. Read more
Source§fn output_size(&self) -> usize
fn output_size(&self) -> usize
Get output size of the hasher
impl<T> DynDigestWithOid for Twhere
T: DynDigest + DynAssociatedOid,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SmallBlockSizeUser for T
impl<T> SmallBlockSizeUser for T
Source§type _BlockSize = <T as BlockSizeUser>::BlockSize
type _BlockSize = <T as BlockSizeUser>::BlockSize
Helper associated type equal to
<Self as BlockSizeUser>::BlockSize.