Trait cipher::block::BlockCipher [−][src]
The trait which defines in-place encryption and decryption over single block or several blocks in parallel.
Associated Types
type BlockSize: ArrayLength<u8>
[src]
Size of the block in bytes
type ParBlocks: ArrayLength<Block<Self>>
[src]
Number of blocks which can be processed in parallel by cipher implementation
Required methods
fn encrypt_block(&self, block: &mut Block<Self>)
[src]
Encrypt block in-place
fn decrypt_block(&self, block: &mut Block<Self>)
[src]
Decrypt block in-place
Provided methods
fn encrypt_blocks(&self, blocks: &mut ParBlocks<Self>)
[src]
Encrypt several blocks in parallel using instruction level parallelism if possible.
If ParBlocks
equals to 1 it’s equivalent to encrypt_block
.
fn encrypt_slice(&self, blocks: &mut [Block<Self>])
[src]
Encrypt a slice of blocks, leveraging parallelism when available.
fn decrypt_blocks(&self, blocks: &mut ParBlocks<Self>)
[src]
Decrypt several blocks in parallel using instruction level parallelism if possible.
If ParBlocks
equals to 1 it’s equivalent to decrypt_block
.
fn decrypt_slice(&self, blocks: &mut [Block<Self>])
[src]
Decrypt a slice of blocks, leveraging parallelism when available.