logo
pub trait NewMac: Sized {
    type KeySize: ArrayLength<u8>;
    fn new(key: &Key<Self>) -> Self;

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

Instantiate a Mac algorithm.

Associated Types

Key size in bytes with which cipher guaranteed to be initialized.

Required methods

Initialize new MAC instance from key with fixed size.

Provided methods

Initialize new MAC instance from key with variable size.

Default implementation will accept only keys with length equal to KeySize, but some MACs can accept range of key lengths.

Implementors