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 |