7. CMOX_SHA3

7.1. SHA3 macros

group CMOX_SHA3_MACROS

Defines

CMOX_SHA3_224_SIZE

Number of bytes (uint8_t) to store a SHA3-224 digest.

CMOX_SHA3_256_SIZE

Number of bytes (uint8_t) to store a SHA3-256 digest.

CMOX_SHA3_384_SIZE

Number of bytes (uint8_t) to store a SHA3-384 digest.

CMOX_SHA3_512_SIZE

Number of bytes (uint8_t) to store a SHA3-512 digest.

7.2. SHA3 module public method prototypes

group CMOX_SHA3_PUBLIC_METHODS

Functions

cmox_hash_handle_t * cmox_sha3_224_construct ( cmox_sha3_handle_t * P_pThis )

SHA3-224 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

cmox_hash_handle_t * cmox_sha3_256_construct ( cmox_sha3_handle_t * P_pThis )

SHA3-256 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

cmox_hash_handle_t * cmox_sha3_384_construct ( cmox_sha3_handle_t * P_pThis )

SHA3-384 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

cmox_hash_handle_t * cmox_sha3_512_construct ( cmox_sha3_handle_t * P_pThis )

SHA3-512 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

cmox_hash_handle_t * cmox_shake128_construct ( cmox_sha3_handle_t * P_pThis )

SHAKE128 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

cmox_hash_handle_t * cmox_shake256_construct ( cmox_sha3_handle_t * P_pThis )

SHAKE256 constructor.

Parameters :

P_pThis – Pointer to the SHA3 handle to initialize

Returns :

cmox_hash_handle_t* Pointer to a general hash handle. This will be used by the general purpose hash functions in order to perform the algorithm

7.3. SHA3 module public types

group CMOX_SHA3_PUBLIC_TYPES
struct cmox_sha3_handle_t
#include <cmox_sha3.h>

SHA3 handle type definition.

Public Members

cmox_hash_handle_t super

General hash module

uint32_t flags

Internal flag

cmox_sponge_handle_t keccak

Keccak P-1600 handler