Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message.
More...
#include <AESGCM.h>
Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message.
§ key
A previously initialized CryptoKey
§ aad
uint8_t* AESGCM_Operation::aad |
A buffer of length aadLength
containing additional authentication data to be authenticated/verified but not encrypted/decrypted.
§ input
uint8_t* AESGCM_Operation::input |
- Encryption: The plaintext buffer to be encrypted and authenticated in the GCM operation.
- Decryption: The ciphertext to be decrypted and verified.
§ output
uint8_t* AESGCM_Operation::output |
- Encryption: The output ciphertext buffer that the encrypted plaintext is copied to.
- Decryption: The plaintext derived from the decrypted and verified ciphertext is copied here.
§ iv
uint8_t* AESGCM_Operation::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 this function call and copied to this buffer.
§ mac
uint8_t* AESGCM_Operation::mac |
- Encryption: The buffer where the message authentication code is copied.
- Decryption: The buffer containing the received message authentication code.
§ aadLength
size_t AESGCM_Operation::aadLength |
Length of aad
in bytes. Either aadLength
or plaintextLength
must benon-zero. encrypted.
§ inputLength
size_t AESGCM_Operation::inputLength |
Length of the input and output in bytes. Either aadLength
or inputLength
must be non-zero.
§ ivLength
uint8_t AESGCM_Operation::ivLength |
Length of IV
in bytes. The only currently supported IV length is 12 bytes.
§ macLength
uint8_t AESGCM_Operation::macLength |
Length of mac
in bytes. Valid MAC lengths are [4, 8, 12, 13, 14, 15, 16].
§ ivInternallyGenerated
bool AESGCM_Operation::ivInternallyGenerated |
When true, the IV buffer passed into the AESGCM_setupEncrypt() and AESGCM_oneStepEncrypt() functions will be overwritten with a randomly generated IV. Not supported by all implementations.
The documentation for this struct was generated from the following file: