pub trait Mode {
    fn block_size(&self) -> usize;
fn encrypt(
        &mut self,
        iv: &mut [u8],
        dst: &mut [u8],
        src: &[u8]
    ) -> Result<()>;
fn decrypt(
        &mut self,
        iv: &mut [u8],
        dst: &mut [u8],
        src: &[u8]
    ) -> Result<()>; }
Expand description

Block cipher mode of operation.

Block modes govern how a block cipher processes data spanning multiple blocks.

Required methods

Block size of the underlying cipher in bytes.

Encrypt a single block src using the initialization vector iv to a ciphertext block dst.

Both iv and dstare updated. The bufferiv, dstandsrc` are expected to be at least as large as the block size of the underlying cipher.

Decrypt a single ciphertext block src using the initialization vector iv to a plaintext block dst.

Both iv and dstare updated. The bufferiv, dstandsrc` are expected to be at least as large as the block size of the underlying cipher.

Implementors