pub struct Sm4 { /* private fields */ }
Expand description
SM4 block cipher.
Trait Implementations
sourceimpl AlgorithmName for Sm4
impl AlgorithmName for Sm4
sourcefn write_alg_name(f: &mut Formatter<'_>) -> Result
fn write_alg_name(f: &mut Formatter<'_>) -> Result
Write algorithm name into f
.
sourceimpl BlockDecrypt for Sm4
impl BlockDecrypt for Sm4
sourcefn decrypt_with_backend(&self, f: impl BlockClosure<BlockSize = U16>)
fn decrypt_with_backend(&self, f: impl BlockClosure<BlockSize = U16>)
Decrypt data using backend provided to the rank-2 closure.
sourcefn decrypt_block_inout(
&self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn decrypt_block_inout(
&self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Decrypt single inout
block.
sourcefn decrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn decrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Decrypt inout
blocks.
sourcefn decrypt_block(&self, block: &mut GenericArray<u8, Self::BlockSize>)
fn decrypt_block(&self, block: &mut GenericArray<u8, Self::BlockSize>)
Decrypt single block in-place.
sourcefn decrypt_block_b2b(
&self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
fn decrypt_block_b2b(
&self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
Decrypt in_block
and write result to out_block
.
sourceimpl BlockEncrypt for Sm4
impl BlockEncrypt for Sm4
sourcefn encrypt_with_backend(&self, f: impl BlockClosure<BlockSize = U16>)
fn encrypt_with_backend(&self, f: impl BlockClosure<BlockSize = U16>)
Encrypt data using backend provided to the rank-2 closure.
sourcefn encrypt_block_inout(
&self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn encrypt_block_inout(
&self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Encrypt single inout
block.
sourcefn encrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn encrypt_blocks_inout(
&self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Encrypt inout
blocks.
sourcefn encrypt_block(&self, block: &mut GenericArray<u8, Self::BlockSize>)
fn encrypt_block(&self, block: &mut GenericArray<u8, Self::BlockSize>)
Encrypt single block in-place.
sourcefn encrypt_block_b2b(
&self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
fn encrypt_block_b2b(
&self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
Encrypt in_block
and write result to out_block
.
sourceimpl BlockSizeUser for Sm4
impl BlockSizeUser for Sm4
sourcefn block_size() -> usize
fn block_size() -> usize
Return block size in bytes.
sourceimpl KeyInit for Sm4
impl KeyInit for Sm4
sourcefn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
Create new value from variable size key.
sourceimpl KeySizeUser for Sm4
impl KeySizeUser for Sm4
impl BlockCipher for Sm4
impl ZeroizeOnDrop for Sm4
zeroize
only.Auto Trait Implementations
impl RefUnwindSafe for Sm4
impl Send for Sm4
impl Sync for Sm4
impl Unpin for Sm4
impl UnwindSafe for Sm4
Blanket Implementations
sourceimpl<Alg> BlockDecryptMut for Alg where
Alg: BlockDecrypt,
impl<Alg> BlockDecryptMut for Alg where
Alg: BlockDecrypt,
sourcepub fn decrypt_with_backend_mut(
&mut self,
f: impl BlockClosure<BlockSize = <Alg as BlockSizeUser>::BlockSize>
)
pub fn decrypt_with_backend_mut(
&mut self,
f: impl BlockClosure<BlockSize = <Alg as BlockSizeUser>::BlockSize>
)
Decrypt data using backend provided to the rank-2 closure.
sourcefn decrypt_block_inout_mut(
&mut self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn decrypt_block_inout_mut(
&mut self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Decrypt single inout
block.
sourcefn decrypt_blocks_inout_mut(
&mut self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn decrypt_blocks_inout_mut(
&mut self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Decrypt inout
blocks.
sourcefn decrypt_block_mut(&mut self, block: &mut GenericArray<u8, Self::BlockSize>)
fn decrypt_block_mut(&mut self, block: &mut GenericArray<u8, Self::BlockSize>)
Decrypt single block in-place.
sourcefn decrypt_block_b2b_mut(
&mut self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
fn decrypt_block_b2b_mut(
&mut self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
Decrypt in_block
and write result to out_block
.
sourceimpl<Alg> BlockEncryptMut for Alg where
Alg: BlockEncrypt,
impl<Alg> BlockEncryptMut for Alg where
Alg: BlockEncrypt,
sourcepub fn encrypt_with_backend_mut(
&mut self,
f: impl BlockClosure<BlockSize = <Alg as BlockSizeUser>::BlockSize>
)
pub fn encrypt_with_backend_mut(
&mut self,
f: impl BlockClosure<BlockSize = <Alg as BlockSizeUser>::BlockSize>
)
Encrypt data using backend provided to the rank-2 closure.
sourcefn encrypt_block_inout_mut(
&mut self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn encrypt_block_inout_mut(
&mut self,
block: InOut<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Encrypt single inout
block.
sourcefn encrypt_blocks_inout_mut(
&mut self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
fn encrypt_blocks_inout_mut(
&mut self,
blocks: InOutBuf<'_, '_, GenericArray<u8, Self::BlockSize>>
)
Encrypt inout
blocks.
sourcefn encrypt_block_mut(&mut self, block: &mut GenericArray<u8, Self::BlockSize>)
fn encrypt_block_mut(&mut self, block: &mut GenericArray<u8, Self::BlockSize>)
Encrypt single block in-place.
sourcefn encrypt_block_b2b_mut(
&mut self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
fn encrypt_block_b2b_mut(
&mut self,
in_block: &GenericArray<u8, Self::BlockSize>,
out_block: &mut GenericArray<u8, Self::BlockSize>
)
Encrypt in_block
and write result to out_block
.
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more