I have noticed that some linux systems (CentOS 5.1, FC7 and FC8) that
RAND_load_file("/dev/random", 1024) can take a long time (20 minutes). If I
do an strace on the process, I see that it is doing reads on /dev/random and
getting back 8 or 9 bytes. I assume that what is happening here is that
RAND_load_file() is reading the available pool of entrogy, finds it is
not 1K then RAND_load_file() blocks on subsequent reads from /dev/random
returning 8 bytes (/proc/sys/kernel/random/read_wakeup_threadhold is 64 or 8
bytes) of entropy as it becomes available. When I look at
/proc/sys/kernel/random/entropy_avail, the number is typically 3590 or so
even on systems that have been running for awhile. The poolsize as reported
by /proc/sys/kernel/random/poolsize is reported as 4096.
Is this what I should expect from RAND_load_file() and /dev/random?
What is the acceptable lower limit for the number of bytes for
RAND_load_file()?
Bruce