MCUX CLNS MCUX Crypto Library Normal Secure |

Data Structures | Macros | Functions
mcuxClCss_Cmac.h File Reference

CSSv2 header for CMAC support. More...

`#include <mcuxClCss_Common.h>`

Go to the source code of this file.

## Data Structures

union | mcuxClCss_CmacOption_t
| Command option bit field for mcuxClCss_Cmac_Async. More...

## Macros

#define | MCUXCLCSS_CMAC_KEY_SIZE_128
| Size of 128 bit CMAC key (16 bytes) More...
#define | MCUXCLCSS_CMAC_KEY_SIZE_256
| Size of 256 bit CMAC key (32 bytes) More...
#define | MCUXCLCSS_CMAC_EXTERNAL_KEY_ENABLE
| Set mcuxClCss_CmacOption_t.extkey to this value to use an external key. More...
#define | MCUXCLCSS_CMAC_EXTERNAL_KEY_DISABLE
| Set mcuxClCss_CmacOption_t.extkey to this value to use a key from the CSSv2 keystore. More...
#define | MCUXCLCSS_CMAC_INITIALIZE_DISABLE
| Set mcuxClCss_CmacOption_t.initialize to this value if the message chunk does not include the first block of the message. More...
#define | MCUXCLCSS_CMAC_INITIALIZE_ENABLE
| Set mcuxClCss_CmacOption_t.initialize to this value if the message chunk includes the first block of the message. More...
#define | MCUXCLCSS_CMAC_FINALIZE_DISABLE
| Set mcuxClCss_CmacOption_t.finalize to this value if the message chunk does not include the last block of the message. More...
#define | MCUXCLCSS_CMAC_FINALIZE_ENABLE
| Set mcuxClCss_CmacOption_t.finalize to this value if the message chunk includes the last block of the message. More...
#define | MCUXCLCSS_CMAC_STATE_IN_DISABLE
| Set mcuxClCss_CmacOption_t.sie to this value to use the CMAC state that is present inside CSS. More...
#define | MCUXCLCSS_CMAC_STATE_IN_ENABLE
| Set mcuxClCss_CmacOption_t.sie to this value to import the CMAC state from memory. More...
#define | MCUXCLCSS_CMAC_STATE_OUT_DISABLE
| Set mcuxClCss_CmacOption_t.soe to this value to keep the CMAC state inside CSS at the end of the command. More...
#define | MCUXCLCSS_CMAC_STATE_OUT_ENABLE
| Set mcuxClCss_CmacOption_t.soe to this value to export the CMAC state to memory at the end of the command. More...
#define | MCUXCLCSS_CMAC_OUT_SIZE

## Functions

MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_Cmac_Async (mcuxClCss_CmacOption_t options, mcuxClCss_KeyIndex_t keyIdx, uint8_t const *pKey, size_t keyLength, uint8_t const *pInput, size_t inputLength, uint8_t *pMac)
| Performs CMAC with AES-128 or AES-256. More...

## Detailed Description

CSSv2 header for CMAC support.

This header exposes functions that enable using the CSSv2 for the generation of cipher-based message authentication codes (CMAC). The supported cipher algorithm is AES-128 and AES-256.