libnx  v4.6.0
Data Structures | Functions
cmac.h File Reference

Hardware accelerated AES-CMAC implementation. More...

#include "aes.h"

Go to the source code of this file.

Data Structures

struct  Aes128CmacContext
 Context for AES-128 CMAC. More...
 
struct  Aes192CmacContext
 Context for AES-192 CMAC. More...
 
struct  Aes256CmacContext
 Context for AES-256 CMAC. More...
 

Functions

void cmacAes128ContextCreate (Aes128CmacContext *out, const void *key)
 Initialize an AES-128-CMAC context.
 
void cmacAes128ContextUpdate (Aes128CmacContext *ctx, const void *src, size_t size)
 Updates AES-128-CMAC context with data to hash.
 
void cmacAes128ContextGetMac (Aes128CmacContext *ctx, void *dst)
 Gets the context's output mac, finalizes the context.
 
void cmacAes128CalculateMac (void *dst, const void *key, const void *src, size_t size)
 Simple all-in-one AES-128-CMAC calculator.
 
void cmacAes192ContextCreate (Aes192CmacContext *out, const void *key)
 Initialize an AES-192-CMAC context.
 
void cmacAes192ContextUpdate (Aes192CmacContext *ctx, const void *src, size_t size)
 Updates AES-192-CMAC context with data to hash.
 
void cmacAes192ContextGetMac (Aes192CmacContext *ctx, void *dst)
 Gets the context's output mac, finalizes the context.
 
void cmacAes192CalculateMac (void *dst, const void *key, const void *src, size_t size)
 Simple all-in-one AES-192-CMAC calculator.
 
void cmacAes256ContextCreate (Aes256CmacContext *out, const void *key)
 Initialize an AES-256-CMAC context.
 
void cmacAes256ContextUpdate (Aes256CmacContext *ctx, const void *src, size_t size)
 Updates AES-256-CMAC context with data to hash.
 
void cmacAes256ContextGetMac (Aes256CmacContext *ctx, void *dst)
 Gets the context's output mac, finalizes the context.
 
void cmacAes256CalculateMac (void *dst, const void *key, const void *src, size_t size)
 Simple all-in-one AES-256-CMAC calculator.
 

Detailed Description

Hardware accelerated AES-CMAC implementation.