nRF Connect SDK API 3.3.99
Loading...
Searching...
No Matches

Dispatcher layer for software AEAD implementations. More...

Functions

psa_status_t cracen_aead_encrypt_setup (cracen_aead_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg)
 Set up the software AEAD encryption operation.
 
psa_status_t cracen_aead_decrypt_setup (cracen_aead_operation_t *operation, const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg)
 Set up the software AEAD decryption operation.
 
psa_status_t cracen_aead_set_nonce (cracen_aead_operation_t *operation, const uint8_t *nonce, size_t nonce_length)
 Set nonce for the software AEAD operation.
 
psa_status_t cracen_aead_set_lengths (cracen_aead_operation_t *operation, size_t ad_length, size_t plaintext_length)
 Set lengths for the software AEAD operation.
 
psa_status_t cracen_aead_update_ad (cracen_aead_operation_t *operation, const uint8_t *input, size_t input_length)
 Update the software AEAD operation with additional data.
 
psa_status_t cracen_aead_update (cracen_aead_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 AEAD operation with plaintext/ciphertext.
 
psa_status_t cracen_aead_finish (cracen_aead_operation_t *operation, uint8_t *ciphertext, size_t ciphertext_size, size_t *ciphertext_length, uint8_t *tag, size_t tag_size, size_t *tag_length)
 Finish the software AEAD encryption and generate the tag.
 
psa_status_t cracen_aead_verify (cracen_aead_operation_t *operation, uint8_t *plaintext, size_t plaintext_size, size_t *plaintext_length, const uint8_t *tag, size_t tag_length)
 Finish the software AEAD decryption and verify the tag.
 
psa_status_t cracen_aead_abort (cracen_aead_operation_t *operation)
 Abort the software AEAD operation.
 
psa_status_t cracen_aead_encrypt (const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *nonce, size_t nonce_length, const uint8_t *additional_data, size_t additional_data_length, const uint8_t *plaintext, size_t plaintext_length, uint8_t *ciphertext, size_t ciphertext_size, size_t *ciphertext_length)
 Perform a single software AEAD encryption.
 
psa_status_t cracen_aead_decrypt (const psa_key_attributes_t *attributes, const uint8_t *key_buffer, size_t key_buffer_size, psa_algorithm_t alg, const uint8_t *nonce, size_t nonce_length, const uint8_t *additional_data, size_t additional_data_length, const uint8_t *ciphertext, size_t ciphertext_length, uint8_t *plaintext, size_t plaintext_size, size_t *plaintext_length)
 Perform a single software AEAD decryption.
 

Detailed Description

Dispatcher layer for software AEAD implementations.

Dispatcher layer for the software AEAD implementations.

Dispatches multipart AEAD operations to the appropriate per-algorithm software implementation based on the active algorithm.

This module provides a common interface that dispatches to specific software AEAD implementations (such as AES-CCM) as a workaround for hardware limitations with multipart operations.

Note
These APIs are for internal use only. Applications must use the PSA Crypto API (psa_* functions) instead of calling these functions directly.