Re: /dev/random vs. /dev/urandom

From: Paulo Marques
Date: Fri Jan 07 2005 - 14:31:44 EST


Ron Peterson wrote:
When I compile and run the code below, the string of octal characters
generated by reading /dev/random contains long strings of zeroes. I was
under the impression that /dev/random is "more random" than
/dev/urandom, and will block when it runs out of entropy until it
gathers more. It's only when RAND_LEN is on the largish side that these
strings of zeroes appear.

[...]
read( fd, dat, RAND_LEN );
for( i = 0; i < RAND_LEN; i++ ) {
dat[i] = (dat[i] & 0x07) + '0';

This is wrong. You must check the return value of read to know how many bytes have you actually gathered, instead of assuming RAND_LEN...

--
Paulo Marques - www.grupopie.com

"A journey of a thousand miles begins with a single step."
Lao-tzu, The Way of Lao-tzu

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/