Let us walk on the 3-isogeny graph
|
#include <stddef.h>
#include <stdint.h>
Go to the source code of this file.
Data Structures | |
struct | shake128incctx |
struct | shake128ctx |
struct | shake256incctx |
struct | shake256ctx |
struct | sha3_256incctx |
struct | sha3_384incctx |
struct | sha3_512incctx |
Macros | |
#define | SHAKE128_RATE 168 |
#define | SHAKE256_RATE 136 |
#define | SHA3_256_RATE 136 |
#define | SHA3_384_RATE 104 |
#define | SHA3_512_RATE 72 |
Functions | |
void | shake128_absorb (shake128ctx *state, const uint8_t *input, size_t inlen) |
void | shake128_squeezeblocks (uint8_t *output, size_t nblocks, shake128ctx *state) |
void | shake128_ctx_release (shake128ctx *state) |
void | shake128_ctx_clone (shake128ctx *dest, const shake128ctx *src) |
void | cshake128_simple_absorb (shake128ctx *state, uint16_t cstm, const uint8_t *input, size_t inlen) |
void | cshake128_simple_squeezeblocks (uint8_t *output, size_t nblocks, shake128ctx *state) |
void | cshake128_simple (uint8_t *output, size_t outlen, uint16_t cstm, const uint8_t *input, size_t inlen) |
void | shake128_inc_init (shake128incctx *state) |
void | shake128_inc_absorb (shake128incctx *state, const uint8_t *input, size_t inlen) |
void | shake128_inc_finalize (shake128incctx *state) |
void | shake128_inc_squeeze (uint8_t *output, size_t outlen, shake128incctx *state) |
void | shake128_inc_ctx_clone (shake128incctx *dest, const shake128incctx *src) |
void | shake128_inc_ctx_release (shake128incctx *state) |
void | shake256_absorb (shake256ctx *state, const uint8_t *input, size_t inlen) |
void | shake256_squeezeblocks (uint8_t *output, size_t nblocks, shake256ctx *state) |
void | shake256_ctx_release (shake256ctx *state) |
void | shake256_ctx_clone (shake256ctx *dest, const shake256ctx *src) |
void | cshake256_simple_absorb (shake256ctx *state, uint16_t cstm, const uint8_t *input, size_t inlen) |
void | cshake256_simple_squeezeblocks (uint8_t *output, size_t nblocks, shake256ctx *state) |
void | cshake256_simple (uint8_t *output, size_t outlen, uint16_t cstm, const uint8_t *input, size_t inlen) |
void | shake256_inc_init (shake256incctx *state) |
void | shake256_inc_absorb (shake256incctx *state, const uint8_t *input, size_t inlen) |
void | shake256_inc_finalize (shake256incctx *state) |
void | shake256_inc_squeeze (uint8_t *output, size_t outlen, shake256incctx *state) |
void | shake256_inc_ctx_clone (shake256incctx *dest, const shake256incctx *src) |
void | shake256_inc_ctx_release (shake256incctx *state) |
void | shake128 (uint8_t *output, size_t outlen, const uint8_t *input, size_t inlen) |
void | shake256 (uint8_t *output, size_t outlen, const uint8_t *input, size_t inlen) |
void | sha3_256_inc_init (sha3_256incctx *state) |
void | sha3_256_inc_absorb (sha3_256incctx *state, const uint8_t *input, size_t inlen) |
void | sha3_256_inc_finalize (uint8_t *output, sha3_256incctx *state) |
void | sha3_256_inc_ctx_clone (sha3_256incctx *dest, const sha3_256incctx *src) |
void | sha3_256_inc_ctx_release (sha3_256incctx *state) |
void | sha3_256 (uint8_t *output, const uint8_t *input, size_t inlen) |
void | sha3_384_inc_init (sha3_384incctx *state) |
void | sha3_384_inc_absorb (sha3_384incctx *state, const uint8_t *input, size_t inlen) |
void | sha3_384_inc_finalize (uint8_t *output, sha3_384incctx *state) |
void | sha3_384_inc_ctx_clone (sha3_384incctx *dest, const sha3_384incctx *src) |
void | sha3_384_inc_ctx_release (sha3_384incctx *state) |
void | sha3_384 (uint8_t *output, const uint8_t *input, size_t inlen) |
void | sha3_512_inc_init (sha3_512incctx *state) |
void | sha3_512_inc_absorb (sha3_512incctx *state, const uint8_t *input, size_t inlen) |
void | sha3_512_inc_finalize (uint8_t *output, sha3_512incctx *state) |
void | sha3_512_inc_ctx_clone (sha3_512incctx *dest, const sha3_512incctx *src) |
void | sha3_512_inc_ctx_release (sha3_512incctx *state) |
void | sha3_512 (uint8_t *output, const uint8_t *input, size_t inlen) |
#define SHA3_256_RATE 136 |
Definition at line 9 of file fips202.h.
Referenced by sha3_256(), sha3_256_inc_absorb(), and sha3_256_inc_finalize().
#define SHA3_384_RATE 104 |
Definition at line 10 of file fips202.h.
Referenced by sha3_384(), sha3_384_inc_absorb(), and sha3_384_inc_finalize().
#define SHA3_512_RATE 72 |
Definition at line 11 of file fips202.h.
Referenced by sha3_512(), sha3_512_inc_absorb(), and sha3_512_inc_finalize().
#define SHAKE128_RATE 168 |
Definition at line 7 of file fips202.h.
Referenced by cshake128_simple(), cshake128_simple_absorb(), cshake128_simple_squeezeblocks(), shake128(), shake128_absorb(), shake128_inc_absorb(), shake128_inc_finalize(), shake128_inc_squeeze(), and shake128_squeezeblocks().
#define SHAKE256_RATE 136 |
Definition at line 8 of file fips202.h.
Referenced by cshake256_simple(), cshake256_simple_absorb(), cshake256_simple_squeezeblocks(), shake256(), shake256_absorb(), shake256_inc_absorb(), shake256_inc_finalize(), shake256_inc_squeeze(), and shake256_squeezeblocks().
void cshake128_simple | ( | uint8_t * | output, |
size_t | outlen, | ||
uint16_t | cstm, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 370 of file fips202.c.
References shake128incctx::ctx, hal_get_time(), KeccakF1600_StatePermute(), KeccakF1600_StateXORBytes(), and SHAKE128_RATE.
void cshake128_simple_absorb | ( | shake128ctx * | state, |
uint16_t | cstm, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 320 of file fips202.c.
References shake128ctx::ctx, hal_get_time(), i, KeccakF1600_StatePermute(), KeccakF1600_StateXORBytes(), and SHAKE128_RATE.
void cshake128_simple_squeezeblocks | ( | uint8_t * | output, |
size_t | nblocks, | ||
shake128ctx * | state ) |
Definition at line 357 of file fips202.c.
References shake128ctx::ctx, hal_get_time(), and SHAKE128_RATE.
void cshake256_simple | ( | uint8_t * | output, |
size_t | outlen, | ||
uint16_t | cstm, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 829 of file fips202.c.
References shake256incctx::ctx, hal_get_time(), KeccakF1600_StatePermute(), KeccakF1600_StateXORBytes(), and SHAKE256_RATE.
void cshake256_simple_absorb | ( | shake256ctx * | state, |
uint16_t | cstm, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 783 of file fips202.c.
References shake256ctx::ctx, hal_get_time(), i, KeccakF1600_StatePermute(), KeccakF1600_StateXORBytes(), and SHAKE256_RATE.
void cshake256_simple_squeezeblocks | ( | uint8_t * | output, |
size_t | nblocks, | ||
shake256ctx * | state ) |
Definition at line 816 of file fips202.c.
References shake256ctx::ctx, hal_get_time(), and SHAKE256_RATE.
void sha3_256 | ( | uint8_t * | output, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 563 of file fips202.c.
References sha3_256incctx::ctx, hal_get_time(), and SHA3_256_RATE.
void sha3_256_inc_absorb | ( | sha3_256incctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 593 of file fips202.c.
References sha3_256incctx::ctx, hal_get_time(), and SHA3_256_RATE.
void sha3_256_inc_ctx_clone | ( | sha3_256incctx * | dest, |
const sha3_256incctx * | src ) |
void sha3_256_inc_ctx_release | ( | sha3_256incctx * | state | ) |
void sha3_256_inc_finalize | ( | uint8_t * | output, |
sha3_256incctx * | state ) |
Definition at line 604 of file fips202.c.
References sha3_256incctx::ctx, hal_get_time(), i, and SHA3_256_RATE.
void sha3_256_inc_init | ( | sha3_256incctx * | state | ) |
Definition at line 582 of file fips202.c.
References sha3_256incctx::ctx, and hal_get_time().
void sha3_384 | ( | uint8_t * | output, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 687 of file fips202.c.
References sha3_384incctx::ctx, hal_get_time(), and SHA3_384_RATE.
void sha3_384_inc_absorb | ( | sha3_384incctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 641 of file fips202.c.
References sha3_384incctx::ctx, hal_get_time(), and SHA3_384_RATE.
void sha3_384_inc_ctx_clone | ( | sha3_384incctx * | dest, |
const sha3_384incctx * | src ) |
void sha3_384_inc_ctx_release | ( | sha3_384incctx * | state | ) |
void sha3_384_inc_finalize | ( | uint8_t * | output, |
sha3_384incctx * | state ) |
Definition at line 652 of file fips202.c.
References sha3_384incctx::ctx, hal_get_time(), i, and SHA3_384_RATE.
void sha3_384_inc_init | ( | sha3_384incctx * | state | ) |
Definition at line 630 of file fips202.c.
References sha3_384incctx::ctx, and hal_get_time().
void sha3_512 | ( | uint8_t * | output, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 714 of file fips202.c.
References sha3_512incctx::ctx, hal_get_time(), and SHA3_512_RATE.
void sha3_512_inc_absorb | ( | sha3_512incctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 744 of file fips202.c.
References sha3_512incctx::ctx, hal_get_time(), and SHA3_512_RATE.
void sha3_512_inc_ctx_clone | ( | sha3_512incctx * | dest, |
const sha3_512incctx * | src ) |
void sha3_512_inc_ctx_release | ( | sha3_512incctx * | state | ) |
void sha3_512_inc_finalize | ( | uint8_t * | output, |
sha3_512incctx * | state ) |
Definition at line 755 of file fips202.c.
References sha3_512incctx::ctx, hal_get_time(), i, and SHA3_512_RATE.
void sha3_512_inc_init | ( | sha3_512incctx * | state | ) |
Definition at line 733 of file fips202.c.
References sha3_512incctx::ctx, and hal_get_time().
void shake128 | ( | uint8_t * | output, |
size_t | outlen, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 456 of file fips202.c.
References shake128incctx::ctx, hal_get_time(), and SHAKE128_RATE.
void shake128_absorb | ( | shake128ctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 417 of file fips202.c.
References shake128ctx::ctx, hal_get_time(), i, and SHAKE128_RATE.
void shake128_ctx_clone | ( | shake128ctx * | dest, |
const shake128ctx * | src ) |
void shake128_ctx_release | ( | shake128ctx * | state | ) |
void shake128_inc_absorb | ( | shake128incctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 225 of file fips202.c.
References shake128incctx::ctx, hal_get_time(), and SHAKE128_RATE.
void shake128_inc_ctx_clone | ( | shake128incctx * | dest, |
const shake128incctx * | src ) |
void shake128_inc_ctx_release | ( | shake128incctx * | state | ) |
void shake128_inc_finalize | ( | shake128incctx * | state | ) |
Definition at line 236 of file fips202.c.
References shake128incctx::ctx, hal_get_time(), and SHAKE128_RATE.
void shake128_inc_init | ( | shake128incctx * | state | ) |
Definition at line 214 of file fips202.c.
References shake128incctx::ctx, and hal_get_time().
void shake128_inc_squeeze | ( | uint8_t * | output, |
size_t | outlen, | ||
shake128incctx * | state ) |
Definition at line 247 of file fips202.c.
References shake128incctx::ctx, hal_get_time(), and SHAKE128_RATE.
void shake128_squeezeblocks | ( | uint8_t * | output, |
size_t | nblocks, | ||
shake128ctx * | state ) |
Definition at line 444 of file fips202.c.
References shake128ctx::ctx, hal_get_time(), and SHAKE128_RATE.
void shake256 | ( | uint8_t * | output, |
size_t | outlen, | ||
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 523 of file fips202.c.
References shake256incctx::ctx, hal_get_time(), and SHAKE256_RATE.
void shake256_absorb | ( | shake256ctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 484 of file fips202.c.
References shake256ctx::ctx, hal_get_time(), i, and SHAKE256_RATE.
void shake256_ctx_clone | ( | shake256ctx * | dest, |
const shake256ctx * | src ) |
void shake256_ctx_release | ( | shake256ctx * | state | ) |
void shake256_inc_absorb | ( | shake256incctx * | state, |
const uint8_t * | input, | ||
size_t | inlen ) |
Definition at line 277 of file fips202.c.
References shake256incctx::ctx, hal_get_time(), and SHAKE256_RATE.
void shake256_inc_ctx_clone | ( | shake256incctx * | dest, |
const shake256incctx * | src ) |
void shake256_inc_ctx_release | ( | shake256incctx * | state | ) |
void shake256_inc_finalize | ( | shake256incctx * | state | ) |
Definition at line 288 of file fips202.c.
References shake256incctx::ctx, hal_get_time(), and SHAKE256_RATE.
void shake256_inc_init | ( | shake256incctx * | state | ) |
Definition at line 266 of file fips202.c.
References shake256incctx::ctx, and hal_get_time().
void shake256_inc_squeeze | ( | uint8_t * | output, |
size_t | outlen, | ||
shake256incctx * | state ) |
Definition at line 299 of file fips202.c.
References shake256incctx::ctx, hal_get_time(), and SHAKE256_RATE.
void shake256_squeezeblocks | ( | uint8_t * | output, |
size_t | nblocks, | ||
shake256ctx * | state ) |
Definition at line 501 of file fips202.c.
References shake256ctx::ctx, hal_get_time(), and SHAKE256_RATE.