2020-07-31 07:17:42 +01:00
|
|
|
#ifndef PQCLEAN_KYBER768_AVX2_INDCPA_H
|
|
|
|
#define PQCLEAN_KYBER768_AVX2_INDCPA_H
|
|
|
|
#include "params.h"
|
|
|
|
#include "polyvec.h"
|
2019-09-10 10:45:01 +01:00
|
|
|
#include <stdint.h>
|
|
|
|
|
2020-07-31 07:17:42 +01:00
|
|
|
void PQCLEAN_KYBER768_AVX2_gen_matrix(polyvec *a, const uint8_t seed[KYBER_SYMBYTES], int transposed);
|
2020-10-27 00:05:07 +00:00
|
|
|
void PQCLEAN_KYBER768_AVX2_indcpa_keypair(uint8_t pk[KYBER_INDCPA_PUBLICKEYBYTES],
|
|
|
|
uint8_t sk[KYBER_INDCPA_SECRETKEYBYTES]);
|
2019-09-10 10:45:01 +01:00
|
|
|
|
2020-10-27 00:05:07 +00:00
|
|
|
void PQCLEAN_KYBER768_AVX2_indcpa_enc(uint8_t c[KYBER_INDCPA_BYTES],
|
|
|
|
const uint8_t m[KYBER_INDCPA_MSGBYTES],
|
|
|
|
const uint8_t pk[KYBER_INDCPA_PUBLICKEYBYTES],
|
|
|
|
const uint8_t coins[KYBER_SYMBYTES]);
|
2020-07-31 07:17:42 +01:00
|
|
|
|
2020-10-27 00:05:07 +00:00
|
|
|
void PQCLEAN_KYBER768_AVX2_indcpa_dec(uint8_t m[KYBER_INDCPA_MSGBYTES],
|
|
|
|
const uint8_t c[KYBER_INDCPA_BYTES],
|
|
|
|
const uint8_t sk[KYBER_INDCPA_SECRETKEYBYTES]);
|
2019-09-10 10:45:01 +01:00
|
|
|
|
|
|
|
#endif
|