Loading...
Searching...
No Matches
psa_aead.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2025 TU Dresden
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
17#ifndef PSA_AEAD_H
18#define PSA_AEAD_H
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
24#include "psa/crypto.h"
25#include "psa/crypto_contexts.h"
26
27#if IS_USED(MODULE_PSA_AEAD_AES_128_CCM) || defined(DOXYGEN)
33 uint8_t *key_buffer, size_t key_buffer_length,
34 uint8_t tag_length, const uint8_t *nonce,
35 size_t nonce_length, const uint8_t *additional_data,
36 size_t additional_data_length, const uint8_t *plaintext,
37 size_t plaintext_length, uint8_t *ciphertext,
38 size_t ciphertext_size, size_t *ciphertext_length);
39
45 uint8_t *key_buffer, size_t key_buffer_length,
46 uint8_t tag_length, const uint8_t *nonce,
47 size_t nonce_length, const uint8_t *additional_data,
48 size_t additional_data_length, const uint8_t *ciphertext,
49 size_t ciphertext_length, uint8_t *plaintext,
50 size_t plaintext_size, size_t *plaintext_length);
51#endif /* MODULE_PSA_AEAD_AES_128_CCM */
52
53#if IS_USED(MODULE_PSA_AEAD_AES_192_CCM) || defined(DOXYGEN)
59 uint8_t *key_buffer, size_t key_buffer_length,
60 uint8_t tag_length, const uint8_t *nonce,
61 size_t nonce_length, const uint8_t *additional_data,
62 size_t additional_data_length, const uint8_t *plaintext,
63 size_t plaintext_length, uint8_t *ciphertext,
64 size_t ciphertext_size, size_t *ciphertext_length);
65
71 uint8_t *key_buffer, size_t key_buffer_length,
72 uint8_t tag_length, const uint8_t *nonce,
73 size_t nonce_length, const uint8_t *additional_data,
74 size_t additional_data_length, const uint8_t *ciphertext,
75 size_t ciphertext_length, uint8_t *plaintext,
76 size_t plaintext_size, size_t *plaintext_length);
77#endif /* MODULE_PSA_AEAD_AES_192_CCM */
78
79#if IS_USED(MODULE_PSA_AEAD_AES_256_CCM) || defined(DOXYGEN)
85 uint8_t *key_buffer, size_t key_buffer_length,
86 uint8_t tag_length, const uint8_t *nonce,
87 size_t nonce_length, const uint8_t *additional_data,
88 size_t additional_data_length, const uint8_t *plaintext,
89 size_t plaintext_length, uint8_t *ciphertext,
90 size_t ciphertext_size, size_t *ciphertext_length);
91
97 uint8_t *key_buffer, size_t key_buffer_length,
98 uint8_t tag_length, const uint8_t *nonce,
99 size_t nonce_length, const uint8_t *additional_data,
100 size_t additional_data_length, const uint8_t *ciphertext,
101 size_t ciphertext_length, uint8_t *plaintext,
102 size_t plaintext_size, size_t *plaintext_length);
103#endif /* MODULE_PSA_AEAD_AES_256_CCM */
104#ifdef __cplusplus
105}
106#endif
107
108#endif /* PSA_AEAD_H */
struct psa_key_attributes_s psa_key_attributes_t
The type of an object containing key attributes.
Definition attributes.h:157
Function declarations for PSA Crypto.
Context definitions for PSA Crypto.
psa_status_t psa_aead_aes_192_ccm_decrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 192 CCM decryption.
psa_status_t psa_aead_aes_128_ccm_encrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 128 CCM encryption.
psa_status_t psa_aead_aes_256_ccm_decrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 256 CCM decryption.
psa_status_t psa_aead_aes_192_ccm_encrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 192 CCM encryption.
psa_status_t psa_aead_aes_128_ccm_decrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 128 CCM decryption.
psa_status_t psa_aead_aes_256_ccm_encrypt(const psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_length, uint8_t tag_length, 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)
Low level wrapper function to call a driver for an AES 256 CCM encryption.
int32_t psa_status_t
Status code type used for all PSA Certified APIs.
Definition error.h:37