pub trait KeyIvInit:
KeySizeUser
+ IvSizeUser
+ Sized {
Show 13 methods
// Required method
fn new(key: &Key<Self>, iv: &Iv<Self>) -> Self;
// Provided methods
fn weak_key_test(_key: &Key<Self>) -> Result<(), WeakKeyError> { ... }
fn new_checked(key: &Key<Self>, iv: &Iv<Self>) -> Result<Self, WeakKeyError> { ... }
fn new_from_slices(key: &[u8], iv: &[u8]) -> Result<Self, InvalidLength> { ... }
fn generate_key() -> Result<Key<Self>, OsError> { ... }
fn generate_key_with_rng<R: CryptoRng>(rng: &mut R) -> Key<Self> { ... }
fn try_generate_key_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<Key<Self>, R::Error> { ... }
fn generate_iv() -> Result<Iv<Self>, OsError> { ... }
fn generate_iv_with_rng<R: CryptoRng>(rng: &mut R) -> Iv<Self> { ... }
fn try_generate_iv_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<Iv<Self>, R::Error> { ... }
fn generate_key_iv() -> Result<(Key<Self>, Iv<Self>), OsError> { ... }
fn generate_key_iv_with_rng<R: CryptoRng>(
rng: &mut R,
) -> (Key<Self>, Iv<Self>) { ... }
fn try_generate_key_iv_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<(Key<Self>, Iv<Self>), R::Error> { ... }
}Expand description
Types which can be initialized from key and initialization vector (nonce).
Required Methods§
Provided Methods§
Sourcefn weak_key_test(_key: &Key<Self>) -> Result<(), WeakKeyError>
fn weak_key_test(_key: &Key<Self>) -> Result<(), WeakKeyError>
Check if the key might be considered weak.
Sourcefn new_checked(key: &Key<Self>, iv: &Iv<Self>) -> Result<Self, WeakKeyError>
fn new_checked(key: &Key<Self>, iv: &Iv<Self>) -> Result<Self, WeakKeyError>
Create new value from fixed length key and nonce after checking the key for weakness.
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.
Sourcefn generate_key() -> Result<Key<Self>, OsError>
Available on crate feature os_rng only.
fn generate_key() -> Result<Key<Self>, OsError>
os_rng only.Generate random key using the operating system’s secure RNG.
Sourcefn generate_key_with_rng<R: CryptoRng>(rng: &mut R) -> Key<Self>
Available on crate feature rand_core only.
fn generate_key_with_rng<R: CryptoRng>(rng: &mut R) -> Key<Self>
rand_core only.Generate random key using the provided CryptoRng.
Sourcefn try_generate_key_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<Key<Self>, R::Error>
Available on crate feature rand_core only.
fn try_generate_key_with_rng<R: TryCryptoRng>( rng: &mut R, ) -> Result<Key<Self>, R::Error>
rand_core only.Generate random key using the provided TryCryptoRng.
Sourcefn generate_iv() -> Result<Iv<Self>, OsError>
Available on crate feature os_rng only.
fn generate_iv() -> Result<Iv<Self>, OsError>
os_rng only.Generate random IV using the operating system’s secure RNG.
Sourcefn generate_iv_with_rng<R: CryptoRng>(rng: &mut R) -> Iv<Self>
Available on crate feature rand_core only.
fn generate_iv_with_rng<R: CryptoRng>(rng: &mut R) -> Iv<Self>
rand_core only.Generate random IV using the provided CryptoRng.
Sourcefn try_generate_iv_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<Iv<Self>, R::Error>
Available on crate feature rand_core only.
fn try_generate_iv_with_rng<R: TryCryptoRng>( rng: &mut R, ) -> Result<Iv<Self>, R::Error>
rand_core only.Generate random IV using the provided TryCryptoRng.
Sourcefn generate_key_iv() -> Result<(Key<Self>, Iv<Self>), OsError>
Available on crate feature os_rng only.
fn generate_key_iv() -> Result<(Key<Self>, Iv<Self>), OsError>
os_rng only.Generate random key and IV using the operating system’s secure RNG.
Sourcefn generate_key_iv_with_rng<R: CryptoRng>(rng: &mut R) -> (Key<Self>, Iv<Self>)
Available on crate feature rand_core only.
fn generate_key_iv_with_rng<R: CryptoRng>(rng: &mut R) -> (Key<Self>, Iv<Self>)
rand_core only.Generate random key and IV using the provided CryptoRng.
Sourcefn try_generate_key_iv_with_rng<R: TryCryptoRng>(
rng: &mut R,
) -> Result<(Key<Self>, Iv<Self>), R::Error>
Available on crate feature rand_core only.
fn try_generate_key_iv_with_rng<R: TryCryptoRng>( rng: &mut R, ) -> Result<(Key<Self>, Iv<Self>), R::Error>
rand_core only.Generate random key and IV using the provided TryCryptoRng.
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.