pub trait AsyncStreamCipher: Sized {
// Provided methods
fn encrypt_inout(self, data: InOutBuf<'_, '_, u8>)
where Self: BlockEncryptMut { ... }
fn decrypt_inout(self, data: InOutBuf<'_, '_, u8>)
where Self: BlockDecryptMut { ... }
fn encrypt(self, buf: &mut [u8])
where Self: BlockEncryptMut { ... }
fn decrypt(self, buf: &mut [u8])
where Self: BlockDecryptMut { ... }
fn encrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>
where Self: BlockEncryptMut { ... }
fn decrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>
where Self: BlockDecryptMut { ... }
}
Expand description
Marker trait for block-level asynchronous stream ciphers
Provided Methods§
Sourcefn encrypt_inout(self, data: InOutBuf<'_, '_, u8>)where
Self: BlockEncryptMut,
fn encrypt_inout(self, data: InOutBuf<'_, '_, u8>)where
Self: BlockEncryptMut,
Encrypt data using InOutBuf
.
Sourcefn decrypt_inout(self, data: InOutBuf<'_, '_, u8>)where
Self: BlockDecryptMut,
fn decrypt_inout(self, data: InOutBuf<'_, '_, u8>)where
Self: BlockDecryptMut,
Decrypt data using InOutBuf
.
Sourcefn encrypt(self, buf: &mut [u8])where
Self: BlockEncryptMut,
fn encrypt(self, buf: &mut [u8])where
Self: BlockEncryptMut,
Encrypt data in place.
Sourcefn decrypt(self, buf: &mut [u8])where
Self: BlockDecryptMut,
fn decrypt(self, buf: &mut [u8])where
Self: BlockDecryptMut,
Decrypt data in place.
Sourcefn encrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>where
Self: BlockEncryptMut,
fn encrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>where
Self: BlockEncryptMut,
Encrypt data from buffer to buffer.
Sourcefn decrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>where
Self: BlockDecryptMut,
fn decrypt_b2b(
self,
in_buf: &[u8],
out_buf: &mut [u8],
) -> Result<(), NotEqualError>where
Self: BlockDecryptMut,
Decrypt data from buffer to buffer.
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.