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

Data Fields | |
| CryptoKey * | key |
| uint8_t * | aad |
| uint8_t * | input |
| uint8_t * | output |
| uint8_t * | iv |
| uint8_t * | mac |
| size_t | aadLength |
| size_t | inputLength |
| uint8_t | ivLength |
| uint8_t | macLength |
| bool | ivInternallyGenerated |
Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message for one-step operations.
| uint8_t* AESGCM_OneStepOperation::aad |
A buffer of length aadLength containing additional authentication data to be authenticated/verified but not encrypted/decrypted.
| uint8_t* AESGCM_OneStepOperation::input |
| uint8_t* AESGCM_OneStepOperation::output |
For CC27XX devices, the output buffer needs to be 32-bit aligned.
| uint8_t* AESGCM_OneStepOperation::iv |
A buffer containing an IV. IVs must be unique to each GCM operation and may not be reused. If ivInternallyGenerated is set, the IV will be generated by AESGCM_oneStepEncrypt() and copied to this buffer.
| uint8_t* AESGCM_OneStepOperation::mac |
| size_t AESGCM_OneStepOperation::aadLength |
Length of the total aad in bytes. Either aadLength or inputLength must be non-zero.
For CC27XX devices with _HSM-suffixed key encoding, the aadLength must be block-size aligned.
| size_t AESGCM_OneStepOperation::inputLength |
Length of the input/output data in bytes. Either aadLength or inputLength must be non-zero. Unlike this field in AESGCM_SegmentedDataOperation, the length doesn't need to be block-aligned.
| uint8_t AESGCM_OneStepOperation::ivLength |
Length of IV in bytes. See implementation-specific header for IV length support.
| uint8_t AESGCM_OneStepOperation::macLength |
Length of mac in bytes. Valid MAC lengths are [4, 8, 12, 13, 14, 15, 16].
| bool AESGCM_OneStepOperation::ivInternallyGenerated |
When true, the IV buffer passed into AESGCM_oneStepEncrypt() will be overwritten with a randomly generated IV. Not supported by all implementations.