nrfxlib API 0.1.0
Loading...
Searching...
No Matches
cc3xx_psa_aead.h File Reference
#include "psa/crypto.h"

Go to the source code of this file.

Functions

psa_status_t cc3xx_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)
 Encrypt and authenticate with an AEAD algorithm in one-shot.
 
psa_status_t cc3xx_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)
 Decrypt and verify tag with an AEAD algorithm in one-shot.
 
psa_status_t cc3xx_aead_encrypt_setup (cc3xx_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 the key for a multipart authenticated encryption operation.
 
psa_status_t cc3xx_aead_decrypt_setup (cc3xx_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 the key for a multipart authenticated decryption operation.
 
psa_status_t cc3xx_aead_set_nonce (cc3xx_aead_operation_t *operation, const uint8_t *nonce, size_t nonce_length)
 Set the nonce for an authenticated encryption or decryption operation.
 
psa_status_t cc3xx_aead_set_lengths (cc3xx_aead_operation_t *operation, size_t ad_length, size_t plaintext_length)
 Declare the lengths of the message and additional data for AEAD.
 
psa_status_t cc3xx_aead_update_ad (cc3xx_aead_operation_t *operation, const uint8_t *input, size_t input_size)
 Pass additional data to an active AEAD operation.
 
psa_status_t cc3xx_aead_update (cc3xx_aead_operation_t *operation, const uint8_t *input, size_t input_length, uint8_t *output, size_t output_size, size_t *output_length)
 Encrypt or decrypt a message fragment in an active AEAD operation.
 
psa_status_t cc3xx_aead_finish (cc3xx_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 encrypting a message in an AEAD operation.
 
psa_status_t cc3xx_aead_verify (cc3xx_aead_operation_t *operation, uint8_t *plaintext, size_t plaintext_size, size_t *plaintext_length, const uint8_t *tag, size_t tag_size)
 Finish decrypting a message in an AEAD operation.
 
psa_status_t cc3xx_aead_abort (cc3xx_aead_operation_t *operation)
 Abort an AEAD operation.
 

Detailed Description

This file contains the declaration of the entry points associated to the aead capability (single-part and multipart) as described by the PSA Cryptoprocessor Driver interface specification