Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

NonblockingRng Class Reference

#include <osrng.h>

Inheritance diagram for NonblockingRng:

RandomNumberGenerator Algorithm Clonable List of all members.

Detailed Description

encapsulate CryptoAPI's CryptGenRandom or /dev/urandom

Definition at line 44 of file osrng.h.

Public Member Functions

byte GenerateByte ()
 generate new random byte and return it
void GenerateBlock (byte *output, unsigned int size)
 generate random array of bytes
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 DiscardBytes (unsigned int 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 ClonableClone () const
 this is not implemented by most classes yet


Member Function Documentation

void NonblockingRng::GenerateBlock byte *  output,
unsigned int  size
[virtual]
 

generate random array of bytes

Default implementation is to call GenerateByte() size times.

Reimplemented from RandomNumberGenerator.

Definition at line 84 of file osrng.cpp.

Referenced by GenerateByte().

unsigned int RandomNumberGenerator::GenerateBit  )  [virtual, inherited]
 

generate new random bit and return it

Default implementation is to call GenerateByte() and return its parity.

Reimplemented in PublicBlumBlumShub.

Definition at line 111 of file cryptlib.cpp.

References RandomNumberGenerator::GenerateByte().

void RandomNumberGenerator::DiscardBytes unsigned int  n  )  [virtual, inherited]
 

generate and discard n bytes

Default implementation is to call GenerateByte() n times.

Reimplemented in ARC4_Base.

Definition at line 142 of file cryptlib.cpp.

References RandomNumberGenerator::GenerateByte().


The documentation for this class was generated from the following files:
Generated on Wed Jul 21 19:15:59 2004 for Crypto++ by doxygen 1.3.7-20040704