8#ifndef CC3XX_PSA_CIPHER_H
9#define CC3XX_PSA_CIPHER_H
19#include "psa/crypto.h"
46 const psa_key_attributes_t *attributes,
47 const uint8_t *key,
size_t key_length,
69 const psa_key_attributes_t *attributes,
70 const uint8_t *key,
size_t key_length,
84 const uint8_t *iv,
size_t iv_length);
101 const uint8_t *input,
size_t input_length,
102 uint8_t *output,
size_t output_size,
size_t *output_length);
117 uint8_t *output,
size_t output_size,
size_t *output_length);
148 const psa_key_attributes_t *attributes,
149 const uint8_t *key_buffer,
150 size_t key_buffer_size,
154 const uint8_t *input,
158 size_t *output_length);
177 const psa_key_attributes_t *attributes,
178 const uint8_t *key_buffer,
179 size_t key_buffer_size,
181 const uint8_t *input,
185 size_t *output_length);
psa_status_t cc3xx_cipher_decrypt(const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Perform a one-shot decryption operation.
psa_status_t cc3xx_cipher_abort(cc3xx_cipher_operation_t *operation)
Abort a multipart cipher operation.
psa_status_t cc3xx_cipher_finish(cc3xx_cipher_operation_t *operation, uint8_t *output, size_t output_size, size_t *output_length)
Finalize the multipart cipher operation by encrypting any buffered input from the previous call to up...
psa_status_t cc3xx_cipher_encrypt(const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *iv, size_t iv_length, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Perform a one-shot encryption operation.
psa_status_t cc3xx_cipher_set_iv(cc3xx_cipher_operation_t *operation, const uint8_t *iv, size_t iv_length)
Setup an IV on the operation object.
psa_status_t cc3xx_cipher_update(cc3xx_cipher_operation_t *operation, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
Update the ciphering operation with new input to produce new output.
psa_status_t cc3xx_cipher_decrypt_setup(cc3xx_cipher_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key, size_t key_length, psa_algorithm_t alg)
Setup a cipher decryption object by binding the key to the context of a multipart cipher operation.
psa_status_t cc3xx_cipher_encrypt_setup(cc3xx_cipher_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key, size_t key_length, psa_algorithm_t alg)
Setup a cipher encryption object by binding the key to the context of a multipart cipher operation.
Definition: cc3xx_crypto_primitives_private.h:18