logo
pub trait KeyIvInit: KeySizeUser + IvSizeUser + Sized {
    fn new(key: &Key<Self>, iv: &Iv<Self>) -> Self;

    fn new_from_slices(key: &[u8], iv: &[u8]) -> Result<Self, InvalidLength> { ... }
    fn generate_key(rng: impl CryptoRng + RngCore) -> Key<Self> { ... }
    fn generate_iv(rng: impl CryptoRng + RngCore) -> Iv<Self> { ... }
    fn generate_key_iv(rng: impl CryptoRng + RngCore) -> (Key<Self>, Iv<Self>) { ... }
}
Expand description

Types which can be initialized from key and initialization vector (nonce).

Required Methods

Create new value from fixed length key and nonce.

Provided Methods

Create new value from variable length key and nonce.

Available on crate feature rand_core only.

Generate random key using the provided CryptoRng.

Available on crate feature rand_core only.

Generate random IV using the provided CryptoRng.

Available on crate feature rand_core only.

Generate random key and nonce using the provided CryptoRng.

Implementors