KeyIvInit

Trait KeyIvInit 

Source
pub trait KeyIvInit:
    KeySizeUser
    + IvSizeUser
    + Sized {
    // 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> { ... }
}
Expand description

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

Required Methods§

Source

fn new(key: &Key<Self>, iv: &Iv<Self>) -> Self

Create new value from fixed length key and nonce.

Provided Methods§

Source

fn weak_key_test(_key: &Key<Self>) -> Result<(), WeakKeyError>

Check if the key might be considered weak.

Source

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.

Source

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

Create new value from variable length key and nonce.

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.

Implementors§

Source§

impl<T> KeyIvInit for T
where T: InnerIvInit, T::Inner: KeyInit,