Visible to Intel only — GUID: GUID-E4E0B690-7E07-4E32-A3CE-62465A3DCE22
Visible to Intel only — GUID: GUID-E4E0B690-7E07-4E32-A3CE-62465A3DCE22
AES-CCM Functions
This section describes functions for authenticated encryption/decryption using the Counter with Cipher Block Chaining-Message Authentication Code (CCM) mode [NIST SP 800-38C] of the AES (Rijndael128) block cipher.
The AES-CCM functions enable authenticated encryption/decryption of several messages using one key that the AES_CCMInit function sets. Processing of each new message starts with a call to the AES_CCMStart function. The application code for conducting a typical AES-CCM authenticated encryption should follow the sequence of operations as outlined below:
- Get the size required to configure the context IppsAES_CCMState by calling the function AES_CCMGetSize.
- Call the system memory-allocation service function to allocate a buffer whose size is not less than the function AES_CCMGetSize specifies.
- Initialize the context IppsAES_CCMState*pCtx by calling the function AES_CCMInit with the allocated buffer and respective AES key.
- Optionally call AES_CCMMessageLen and/or AES_CCMTagLen to set up message and tag parameters.
- Call AES_CCMStart to start authenticated encryption of the first/next message.
- Keep calling AES_CCMEncrypt until the entire message is processed.
- Request the authentication tag by calling AES_CCMGetTag.
- Proceed to the next message, if any, that is, go to step 5.
- Clean up secret data stored in the context.
- Call the system memory free service function to release the buffer allocated for the context IppsAES_CCMState, if needed.
- AES_CCMGetSize
Gets the size of the IppsAES_CCMState context. - AES_CCMInit
Initializes user-supplied memory as the IppsAES_CCMState context for future use. - AES_CCMStart
Starts the process of authenticated encryption/decryption for a new message. - AES_CCMEncrypt
Encrypts a data buffer in the CCM mode. - AES_CCMDecrypt
Decrypts a data buffer in the CCM mode. - AES_CCMGetTag
Generates the message authentication tag in the CCM mode. - AES_CCMMessageLen
Sets up the length of the message to be processed. - AES_CCMTagLen
Sets up the length of the required authentication tag.
See Also
Did you find the information on this page useful?
Feedback Message
Characters remaining: