pub trait SkfBlockCipher {
// Required methods
fn encrypt_init(
&self,
key: &dyn ManagedKey,
param: &BlockCipherParameter,
) -> Result<()>;
fn encrypt(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>;
fn encrypt_update(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>;
fn encrypt_final(
&self,
key: &dyn ManagedKey,
buffer_size: usize,
) -> Result<Vec<u8>>;
fn decrypt_init(
&self,
key: &dyn ManagedKey,
param: &BlockCipherParameter,
) -> Result<()>;
fn decrypt(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>;
fn decrypt_update(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>;
fn decrypt_final(
&self,
key: &dyn ManagedKey,
buffer_size: usize,
) -> Result<Vec<u8>>;
}Expand description
Block cipher service
Required Methods§
Sourcefn encrypt_init(
&self,
key: &dyn ManagedKey,
param: &BlockCipherParameter,
) -> Result<()>
fn encrypt_init( &self, key: &dyn ManagedKey, param: &BlockCipherParameter, ) -> Result<()>
Initialize encryption
[key] - The key object
[param] - The encryption parameter
Sourcefn encrypt(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>
fn encrypt( &self, key: &dyn ManagedKey, data: &[u8], buffer_size: usize, ) -> Result<Vec<u8>>
Encrypt data
[data] - The data to encrypt
[buffer_size] - The buffer size to receive encrypted data,it depends on the encryption parameter passed by encrypt_init and crypto algorithm
see SKF_Encrypt for more details
Sourcefn encrypt_update(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>
fn encrypt_update( &self, key: &dyn ManagedKey, data: &[u8], buffer_size: usize, ) -> Result<Vec<u8>>
Encrypting multiple groups of data.
[data] - The data to encrypt
[buffer_size] - The buffer size to receive encrypted data,it depends on the encryption parameter passed by encrypt_init and crypto algorithm
see SKF_EncryptUpdate for more details
Sourcefn encrypt_final(
&self,
key: &dyn ManagedKey,
buffer_size: usize,
) -> Result<Vec<u8>>
fn encrypt_final( &self, key: &dyn ManagedKey, buffer_size: usize, ) -> Result<Vec<u8>>
Finish encrypting multiple groups of data, return the remaining encrypted result
[buffer_size] - The buffer size to receive encrypted data,it depends on the encryption parameter passed by encrypt_init and crypto algorithm
see SKF_EncryptFinal for more details
Sourcefn decrypt_init(
&self,
key: &dyn ManagedKey,
param: &BlockCipherParameter,
) -> Result<()>
fn decrypt_init( &self, key: &dyn ManagedKey, param: &BlockCipherParameter, ) -> Result<()>
Initialize decryption
[key] - The key object
[param] - The decryption parameter
see SKF_DecryptInit for more details
Sourcefn decrypt(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>
fn decrypt( &self, key: &dyn ManagedKey, data: &[u8], buffer_size: usize, ) -> Result<Vec<u8>>
Decrypt data
[data] - The data to decrypt
[buffer_size] - The buffer size to receive decrypted data,it depends on the decryption parameter passed by decrypt_init and crypto algorithm
see SKF_Decrypt for more details
Sourcefn decrypt_update(
&self,
key: &dyn ManagedKey,
data: &[u8],
buffer_size: usize,
) -> Result<Vec<u8>>
fn decrypt_update( &self, key: &dyn ManagedKey, data: &[u8], buffer_size: usize, ) -> Result<Vec<u8>>
Decrypting multiple groups of data.
[data] - The data to decrypt
[buffer_size] - The buffer size to receive decrypted data,it depends on the encryption parameter passed by decrypt_init and crypto algorithm
see SKF_EncryptUpdate for more details
Sourcefn decrypt_final(
&self,
key: &dyn ManagedKey,
buffer_size: usize,
) -> Result<Vec<u8>>
fn decrypt_final( &self, key: &dyn ManagedKey, buffer_size: usize, ) -> Result<Vec<u8>>
Finish decrypting multiple groups of data, return the remaining decrypted result
[buffer_size] - The buffer size to receive decrypted data,it depends on the decryption parameter passed by decrypt_init and crypto algorithm
see SKF_EncryptFinal for more details