Class Ase::KeccakCryptoRng
ClassList > Ase > KeccakCryptoRng
#include <randomhash.hh>
Inherits the following classes: Ase::KeccakRng
Public Types inherited from Ase::KeccakRng
See Ase::KeccakRng
Type | Name |
---|---|
typedef uint64_t | result_type Integral type of the KeccakRng generator results. |
Public Functions
Type | Name |
---|---|
KeccakCryptoRng () Initialize and seed the generator from a system specific nondeterministic random source. |
|
KeccakCryptoRng (SeedSeq & seed_sequence) Initialize and seed the generator from seed_sequence . |
Public Functions inherited from Ase::KeccakRng
See Ase::KeccakRng
Type | Name |
---|---|
KeccakRng (const KeccakRng &) = default |
|
KeccakRng (uint16_t hidden_state_capacity, uint16_t n_rounds) Create an unseeded Keccak PRNG with specific capacity and number of rounds, for experts only. |
|
void | auto_seed () Seed the generator from a system specific nondeterministic random source. |
size_t | bit_capacity () const Amount of bits used to store hidden random number generator state. |
void | discard (unsigned long long count) |
void | forget () |
void | generate (RandomAccessIterator begin, RandomAccessIterator end) Fill the range [begin, end) with random unsigned integer values. |
result_type | max () const Maximum of the result type, for uint64_t that is 18446744073709551615. |
result_type | min () const Minimum of the result type, for uint64_t that is 0. |
size_t | n_nums () const Amount of 64 bit random numbers per generated block. |
result_type | operator() () Generate uniformly distributed 32 bit pseudo random number. |
uint64_t | random () |
void | seed (uint64_t seed_value=1) Reinitialize the generator state using a 64 bit seed_value . |
void | seed (const uint64_t * seeds, size_t n_seeds) Reinitialize the generator state using a nuber of 64 bit seeds . |
void | seed (SeedSeq & seed_sequence) Seed the generator state from a seed_sequence . |
void | xor_seed (const uint64_t * seeds, size_t n_seeds) |
~KeccakRng () The destructor resets the generator state to avoid leaving memory trails. |
Detailed Description
KeccakCryptoRng - A KeccakF1600 based cryptographic quality pseudo-random number generator. The quality of the generated pseudo random numbers is comaparable to the hash output of SHAKE128.
Public Functions Documentation
function KeccakCryptoRng [1/2]
inline explicit Ase::KeccakCryptoRng::KeccakCryptoRng ()
function KeccakCryptoRng [2/2]
template<class SeedSeq>
inline explicit Ase::KeccakCryptoRng::KeccakCryptoRng (
SeedSeq & seed_sequence
)
The documentation for this class was generated from the following file /__w/anklang/anklang/ase/randomhash.hh