NAME
ipsec_ranbits − generate random bits in ASCII form
SYNOPSIS
ipsec ranbits [−−quick] [−−continuous] [−−bytes] nbits |
DESCRIPTION
Ranbits obtains nbits (rounded up to the nearest byte) high−quality random bits from random(4), and emits them on standard output as an ASCII string. The default output format is datatot(3) h format: lowercase hexadecimal with a 0x prefix and an underscore every 32 bits.
The −−quick option produces quick−and−dirty random bits: instead of using the high−quality random bits from /dev/random, which may take some time to supply the necessary bits if nbits is large, ranbits uses /dev/urandom, which yields prompt results but lower−quality randomness.
The −−continuous option uses datatot(3) x output format, like h but without the underscores.
The −−bytes option causes nbits to be interpreted as a byte count rather than a bit count.
FILES
/dev/random, /dev/urandom
SEE ALSO
HISTORY
Written for the Linux FreeS/WAN project <http://www.freeswan.org> by Henry Spencer.
BUGS
There is an internal limit on nbits, currently 20000.
Without −−quick, ranbits’s run time is difficult to predict. A request for a large number of bits, at a time when the system’s entropy pool is low on randomness, may take quite a while to satisfy.
Though not a bug of ranbits, the direct use of /dev/hw_random, the Linux hardware random number generator is not supported because it can produce very non−random data. To properly use /dev/hw_random, the rngd daemon should be used to read from /dev/hw_random and write to /dev/random, while performing a FIPS test on the hardware random read. No changes to Openswan are required for this support − just a running rngd.