Trait aead::NewAead

source ·
pub trait NewAead {
    type KeySize: ArrayLength<u8>;

    fn new(key: &Key<Self>) -> Self;

    fn new_from_slice(key: &[u8]) -> Result<Self>
    where
        Self: Sized
, { ... } }
Expand description

Instantiate either a stateless Aead or stateful AeadMut algorithm.

Required Associated Types§

The size of the key array required by this algorithm.

Required Methods§

Create a new AEAD instance with the given key.

Provided Methods§

Create new AEAD instance from key given as a byte slice..

Default implementation will accept only keys with length equal to KeySize.

Implementors§

impl<Aes, NonceSize> NewAead for AesGcm<Aes, NonceSize>where
    Aes: NewBlockCipher + BlockCipher<BlockSize = U16> + BlockEncrypt,
    Aes::ParBlocks: ArrayLength<Block<Aes>>,
    NonceSize: ArrayLength<u8>,

impl<C, N> NewAead for ChaChaPoly1305<C, N>where
    C: NewCipher<KeySize = U32, NonceSize = N> + StreamCipher + StreamCipherSeek,
    N: ArrayLength<u8>,