Cryptography for Intel(R) Integrated Performance Primitives Developer Reference

ID 768738
Date 12/16/2022
Document Table of Contents

CMAC Functions

The Intel IPP CMAC primitive functions use CMAC schemes based on block ciphers described in the Symmetric Cryptography Primitive Functions.

A CMAC scheme is implemented as a set of primitive functions.

Typical application code for computing CMAC of an input message stream should follow the sequence of operations as outlined below:

  1. Call the function AES_CMACGetSize to get the size required to configure the IppsAES_CMACState context.

  2. Ensure that the required memory space is properly allocated. With the allocated memory, call the function AES_CMACInit to initialize the context.

  3. Keep calling the function AES_CMACUpdate to update the MAC value of the incoming message stream in the queue till its completion. To determine the current MAC value, call AES_CMACGetTag between each two calls to AES_CMACUpdate.

  4. Call the function AES_CMACFinal to complete computation of the MAC value of the streaming message and prepare the context for computation of MAC of another message.

  5. Clean up secret data stored in the context.
  6. Call the operating system memory free service function to release the IppsAES_CMACState context.

Did you find the information on this page useful?

Characters remaining:

Feedback Message