NSPR Reference
Random Number Generator (Chapter 32)
This chapter describes the NSPR random number generator.
Random Number Generator Function
PR_GetRandomNoise
Produces a random value for use as a seed value for another random number generator.
Syntax
#include <prenv.h> NSPR_API(PRSize) PR_GetRandomNoise( void *buf, PRSize size );
Parameters
The function has the following parameters:
buf
- A pointer to a caller-supplied buffer to contain the generated
random number.
buf
must be at least as large as specified insize
. size
- The size, in bytes, of the requested random number.
Returns
PRSize
value equal to the size of the random number
actually generated, or zero. The generated size may be less than the size
requested. A return value of zero means that
PR_GetRandomNoise
is not implemented on this platform, or
there is no available noise to be returned at the time of the call.
Description
PR_GetRandomNoise
provides a random value, depending on
platform. The length of the random value is dependent on the platform and
its ability to provide a random value at that moment.
PR_GetRandomNoise
is intended to provide a "seed" value
for a another random number generator that may be suitable for
cryptographic operations. This implies that the random value provided may
not be, by itself, cryptographically secure. The value generated by
PR_GetRandomNoise
is at best, extremely difficult to predict
and is as nondeterministic as the underlying platfrom permits.