Developer Reference


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
    to get the size required to configure the
  2. Ensure that the required memory space is properly allocated. With the allocated memory, call the function
    to initialize the context.
  3. Keep calling the function
    to update the MAC value of the incoming message stream in the queue till its completion. To determine the current MAC value, call
    between each two calls to
  4. Call the function
    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

Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804