mirror of
https://github.com/henrydcase/pqc.git
synced 2024-11-26 17:31:38 +00:00
e56b2e5556
* fixes dynamic memory allocation test. previously a function called freeze() would trigger it * this adds DilithiumII. Preprocessor conditionals still need to be removed * fix ms Makefile * fix MS compiler warnings * clean-up * remove preprocessor conditionals * add dilithium3 * add dilithium4 * add duplicate consistency checks * SHA2 state constants in common * clean up symmetric.h * Port SPHINCS+-SHA256 to sha256ctx struct * Implement ctx struct for fips202 * Port Kyber{512,768,1024} to fips202 ctx struct * Port NewHope to fips202 structs * Port SPHINCS+-SHAKE256 to fips202 ctx structs * Use opaque fips202 structs in MQDSS * port dilithium to use fips202 ctx structs * include -Wredundant-decls * remove comment; format NTT constants * reduce casts in power2round
24 lines
928 B
C
24 lines
928 B
C
#ifndef SYMMETRIC_H
|
|
#define SYMMETRIC_H
|
|
|
|
#include "fips202.h"
|
|
#include "params.h"
|
|
|
|
#define crh(OUT, IN, INBYTES) shake256(OUT, CRHBYTES, IN, INBYTES)
|
|
#define stream128_init(STATE, SEED, NONCE) PQCLEAN_DILITHIUM3_CLEAN_shake128_stream_init(STATE, SEED, NONCE)
|
|
#define stream128_squeezeblocks(OUT, OUTBLOCKS, STATE) shake128_squeezeblocks(OUT, OUTBLOCKS, STATE)
|
|
#define stream256_init(STATE, SEED, NONCE) PQCLEAN_DILITHIUM3_CLEAN_shake256_stream_init(STATE, SEED, NONCE)
|
|
#define stream256_squeezeblocks(OUT, OUTBLOCKS, STATE) shake256_squeezeblocks(OUT, OUTBLOCKS, STATE)
|
|
|
|
#define STREAM128_BLOCKBYTES SHAKE128_RATE
|
|
#define STREAM256_BLOCKBYTES SHAKE256_RATE
|
|
|
|
void PQCLEAN_DILITHIUM3_CLEAN_shake128_stream_init(shake128ctx *state,
|
|
const unsigned char *seed,
|
|
uint16_t nonce);
|
|
void PQCLEAN_DILITHIUM3_CLEAN_shake256_stream_init(shake256ctx *state,
|
|
const unsigned char *seed,
|
|
uint16_t nonce);
|
|
|
|
#endif
|