random - device kernel interface
#include <dev/rndvar.h>
void
add_true_randomness(int);
void
add_timer_randomness(int);
void
add_mouse_randomness(int);
void
add_tty_randomness(int);
void
add_net_randomness(int);
void
add_disk_randomness(int);
void
add_audio_randomness(int);
void
get_random_bytes(void *buf, size_t nbytes);
u_int32_t
arc4random(void);
The add_mouse_randomness(), add_tty_randomness(),
add_net_randomness(),
add_disk_randomness() and add_audio_randomness() routines
are used to
supply data for the random data source device for further
processing.
The processing involves calculating inter-event time delta
and measuring
entropy contained in the resulting delta-T; the argument data supplied is
just mixed into the pool and does not increase the entropy
counter.
add_true_randomness() does not involve the usual timing calculations, and
causes the supplied data argument to be added to the entropy
pool, increasing
the entropy counter by 32 bits.
add_timer_randomness() will not cause the entropy counter to
rise. It is
used to change the state of the pool periodically, mostly by
means of
timing the random driver's operations.
get_random_bytes() may be used to retrieve strong random data, just as it
would by the srandom(4) device.
arc4random() will give random 32 bit numbers hashed with the
ARC4 algorithm,
which appears to be faster and less abusive to the
entropy pool.
arc4random(3), pchb(4), random(4)
None of these functions should really be called during the
autoconf(4)
process.
OpenBSD 3.6 March 26, 1996
[ Back ] |