pub trait BlockCipherEncrypt: Sized + BlockSizeUser {
// Required method
fn encrypt_with_backend(
&self,
f: impl BlockCipherEncClosure<BlockSize = Self::BlockSize>,
);
// Provided methods
fn encrypt_block_inout(
&self,
block: InOut<'_, '_, Array<u8, Self::BlockSize>>,
) { ... }
fn encrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, Array<u8, Self::BlockSize>>,
) { ... }
fn encrypt_block(&self, block: &mut Array<u8, Self::BlockSize>) { ... }
fn encrypt_block_b2b(
&self,
in_block: &Array<u8, Self::BlockSize>,
out_block: &mut Array<u8, Self::BlockSize>,
) { ... }
fn encrypt_blocks(&self, blocks: &mut [Array<u8, Self::BlockSize>]) { ... }
fn encrypt_blocks_b2b(
&self,
in_blocks: &[Array<u8, Self::BlockSize>],
out_blocks: &mut [Array<u8, Self::BlockSize>],
) -> Result<(), NotEqualError> { ... }
}Expand description
Encrypt-only functionality for block ciphers.
Required Methods§
Sourcefn encrypt_with_backend(
&self,
f: impl BlockCipherEncClosure<BlockSize = Self::BlockSize>,
)
fn encrypt_with_backend( &self, f: impl BlockCipherEncClosure<BlockSize = Self::BlockSize>, )
Encrypt data using backend provided to the rank-2 closure.
Provided Methods§
Sourcefn encrypt_block_inout(&self, block: InOut<'_, '_, Array<u8, Self::BlockSize>>)
fn encrypt_block_inout(&self, block: InOut<'_, '_, Array<u8, Self::BlockSize>>)
Encrypt single inout block.
Sourcefn encrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, Array<u8, Self::BlockSize>>,
)
fn encrypt_blocks_inout( &self, blocks: InOutBuf<'_, '_, Array<u8, Self::BlockSize>>, )
Encrypt inout blocks.
Sourcefn encrypt_block(&self, block: &mut Array<u8, Self::BlockSize>)
fn encrypt_block(&self, block: &mut Array<u8, Self::BlockSize>)
Encrypt single block in-place.
Sourcefn encrypt_block_b2b(
&self,
in_block: &Array<u8, Self::BlockSize>,
out_block: &mut Array<u8, Self::BlockSize>,
)
fn encrypt_block_b2b( &self, in_block: &Array<u8, Self::BlockSize>, out_block: &mut Array<u8, Self::BlockSize>, )
Encrypt in_block and write result to out_block.
Sourcefn encrypt_blocks(&self, blocks: &mut [Array<u8, Self::BlockSize>])
fn encrypt_blocks(&self, blocks: &mut [Array<u8, Self::BlockSize>])
Encrypt blocks in-place.
Sourcefn encrypt_blocks_b2b(
&self,
in_blocks: &[Array<u8, Self::BlockSize>],
out_blocks: &mut [Array<u8, Self::BlockSize>],
) -> Result<(), NotEqualError>
fn encrypt_blocks_b2b( &self, in_blocks: &[Array<u8, Self::BlockSize>], out_blocks: &mut [Array<u8, Self::BlockSize>], ) -> Result<(), NotEqualError>
Encrypt blocks buffer-to-buffer.
§Errors
Returns NotEqualError if provided in_blocks and out_blocks
have different lengths.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".