![]() |
![]() |
Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message for one-step operations. More...
#include <AESCCM.h>

Data Fields | |
| CryptoKey * | key |
| uint8_t * | aad |
| uint8_t * | input |
| uint8_t * | output |
| uint8_t * | nonce |
| uint8_t * | mac |
| size_t | aadLength |
| size_t | inputLength |
| uint8_t | nonceLength |
| uint8_t | macLength |
| bool | nonceInternallyGenerated |
Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message for one-step operations.
| uint8_t* AESCCM_OneStepOperation::aad |
A buffer of length aadLength containing additional authentication data to be authenticated/verified but not encrypted/decrypted.
| uint8_t* AESCCM_OneStepOperation::input |
| uint8_t* AESCCM_OneStepOperation::output |
For CC27XX devices, the output buffer needs to be 32-bit aligned.
| uint8_t* AESCCM_OneStepOperation::nonce |
A buffer containing a nonce. Nonces must be unique to each CCM operation and may not be reused. If nonceInternallyGenerated is set, the nonce will be generated by AESCCM_oneStepEncrypt() and copied to this buffer.
| uint8_t* AESCCM_OneStepOperation::mac |
| size_t AESCCM_OneStepOperation::aadLength |
Length of the total aad in bytes. Either aadLength or inputLength must be non-zero. Unlike this field in AESCCM_SegmentedAADOperation, the length doesn't need to be block-aligned.
For CC27XX devices with _HSM-suffixed key encoding, the aadLength must be block-size aligned.
| size_t AESCCM_OneStepOperation::inputLength |
Length of the input/output data in bytes. Either aadLength or inputLength must be non-zero. Unlike this field in AESCCM_SegmentedDataOperation, the length doesn't need to be block-aligned. Max length supported may be limited depending on the return behavior.
| uint8_t AESCCM_OneStepOperation::nonceLength |
Length of nonce in bytes. Valid nonce lengths are [7, 8, ... 13].
| uint8_t AESCCM_OneStepOperation::macLength |
Length of mac in bytes. Valid MAC lengths are [0, 4, 6, 8, 10, 12, 14, 16]. A length of 0 disables authentication and verification. This is only permitted when using CCM*.
| bool AESCCM_OneStepOperation::nonceInternallyGenerated |
When true, the nonce buffer passed into AESCCM_oneStepEncrypt() will be overwritten with a randomly generated nonce. Not supported by all implementations.