AES-CMAC#

API and Callbacks for the AES-CMAC Component.

Silicon Labs implementation of AES-CMAC. See AN875 for more information.

API#

void
emberAfPluginAesMacAuthenticate(const uint8_t *key, const uint8_t *message, uint8_t messageLength, uint8_t *out)

Compute the Cipher-based Message Authentication Code (CMAC) corresponding to the passed message and the passed key.

Macros#

#define
MSB (x)
#define
#define

API Documentation#

emberAfPluginAesMacAuthenticate#

void emberAfPluginAesMacAuthenticate (const uint8_t * key, const uint8_t * message, uint8_t messageLength, uint8_t * out)

Compute the Cipher-based Message Authentication Code (CMAC) corresponding to the passed message and the passed key.

Parameters
[in]key

The key to be used to produce the cipher-based authentication code.

[in]message

A pointer to the message for which a cipher-based authentication code should be computed.

[in]messageLength

The length in bytes of the message to be authenticated.

[out]out

A pointer to a 16-byte area memory in which the resulting cipher-based authentication code will be stored.


Definition at line 68 of file app/framework/plugin/aes-cmac/aes-cmac.h

Macro Definition Documentation#

MSB#

#define MSB
Value:
(x)

Definition at line 34 of file app/framework/plugin/aes-cmac/aes-cmac.h

initToConstZero#

#define initToConstZero
Value:
do \
{ \
MEMSET(x, 0x00, 16); \
} while (0)

Definition at line 36 of file app/framework/plugin/aes-cmac/aes-cmac.h

initToConstRb#

#define initToConstRb
Value:
do \
{ \
MEMSET(x, 0x00, 15); \
x[15] = 0x87; \
} while (0)

Definition at line 42 of file app/framework/plugin/aes-cmac/aes-cmac.h