| RANDOM(4) | Device Drivers Manual | RANDOM(4) |
random , urandom
— random data source devices.
pseudo-device random
The random device produces uniformly
distributed random byte values of potentially high quality.
To obtain random bytes, open /dev/random
for reading and read from it.
The same random data is also available from
getentropy(2). Using the
getentropy(2) system call interface
will provide resiliency to file descriptor exhaustion, chroot, or sandboxing
which can make /dev/random unavailable.
Additionally, the arc4random(3) API
provides a fast userspace random number generator built on the
random data source and is preferred over directly
accessing the system's random device.
/dev/urandom is a compatibility nod to
Linux. On Linux, /dev/urandom will produce lower
quality output if the entropy pool drains, while
/dev/random will prefer to block and wait for
additional entropy to be collected. With Fortuna, this choice and
distinction is not necessary, and the two devices behave identically. You
may use either.
The random device implements the
Fortuna pseudo random number generator algorithm and
maintains its entropy pool. The kernel automatically seeds the algorithm
with additional entropy during normal execution.
A random device appeared in the Linux
operating system.
| September 6, 2001 | Darwin |