2018-08-26 05:00:00 +02:00
|
|
|
#ifndef CHACHA_H
|
|
|
|
#define CHACHA_H
|
|
|
|
|
2018-10-04 20:25:16 +02:00
|
|
|
#include "util.h"
|
2018-08-26 05:00:00 +02:00
|
|
|
|
2018-09-11 16:22:28 +02:00
|
|
|
#define CHACHA_KEY_SIZE 32
|
|
|
|
#define CHACHA_IV_SIZE 8
|
|
|
|
|
2018-10-04 10:13:28 +02:00
|
|
|
typedef struct {
|
|
|
|
u32 input[16];
|
2018-08-26 05:00:00 +02:00
|
|
|
} chacha_ctx;
|
|
|
|
|
2018-10-04 10:13:28 +02:00
|
|
|
void chacha_keysetup(chacha_ctx *x, const u8 *k);
|
|
|
|
void chacha_ivsetup(chacha_ctx *x, const u8 *iv);
|
|
|
|
void chacha_keystream_bytes(chacha_ctx *x, u8 *c, u32 bytes);
|
2018-08-26 05:00:00 +02:00
|
|
|
|
|
|
|
#endif
|