nrfxlib API 3.3.99
Loading...
Searching...
No Matches

SHA3 algorithms, with 224, 256, 384 and 512 bit outputs. More...

Files

file  ocrypto_sha3.h
 SHA3 algorithms, with 224, 256, 384 and 512 bit outputs.
 

Macros

#define ocrypto_sha3_224_BYTES   (28)
 
#define ocrypto_sha3_256_BYTES   (32)
 
#define ocrypto_sha3_384_BYTES   (48)
 
#define ocrypto_sha3_512_BYTES   (64)
 

Functions

void ocrypto_sha3_224 (uint8_t r[(28)], const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_256 (uint8_t r[(32)], const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_384 (uint8_t r[(48)], const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_512 (uint8_t r[(64)], const uint8_t *in, size_t in_len)
 

Incremental SHA3 generator

This group of functions can be used to incrementally compute the SHA3 hash for a given message.

void ocrypto_sha3_init (ocrypto_sha3_ctx *ctx)
 
void ocrypto_sha3_224_update (ocrypto_sha3_ctx *ctx, const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_256_update (ocrypto_sha3_ctx *ctx, const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_384_update (ocrypto_sha3_ctx *ctx, const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_512_update (ocrypto_sha3_ctx *ctx, const uint8_t *in, size_t in_len)
 
void ocrypto_sha3_224_final (ocrypto_sha3_ctx *ctx, uint8_t r[(28)])
 
void ocrypto_sha3_256_final (ocrypto_sha3_ctx *ctx, uint8_t r[(32)])
 
void ocrypto_sha3_384_final (ocrypto_sha3_ctx *ctx, uint8_t r[(48)])
 
void ocrypto_sha3_512_final (ocrypto_sha3_ctx *ctx, uint8_t r[(64)])
 

Detailed Description

SHA3 algorithms, with 224, 256, 384 and 512 bit outputs.

The SHA3 family is a set of cryptographic hash functions initiated by the NSA. It is the successor of the SHA1 and SHA2 algorithms.

A fixed-sized message digest is computed from variable length input data. The function is practically impossible to revert, and small changes in the input message lead to major changes in the message digest.

See also
FIPS - SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions