Trait CipherAlgorithm

Source
pub trait CipherAlgorithm {
    const KEY_SIZE: usize;
    const BLOCK_SIZE: usize;

    // Required method
    fn name() -> &'static str;
}
Expand description

Marker trait for cipher algorithms with compile-time properties

Required Associated Constants§

Source

const KEY_SIZE: usize

Key size in bytes

Source

const BLOCK_SIZE: usize

Block size in bytes

Required Methods§

Source

fn name() -> &'static str

Algorithm name

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 CipherAlgorithm for dcrypt_algorithms::block::aes::Aes128Algorithm

Source§

const KEY_SIZE: usize = 16usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for Aes192Algorithm

Source§

const KEY_SIZE: usize = 24usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for Aes256Algorithm

Source§

const KEY_SIZE: usize = 32usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for dcrypt_algorithms::block::Aes128Algorithm

Source§

const KEY_SIZE: usize = 16usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for Aes128

Source§

const KEY_SIZE: usize = 16usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for Aes192

Source§

const KEY_SIZE: usize = 24usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for Aes256

Source§

const KEY_SIZE: usize = 32usize

Source§

const BLOCK_SIZE: usize = 16usize

Source§

impl CipherAlgorithm for TypedAes128

Source§

const KEY_SIZE: usize = 16usize

Source§

const BLOCK_SIZE: usize = 16usize