8#ifndef BOTAN_CHACHA_RNG_H_
9#define BOTAN_CHACHA_RNG_H_
12#include <botan/stateful_rng.h>
13#include <botan/stream_cipher.h>
104 std::string
name()
const override {
return "ChaCha_RNG"; }
106 size_t security_level()
const override;
111 void update(std::span<const uint8_t> input)
override;
113 void generate_output(std::span<uint8_t> output, std::span<const uint8_t> input)
override;
115 void clear_state()
override;
117 std::unique_ptr<MessageAuthenticationCode> m_hmac;
118 std::unique_ptr<StreamCipher> m_chacha;
#define BOTAN_PUBLIC_API(maj, min)
size_t max_number_of_bytes_per_request() const override
std::string name() const override
static constexpr size_t DefaultReseedInterval
size_t reseed_interval() const
Stateful_RNG(RandomNumberGenerator &rng, Entropy_Sources &entropy_sources, size_t reseed_interval)