|
Anklang-0.3.0.dev551+gad1415e2 anklang-0.3.0.dev551+gad1415e2
ASE — Anklang Sound Engine (C++)
« « « Anklang Documentation |
KeccakCryptoRng - A KeccakF1600 based cryptographic quality pseudo-random number generator. More...
#include "randomhash.hh"
Public Member Functions | |
| KeccakCryptoRng () | |
| Initialize and seed the generator from a system specific nondeterministic random source. | |
| template<class SeedSeq > | |
| KeccakCryptoRng (SeedSeq &seed_sequence) | |
| Initialize and seed the generator from seed_sequence. | |
Public Member Functions inherited from Ase::KeccakRng | |
| KeccakRng (const KeccakRng &)=default | |
| size_t | n_nums () const |
| Amount of 64 bit random numbers per generated block. | |
| size_t | bit_capacity () const |
| Amount of bits used to store hidden random number generator state. | |
| ~KeccakRng () | |
| The destructor resets the generator state to avoid leaving memory trails. | |
| 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 | forget () |
| Discard 2^256 bits of the current generator state. | |
| void | discard (unsigned long long count) |
| Discard count consecutive random values. | |
| void | xor_seed (const uint64_t *seeds, size_t n_seeds) |
| Incorporate seed_values into the current generator state. | |
| 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. | |
| template<class SeedSeq > | |
| void | seed (SeedSeq &seed_sequence) |
| Seed the generator state from a seed_sequence. | |
| void | auto_seed () |
| Seed the generator from a system specific nondeterministic random source. | |
| uint64_t | random () |
| Generate uniformly distributed 64 bit pseudo random number. | |
| result_type | operator() () |
| Generate uniformly distributed 32 bit pseudo random number. | |
| template<typename RandomAccessIterator > | |
| void | generate (RandomAccessIterator begin, RandomAccessIterator end) |
| Fill the range [begin, end) with random unsigned integer values. | |
| result_type | min () const |
| Minimum of the result type, for uint64_t that is 0. | |
| result_type | max () const |
| Maximum of the result type, for uint64_t that is 18446744073709551615. | |
Additional Inherited Members | |
Public Types inherited from Ase::KeccakRng | |
| typedef uint64_t | result_type |
| Integral type of the KeccakRng generator results. | |
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.
Definition at line 370 of file randomhash.hh.
|
explicit |
Initialize and seed the generator from a system specific nondeterministic random source.
Definition at line 373 of file randomhash.hh.
References Ase::KeccakRng::auto_seed().
|
explicit |
Initialize and seed the generator from seed_sequence.
Definition at line 376 of file randomhash.hh.
References Ase::KeccakRng::seed().