2019-12-06 15:16:41 +00:00
|
|
|
#ifndef PQCLEAN_DILITHIUM3_AVX2_PARAMS_H
|
|
|
|
#define PQCLEAN_DILITHIUM3_AVX2_PARAMS_H
|
|
|
|
|
|
|
|
|
2021-02-01 05:32:40 +00:00
|
|
|
|
2019-12-06 15:16:41 +00:00
|
|
|
#define SEEDBYTES 32
|
2021-02-09 15:13:25 +00:00
|
|
|
#define CRHBYTES 64
|
2019-12-06 15:16:41 +00:00
|
|
|
#define N 256
|
|
|
|
#define Q 8380417
|
2021-02-01 05:32:40 +00:00
|
|
|
#define D 13
|
|
|
|
#define ROOT_OF_UNITY 1753
|
|
|
|
|
|
|
|
#define K 6
|
|
|
|
#define L 5
|
|
|
|
#define ETA 4
|
|
|
|
#define TAU 49
|
|
|
|
#define BETA 196
|
|
|
|
#define GAMMA1 (1 << 19)
|
|
|
|
#define GAMMA2 ((Q-1)/32)
|
|
|
|
#define OMEGA 55
|
|
|
|
#define PQCLEAN_DILITHIUM3_AVX2_CRYPTO_ALGNAME "Dilithium3"
|
|
|
|
|
|
|
|
|
|
|
|
#define POLYT1_PACKEDBYTES 320
|
|
|
|
#define POLYT0_PACKEDBYTES 416
|
|
|
|
#define POLYVECH_PACKEDBYTES (OMEGA + K)
|
|
|
|
|
|
|
|
#define POLYZ_PACKEDBYTES 640
|
|
|
|
|
|
|
|
#define POLYW1_PACKEDBYTES 128
|
|
|
|
|
|
|
|
#define POLYETA_PACKEDBYTES 128
|
|
|
|
|
|
|
|
#define PQCLEAN_DILITHIUM3_AVX2_CRYPTO_PUBLICKEYBYTES (SEEDBYTES + K*POLYT1_PACKEDBYTES)
|
2021-02-09 15:13:25 +00:00
|
|
|
#define PQCLEAN_DILITHIUM3_AVX2_CRYPTO_SECRETKEYBYTES (3*SEEDBYTES \
|
2021-02-01 05:32:40 +00:00
|
|
|
+ L*POLYETA_PACKEDBYTES \
|
|
|
|
+ K*POLYETA_PACKEDBYTES \
|
|
|
|
+ K*POLYT0_PACKEDBYTES)
|
|
|
|
#define PQCLEAN_DILITHIUM3_AVX2_CRYPTO_BYTES (SEEDBYTES + L*POLYZ_PACKEDBYTES + POLYVECH_PACKEDBYTES)
|
2019-12-06 15:16:41 +00:00
|
|
|
|
|
|
|
#endif
|