Skip to main content

V256

Struct V256 

Source
pub struct V256 { /* private fields */ }
Expand description

The Keccak sponge function is defined in Algorithm 8 from FIPS 202. The implementation here is split between the Self::absorb() and Self::squeeze() and specialized for Keccak-256.

Implementations§

Source§

impl V256

Source

pub const fn new() -> Self

Creates a new sponge with the specified rate and domain separator.

Source

pub const fn absorb(self, data: &[u8]) -> Self

Absorb some data into the sponge.

Source

pub const fn squeeze(self) -> [u8; 32]

Write the domain separation string, pad the input to the sponge, and squeeze the digest from the sponge. See Appendix B.2 from FIPS 202.

Trait Implementations§

Source§

impl Clone for V256

Source§

fn clone(&self) -> V256

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for V256

Source§

fn default() -> V256

Returns the “default value” for a type. Read more
Source§

impl Copy for V256

Auto Trait Implementations§

§

impl Freeze for V256

§

impl RefUnwindSafe for V256

§

impl Send for V256

§

impl Sync for V256

§

impl Unpin for V256

§

impl UnsafeUnpin for V256

§

impl UnwindSafe for V256

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

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

Source§

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

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

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.