Trait KeyInit
pub trait KeyInit: Sized + KeySizeUser {
// Required method
fn new(key: &GenericArray<u8, Self::KeySize>) -> Self;
// Provided methods
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength> { ... }
fn generate_key(
rng: impl CryptoRng + RngCore,
) -> GenericArray<u8, Self::KeySize> { ... }
}
Expand description
Types which can be initialized from key.
Required Methods§
Provided Methods§
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
Create new value from variable size key.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
§impl KeyInit for Aes128Dec
impl KeyInit for Aes128Dec
fn new(key: &GenericArray<u8, <Aes128Dec as KeySizeUser>::KeySize>) -> Aes128Dec
§impl KeyInit for Aes128Enc
impl KeyInit for Aes128Enc
fn new(key: &GenericArray<u8, <Aes128Enc as KeySizeUser>::KeySize>) -> Aes128Enc
§impl KeyInit for Aes192Dec
impl KeyInit for Aes192Dec
fn new(key: &GenericArray<u8, <Aes192Dec as KeySizeUser>::KeySize>) -> Aes192Dec
§impl KeyInit for Aes192Enc
impl KeyInit for Aes192Enc
fn new(key: &GenericArray<u8, <Aes192Enc as KeySizeUser>::KeySize>) -> Aes192Enc
§impl KeyInit for Aes256Dec
impl KeyInit for Aes256Dec
fn new(key: &GenericArray<u8, <Aes256Dec as KeySizeUser>::KeySize>) -> Aes256Dec
§impl KeyInit for Aes256Enc
impl KeyInit for Aes256Enc
fn new(key: &GenericArray<u8, <Aes256Enc as KeySizeUser>::KeySize>) -> Aes256Enc
§impl KeyInit for Polyval
impl KeyInit for Polyval
§fn new(h: &GenericArray<u8, <Polyval as KeySizeUser>::KeySize>) -> Polyval
fn new(h: &GenericArray<u8, <Polyval as KeySizeUser>::KeySize>) -> Polyval
Initialize POLYVAL with the given H
field element