pub trait KeyIvInit:
Sized
+ KeySizeUser
+ IvSizeUser {
// Required method
fn new(key: &Array<u8, Self::KeySize>, iv: &Array<u8, Self::IvSize>) -> Self;
// Provided methods
fn new_from_slices(key: &[u8], iv: &[u8]) -> Result<Self, InvalidLength> { ... }
fn generate_key<R>(rng: &mut R) -> Array<u8, Self::KeySize>
where R: CryptoRng { ... }
fn generate_iv<R>(rng: &mut R) -> Array<u8, Self::IvSize>
where R: CryptoRng { ... }
fn generate_key_iv<R>(
rng: &mut R,
) -> (Array<u8, Self::KeySize>, Array<u8, Self::IvSize>)
where R: CryptoRng { ... }
}Expand description
Types which can be initialized from a key and initialization vector (nonce).
Required Methods§
Provided Methods§
Sourcefn new_from_slices(key: &[u8], iv: &[u8]) -> Result<Self, InvalidLength>
fn new_from_slices(key: &[u8], iv: &[u8]) -> Result<Self, InvalidLength>
Create new value from variable length key and nonce.
§Errors
Returns InvalidLength in the event that key and/or iv are not the expected length.
Sourcefn generate_key<R>(rng: &mut R) -> Array<u8, Self::KeySize>where
R: CryptoRng,
👎Deprecated since 0.2.0: use the Generate trait impl on Key insteadAvailable on crate feature rand_core only.
fn generate_key<R>(rng: &mut R) -> Array<u8, Self::KeySize>where
R: CryptoRng,
Generate trait impl on Key insteadrand_core only.Sourcefn generate_iv<R>(rng: &mut R) -> Array<u8, Self::IvSize>where
R: CryptoRng,
👎Deprecated since 0.2.0: use the Generate trait impl on Iv insteadAvailable on crate feature rand_core only.
fn generate_iv<R>(rng: &mut R) -> Array<u8, Self::IvSize>where
R: CryptoRng,
Generate trait impl on Iv insteadrand_core only.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.