This repository has been archived on 2022-02-10. You can view files and clone it, but cannot push or open issues or pull requests.
fortuna/fortuna.cpp

37 lines
771 B
C++
Raw Normal View History

#ifndef FORTUNA_FORTUNA_CPP
#define FORTUNA_FORTUNA_CPP
2021-11-10 23:55:58 +01:00
#include "fortuna.h"
#include <cryptopp/cryptlib.h>
#include <cryptopp/osrng.h>
#include <cryptopp/hex.h>
#include <cryptopp/filters.h>
#include <cryptopp/serpent.h>
#include <cryptopp/ccm.h>
#include <fmt/core.h>
2021-11-10 23:55:58 +01:00
namespace fortuna {
Fortuna::Fortuna(){
try {
initialize_prng();
} catch(CryptoPP::Exception& e) {
fmt::print(stderr, "{}\n", e.what());
}
2021-11-10 23:55:58 +01:00
}
Fortuna::~Fortuna() = default;
auto Fortuna::random_data(unsigned int n_bytes) -> void {
2021-12-07 15:46:01 +01:00
incr_reseed_ctr();
std::string n{R.Gen.generate_random_data(n_bytes)};
fmt::print("got you {} proper bytes from generate_random_data -> {}\n",
n_bytes, n);
n.erase();
} //random_data
2021-11-10 23:55:58 +01:00
} // namespace fortuna
#endif//FORTUNA_FORTUNA_CPP