Fabcoin Core
0.16.2
P2P Digital Currency
|
Class file for Randomness Pool. More...
#include "cryptlib.h"
#include "filters.h"
#include "secblock.h"
#include "smartptr.h"
#include "aes.h"
Go to the source code of this file.
Classes | |
class | RandomPool |
Randomness Pool based on AES-256. More... | |
Class file for Randomness Pool.
RandomPool can be used to generate cryptographic quality pseudorandom bytes after seeding the pool with IncorporateEntropy(). Internally, the generator uses AES-256 to produce the stream. Entropy is stirred in using SHA-256.
RandomPool used to follow the design of randpool in PGP 2.6.x. At version 5.5 RandomPool was redesigned to reduce the risk of reusing random numbers after state rollback (which may occur when running in a virtual machine like VMware or a hosted environment).
If you need the pre-Crypto++ 5.5 generator then you can find it with:
$ git clone https://github.com/weidai11/cryptopp cryptopp-ancient $ cryptopp-ancient
# Checkout the RandomPool change $ git checkout f41245df6fb9b85574260eca9cd32777e8ab5136
# Go back one more git checkout HEAD~1
$ grep 'MDC<SHA>' *.h *.cpp randpool.cpp:typedef MDC<SHA> RandomPoolCipher;
Definition in file randpool.h.