Problem with /dev/random?

Vladimir G. Ivanovic vladimir at acm.org
Thu May 13 18:54:48 UTC 2004


I can't generate any GnuPG keys. I *always* get:

   Not enough random bytes available. Please do some other work to give
   the OS a chance to collect more entropy! (Need 300 more bytes)

Moving the mouse around, doing a find on files in /etc, or whatever
doesn't help. 

Using strace to see what's happening, I see:

   open("/dev/random", O_RDONLY|O_LARGEFILE) = 5
   fstat64(5, {st_mode=S_IFCHR|0644, st_rdev=makedev(1, 8), ...}) = 0
   select(6, [5], NULL, NULL, {3, 0})      = 0 (Timeout)
   write(3, "\nNot enough random bytes availab"..., 71) = 71
   write(3, "the OS a chance to collect more "..., 63) = 63

A message on the GnuPG-users list
(http://lists.gnupg.org/pipermail/gnupg-users/2001-July/009080.html)
in response to a similar problem suggests 

   What I would do is stop the keygen, type:
   cat /dev/random
   and watch what happens.  You should get some garbage on the screen that stops
   after a second.  Then, you should get a new character every few seconds.  If
   the hard drive is working, then the number of new characters that appear will
   be higher.

   If you don't see this, then there is a problem with your /dev/random device.
   If you do see this, then there may be an issue with gpg on your
   computer.

Well, I did as suggested. Nothing. 'cat' hangs:

   open("/dev/random", O_RDONLY|O_LARGEFILE) = 3
   fstat64(3, {st_mode=S_IFCHR|0644, st_rdev=makedev(1, 8), ...}) = 0
   read(3, 

and never writes anything to the screen.

How do I get GnuPG to generate keys? Do I have a problem with
/dev/random? (/dev/urandom seems to work. It spits out garbage
continuously when cat'ed.)

Thanks.

--- Vladimir

------------------------------------------------------------------------
Vladimir G. Ivanovic                        http://leonora.org/~vladimir
2770 Cowper St.                                         vladimir at acm.org
Palo Alto, CA 94306-2447                                 +1 650 678 8014
------------------------------------------------------------------------





More information about the users mailing list