#include <randpool.h>
Inheritance diagram for RandomPool:
This class can be used to generate cryptographic quality pseudorandom bytes after seeding the pool with IncorporateEntropy()
Definition at line 12 of file randpool.h.
Public Member Functions | |
RandomPool () | |
bool | CanIncorporateEntropy () const |
returns true if IncorporateEntropy is implemented | |
void | IncorporateEntropy (const byte *input, size_t length) |
update RNG state with additional unpredictable values | |
void | GenerateIntoBufferedTransformation (BufferedTransformation &target, const std::string &channel, lword size) |
generate random bytes as input to a BufferedTransformation | |
void | Put (const byte *input, size_t length) |
virtual byte | GenerateByte () |
generate new random byte and return it | |
virtual unsigned int | GenerateBit () |
generate new random bit and return it | |
virtual word32 | GenerateWord32 (word32 a=0, word32 b=0xffffffffL) |
generate a random 32 bit word in the range min to max, inclusive | |
virtual void | GenerateBlock (byte *output, size_t size) |
generate random array of bytes | |
virtual void | DiscardBytes (size_t n) |
generate and discard n bytes | |
template<class IT> | |
void | Shuffle (IT begin, IT end) |
randomly shuffle the specified array, resulting permutation is uniformly distributed | |
virtual std::string | AlgorithmName () const |
returns name of this algorithm, not universally implemented yet | |
virtual Clonable * | Clone () const |
this is not implemented by most classes yet |
unsigned int RandomNumberGenerator::GenerateBit | ( | ) | [virtual, inherited] |
generate new random bit and return it
Default implementation is to call GenerateByte() and return its lowest bit.
Reimplemented in PublicBlumBlumShub.
Definition at line 129 of file cryptlib.cpp.
References RandomNumberGenerator::GenerateByte().
Referenced by XTR_FindPrimesAndGenerator().