2019-09-17 13:02:01 +01:00
|
|
|
#ifndef AES256CTR_H
|
|
|
|
#define AES256CTR_H
|
|
|
|
|
2019-10-03 14:47:08 +01:00
|
|
|
#include "aes.h"
|
|
|
|
|
2019-09-17 13:02:01 +01:00
|
|
|
#include <stddef.h>
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
typedef struct {
|
2019-10-03 14:47:08 +01:00
|
|
|
aes256ctx sk_exp;
|
|
|
|
uint8_t iv[12];
|
|
|
|
uint32_t ctr;
|
2019-09-17 13:02:01 +01:00
|
|
|
} aes256xof_ctx;
|
|
|
|
|
|
|
|
void PQCLEAN_KYBER76890S_CLEAN_aes256_prf(uint8_t *output, size_t outlen, const uint8_t *key, uint8_t nonce);
|
|
|
|
void PQCLEAN_KYBER76890S_CLEAN_aes256xof_absorb(aes256xof_ctx *s, const uint8_t *key, uint8_t x, uint8_t y);
|
|
|
|
void PQCLEAN_KYBER76890S_CLEAN_aes256xof_squeezeblocks(uint8_t *out, size_t nblocks, aes256xof_ctx *s);
|
2020-02-11 10:15:14 +00:00
|
|
|
void PQCLEAN_KYBER76890S_CLEAN_aes256xof_ctx_release(aes256xof_ctx *s);
|
2019-09-17 13:02:01 +01:00
|
|
|
|
|
|
|
#endif
|