Struct containing the parameters required for AES operations.
More...
Struct containing the parameters required for AES operations.
§ aad
| uint8_t* HSMBareMetal_AESOperationStruct::aad |
A buffer of length aadLength containing additional authentication data to be authenticated/verified but not encrypted/decrypted.
§ aadLength
| size_t HSMBareMetal_AESOperationStruct::aadLength |
Length of the total aad in bytes. Either aadLength or inputLength must be non-zero.
§ input
| uint8_t* HSMBareMetal_AESOperationStruct::input |
- Encryption: The plaintext buffer to be encrypted and authenticated (CCM and GCM only) in the AES operation.
- Decryption: The ciphertext to be decrypted and verified (CCM and GCM only).
§ inputLength
| size_t HSMBareMetal_AESOperationStruct::inputLength |
Length of the input/output data in bytes. Either aadLength or inputLength must be non-zero. Max length supported may be limited depending on the return behavior.
§ iv
| uint8_t* HSMBareMetal_AESOperationStruct::iv |
A buffer containing an IV. IVs must be unique to each CBC operation and may not be reused.
§ ivLength
| uint8_t HSMBareMetal_AESOperationStruct::ivLength |
Length of iv in bytes. Valid length is 16 Bytes.
§ mac
| uint8_t* HSMBareMetal_AESOperationStruct::mac |
- Encryption: The buffer where the message authentication code is copied.
- Decryption: The buffer containing the received message authentication code.
§ macLength
| uint8_t HSMBareMetal_AESOperationStruct::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*.
§ nonce
| uint8_t* HSMBareMetal_AESOperationStruct::nonce |
A buffer containing a nonce. Nonces must be unique to each CCM operation and may not be reused.
§ nonceLength
| uint8_t HSMBareMetal_AESOperationStruct::nonceLength |
Length of nonce in bytes. Valid nonce lengths are [7, 8, ... 13].
§ output
| uint8_t* HSMBareMetal_AESOperationStruct::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.
The documentation for this struct was generated from the following file: