11 #define P6RANDOM_H__ 1
61 #define IF_p6IRandomInit {0xDCDA7529,0x475E,0xED58,{0xD8,0x1E,0xB9,0xAE,0x78,0x49,0x69,0x39}};
121 #define IF_p6IRandom {0x5A77D043,0x2FB1,0x4834,{0xAE,0x30,0x3F,0x2B,0x56,0x78,0x60,0x7A}}
124 #define COMP_p6Random {0xAD16A285,0x9FF3,0x4CFF,{0xA1,0x90,0xE3,0xE0,0x6B,0x9D,0x0B,0x4C}}
126 #define P6_ENTROPY_SERVICE_INTERFACE "p6r.com.entropy.service"
virtual P6R::P6ERR getQuality(P6ENTROPYFLAGS *pQuality)=0
Get the entropy quality that the PRNG's entropy source was created with.
P6UINT32 P6ENTROPYFLAGS
P6ENTROPYFLAGS.
const P6RANDFLAGS P6RAND_NOFLAGS
virtual P6R::P6ERR genRandomBytes(P6UCHAR *pBuffer, P6UINT32 cBuffer)=0
Retrieves the specified number of random bytes.
virtual P6R::P6ERR reSeed()=0
This method is used to re-seed the RNG.
The base interface all [p6]COM components must derive from and implement.
virtual P6R::P6ERR initialize(P6RANDFLAGS flags, p6IEntropySource *pSource)=0
Initialize and seed the random number generator (RNG).
Provides a cryptographically strong random number generator.
P6UINT32 P6RANDFLAGS
P6RANDFLAGS.
This is a plugin interface for the customer of the ICrypto interface to enhance the built in entropy ...
const P6RANDFLAGS P6RAND_TRACEON
Interface definition for 3rd parties to provide separate entropy implementations. ...