1
1
mirror of https://github.com/henrydcase/pqc.git synced 2024-11-27 01:41:40 +00:00
pqcrypto/crypto_kem/lightsaber/avx2/SABER_params.h

42 lines
1.1 KiB
C
Raw Normal View History

#ifndef PARAMS_H
#define PARAMS_H
2020-10-28 16:02:04 +00:00
/* Don't change anything below this line */
#define SABER_L 2
#define SABER_MU 10
#define SABER_ET 3
#define SABER_N 256
2020-10-28 16:02:04 +00:00
#define SABER_EP 10
#define SABER_P (1 << SABER_EP)
2020-10-28 16:02:04 +00:00
#define SABER_EQ 13
#define SABER_Q (1 << SABER_EQ)
2020-10-28 16:02:04 +00:00
#define SABER_SEEDBYTES 32
#define SABER_NOISESEEDBYTES 32
#define SABER_KEYBYTES 32
#define SABER_HASHBYTES 32
2020-10-28 16:02:04 +00:00
#define SABER_POLYCOINBYTES (SABER_MU * SABER_N / 8)
2020-10-28 16:02:04 +00:00
#define SABER_POLYBYTES (SABER_EQ * SABER_N / 8)
#define SABER_POLYVECBYTES (SABER_L * SABER_POLYBYTES)
2020-10-28 16:02:04 +00:00
#define SABER_POLYCOMPRESSEDBYTES (SABER_EP * SABER_N / 8)
#define SABER_POLYVECCOMPRESSEDBYTES (SABER_L * SABER_POLYCOMPRESSEDBYTES)
2020-10-28 16:02:04 +00:00
#define SABER_SCALEBYTES_KEM (SABER_ET * SABER_N / 8)
#define SABER_INDCPA_PUBLICKEYBYTES (SABER_POLYVECCOMPRESSEDBYTES + SABER_SEEDBYTES)
#define SABER_INDCPA_SECRETKEYBYTES (SABER_POLYVECBYTES)
#define SABER_PUBLICKEYBYTES (SABER_INDCPA_PUBLICKEYBYTES)
2020-10-28 16:02:04 +00:00
#define SABER_SECRETKEYBYTES (SABER_INDCPA_SECRETKEYBYTES + SABER_INDCPA_PUBLICKEYBYTES + SABER_HASHBYTES + SABER_KEYBYTES)
2020-10-28 16:02:04 +00:00
#define SABER_BYTES_CCA_DEC (SABER_POLYVECCOMPRESSEDBYTES + SABER_SCALEBYTES_KEM)
#endif