|
Crypto++
8.9
Free C++ class library of cryptographic schemes
|
Automatically Seeded Randomness Pool. More...
Inheritance diagram for AutoSeededRandomPool:Public Member Functions | |
| AutoSeededRandomPool (bool blocking=false, unsigned int seedSize=32) | |
| Construct an AutoSeededRandomPool. More... | |
| void | Reseed (bool blocking=false, unsigned int seedSize=32) |
| Reseed an AutoSeededRandomPool. More... | |
Public Member Functions inherited from RandomPool | |
| RandomPool () | |
| Construct a RandomPool. | |
| bool | CanIncorporateEntropy () const |
| Determines if a generator can accept additional entropy. More... | |
| void | IncorporateEntropy (const byte *input, size_t length) |
| Update RNG state with additional unpredictable values. More... | |
| void | GenerateIntoBufferedTransformation (BufferedTransformation &target, const std::string &channel, lword size) |
| Generate random bytes into a BufferedTransformation. More... | |
Public Member Functions inherited from RandomNumberGenerator | |
| virtual byte | GenerateByte () |
| Generate new random byte and return it. More... | |
| virtual unsigned int | GenerateBit () |
| Generate new random bit and return it. More... | |
| virtual word32 | GenerateWord32 (word32 min=0, word32 max=0xffffffffUL) |
| Generate a random 32 bit word in the range min to max, inclusive. More... | |
| virtual void | GenerateBlock (byte *output, size_t size) |
| Generate random array of bytes. More... | |
| virtual void | DiscardBytes (size_t n) |
| Generate and discard n bytes. More... | |
| template<class IT > | |
| void | Shuffle (IT begin, IT end) |
| Randomly shuffle the specified array. More... | |
Public Member Functions inherited from Algorithm | |
| Algorithm (bool checkSelfTestStatus=true) | |
| Interface for all crypto algorithms. More... | |
| virtual std::string | AlgorithmName () const |
| Provides the name of this algorithm. More... | |
| virtual std::string | AlgorithmProvider () const |
| Retrieve the provider of this algorithm. More... | |
Public Member Functions inherited from Clonable | |
| virtual Clonable * | Clone () const |
| Copies this object. More... | |
Static Public Member Functions | |
| static const char * | StaticAlgorithmName () |
Automatically Seeded Randomness Pool.
This class seeds itself using an operating system provided RNG. AutoSeededRandomPool was suggested by Leonard Janke.
You should reseed the generator after a fork() to avoid multiple generators with the same internal state.
|
inlineexplicit |
Construct an AutoSeededRandomPool.
| blocking | controls seeding with BlockingRng or NonblockingRng |
| seedSize | the size of the seed, in bytes |
Use blocking to choose seeding with BlockingRng or NonblockingRng. The parameter is ignored if only one of these is available.
| void AutoSeededRandomPool::Reseed | ( | bool | blocking = false, |
| unsigned int | seedSize = 32 |
||
| ) |
Reseed an AutoSeededRandomPool.
| blocking | controls seeding with BlockingRng or NonblockingRng |
| seedSize | the size of the seed, in bytes |