17#ifndef CRACEN_SW_AES_CTR_H
18#define CRACEN_SW_AES_CTR_H
20#include <psa/crypto.h>
23#include <sxsymcrypt/keyref.h>
37 const psa_key_attributes_t *attributes,
38 const uint8_t *key_buffer,
size_t key_buffer_size);
65 size_t input_length, uint8_t *output,
size_t output_size,
66 size_t *output_length);
95 const uint8_t *key_buffer,
size_t key_buffer_size,
96 const uint8_t *iv,
size_t iv_length,
const uint8_t *input,
97 size_t input_length, uint8_t *output,
size_t output_size,
98 size_t *output_length);
int32_t psa_status_t
Definition error.h:26
psa_status_t cracen_sw_aes_ctr_setup(cracen_cipher_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size)
Setup software AES-CTR operation.
psa_status_t cracen_sw_aes_ctr_set_iv(cracen_cipher_operation_t *operation, const uint8_t *iv, size_t iv_length)
Set IV (Counter) for the software AES-CTR operation.
psa_status_t cracen_sw_aes_ctr_crypt(const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, 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 single-shot software AES-CTR encryption or decryption.
psa_status_t cracen_sw_aes_ctr_finish(cracen_cipher_operation_t *operation, size_t *output_length)
Finish the software AES-CTR operation.
psa_status_t cracen_sw_aes_ctr_update(cracen_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 software AES-CTR operation with new data.
Definition cracen_psa_primitives.h:282