2021-10-19 15:05:18 +02:00
|
|
|
#ifndef FORTUNA_GENERATOR_H
|
|
|
|
#define FORTUNA_GENERATOR_H
|
|
|
|
|
2021-10-24 22:04:14 +02:00
|
|
|
#include <string>
|
|
|
|
#include <cstring>
|
2021-10-26 15:59:22 +02:00
|
|
|
#include <tuple>
|
2021-10-19 15:05:18 +02:00
|
|
|
|
|
|
|
struct G_state;
|
|
|
|
|
|
|
|
/* initializes generator */
|
|
|
|
G_state *initialize_generator();
|
|
|
|
|
2021-10-26 15:59:22 +02:00
|
|
|
std::string do_crypto(long k, unsigned __int128 ctr);
|
2021-10-24 22:11:29 +02:00
|
|
|
|
2021-10-26 15:59:22 +02:00
|
|
|
std::tuple<std::string, G_state> generate_blocks(G_state G, int k_blocks);
|
2021-10-19 15:05:18 +02:00
|
|
|
|
|
|
|
/* returns output of 0 <= n <= 2^20 bytes */
|
2021-10-26 15:59:22 +02:00
|
|
|
std::tuple<std::string, G_state> generate_random_data(G_state G, int n);
|
2021-10-19 15:05:18 +02:00
|
|
|
|
|
|
|
#endif//FORTUNA_GENERATOR_H
|