Classes | Functions | Variables
cmac.c File Reference
#include <openssl/cmac.h>
#include <assert.h>
#include <string.h>
#include <openssl/aes.h>
#include <openssl/cipher.h>
#include <openssl/mem.h>
#include "../internal.h"
Include dependency graph for cmac.c:

Go to the source code of this file.

Classes

struct  cmac_ctx_st
 

Functions

int AES_CMAC (uint8_t out[16], const uint8_t *key, size_t key_len, const uint8_t *in, size_t in_len)
 
static void binary_field_mul_x_128 (uint8_t out[16], const uint8_t in[16])
 
static void binary_field_mul_x_64 (uint8_t out[8], const uint8_t in[8])
 
static void CMAC_CTX_cleanup (CMAC_CTX *ctx)
 
int CMAC_CTX_copy (CMAC_CTX *out, const CMAC_CTX *in)
 
void CMAC_CTX_free (CMAC_CTX *ctx)
 
static void CMAC_CTX_init (CMAC_CTX *ctx)
 
CMAC_CTXCMAC_CTX_new (void)
 
int CMAC_Final (CMAC_CTX *ctx, uint8_t *out, size_t *out_len)
 
int CMAC_Init (CMAC_CTX *ctx, const void *key, size_t key_len, const EVP_CIPHER *cipher, ENGINE *engine)
 
int CMAC_Reset (CMAC_CTX *ctx)
 
int CMAC_Update (CMAC_CTX *ctx, const uint8_t *in, size_t in_len)
 

Variables

static const uint8_t kZeroIV [AES_BLOCK_SIZE] = {0}
 

Function Documentation

◆ AES_CMAC()

int AES_CMAC ( uint8_t  out[16],
const uint8_t key,
size_t  key_len,
const uint8_t in,
size_t  in_len 
)

Definition at line 84 of file cmac.c.

◆ binary_field_mul_x_128()

static void binary_field_mul_x_128 ( uint8_t  out[16],
const uint8_t  in[16] 
)
static

Definition at line 142 of file cmac.c.

◆ binary_field_mul_x_64()

static void binary_field_mul_x_64 ( uint8_t  out[8],
const uint8_t  in[8] 
)
static

Definition at line 159 of file cmac.c.

◆ CMAC_CTX_cleanup()

static void CMAC_CTX_cleanup ( CMAC_CTX ctx)
static

Definition at line 77 of file cmac.c.

◆ CMAC_CTX_copy()

int CMAC_CTX_copy ( CMAC_CTX out,
const CMAC_CTX in 
)

Definition at line 127 of file cmac.c.

◆ CMAC_CTX_free()

void CMAC_CTX_free ( CMAC_CTX ctx)

Definition at line 118 of file cmac.c.

◆ CMAC_CTX_init()

static void CMAC_CTX_init ( CMAC_CTX ctx)
static

Definition at line 73 of file cmac.c.

◆ CMAC_CTX_new()

CMAC_CTX* CMAC_CTX_new ( void  )

Definition at line 110 of file cmac.c.

◆ CMAC_Final()

int CMAC_Final ( CMAC_CTX ctx,
uint8_t out,
size_t *  out_len 
)

Definition at line 252 of file cmac.c.

◆ CMAC_Init()

int CMAC_Init ( CMAC_CTX ctx,
const void *  key,
size_t  key_len,
const EVP_CIPHER cipher,
ENGINE engine 
)

Definition at line 174 of file cmac.c.

◆ CMAC_Reset()

int CMAC_Reset ( CMAC_CTX ctx)

Definition at line 200 of file cmac.c.

◆ CMAC_Update()

int CMAC_Update ( CMAC_CTX ctx,
const uint8_t in,
size_t  in_len 
)

Definition at line 205 of file cmac.c.

Variable Documentation

◆ kZeroIV

const uint8_t kZeroIV[AES_BLOCK_SIZE] = {0}
static

Definition at line 172 of file cmac.c.



grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:07