Trait digest::KeyInit

source ·
pub trait KeyInit: KeySizeUser + Sized {
    // Required method
    fn new(key: &Array<u8, Self::KeySize>) -> Self;

    // Provided methods
    fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength> { ... }
    fn generate_key_with_rng(
        rng: &mut impl CryptoRngCore
    ) -> Result<Array<u8, Self::KeySize>, Error> { ... }
}
Available on crate feature mac only.
Expand description

Types which can be initialized from key.

Required Methods§

source

fn new(key: &Array<u8, Self::KeySize>) -> Self

Create new value from fixed size key.

Provided Methods§

source

fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>

Create new value from variable size key.

source

fn generate_key_with_rng( rng: &mut impl CryptoRngCore ) -> Result<Array<u8, Self::KeySize>, Error>

Available on crate feature rand_core only.

Generate random key using the provided CryptoRngCore.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> KeyInit for T
where T: InnerInit, <T as InnerUser>::Inner: KeyInit,

source§

impl<T: BufferKindUser + KeyInit> KeyInit for CoreWrapper<T>

Available on crate feature core-api only.