1. CMOX_COMMON

1.1. Common function pointers and macros

group CMOX_COMMON_FUNCS

Typedefs

typedef const struct cmox_math_funcsStruct_st * cmox_math_funcs_t

Mathematical functions customizations for RSA and ECC.

typedef const struct cmox_modexp_funcStruct_st * cmox_modexp_func_t

Modular exponentiation functions customizations for RSA.

Variables

const cmox_math_funcs_t CMOX_MATH_FUNCS_SMALL

Smaller footprint and slower performance

const cmox_math_funcs_t CMOX_MATH_FUNCS_FAST

Bigger footprint and faster performance

const cmox_math_funcs_t CMOX_MATH_FUNCS_SUPERFAST256

Bigger footprint and faster performance, speed up those ECC curves whose length is in the range [225, 256] bits, e.g. Curve25519, Secp256, Bpp256, Ed25519, Frp256, SM2.

const cmox_modexp_func_t CMOX_MODEXP_PUBLIC

Suggested Modexp value for the target device public operations

const cmox_modexp_func_t CMOX_MODEXP_PRIVATE_LOWMEM

Constant-time (for Private operations) using Low Memory

const cmox_modexp_func_t CMOX_MODEXP_PRIVATE_MIDMEM

Constant-time (for Private operations) using Mid Memory

const cmox_modexp_func_t CMOX_MODEXP_PRIVATE_HIGHMEM

Constant-time (for Private operations) using High Memory

1.2. Common structures

group CMOX_COMMON_STRUCTS
struct cmox_membuf_handle_st
#include <cmox_common.h>

Structure to store information on the static memory.

Public Members

uint8_t * MemBuf

Pointer to the pre-allocated memory buffer

size_t MemBufSize

Total size of the pre-allocated memory buffer

size_t MemBufUsed

Currently used portion of the buffer

size_t MaxMemUsed

Max memory used