Data Fields
AESGCM_Operation Struct Reference

Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message. More...

#include <AESGCM.h>

Collaboration diagram for AESGCM_Operation:
Collaboration graph
[legend]

Data Fields

CryptoKeykey
 
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
 

Detailed Description

Struct containing the parameters required for encrypting/decrypting and authenticating/verifying a message.

Field Documentation

§ key

CryptoKey* AESGCM_Operation::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:
© Copyright 1995-2019, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale