Skip to contentSkip to conversation

/dev/random broken?

DISCUSSION Luca T. 4 participants 4 messages Jun 28, 2003

lore
Share & tools
lore

Luca T.

author
#0 lore raw

Hello,
i am not sure if this is a kernel/module problem but so it seems to me.
My computer is an AMD 2000+ with an ABIT motherboard, my kernel version is 2.4.21-0.13mdk (but i tried it with 2.4.21-0.18mdk too and it doesn't work either).

If i give this command:
dd if=/dev/zero of=./xxx bs=1024 count=100
it will work perfectly. But if i try to do the same reading from /dev/random with this command:
dd if=/dev/random of=./xxx bs=1024 count=100
it will just sit there and stare at me until i move the mouse... and then the program will exit without any error message (i checked in /var/log/messages too and there is no message there either about this).

Is this a bug? If yes... do you have any idea that would help me fix it?

Thank you,
Luca

#1 lore raw
Quoted 1 line

Is this a bug?

No, it is not. If there's not enough random data available, reading from /dev/random will block. Moving the mouse around will generate some interrupts (or other stuff) that contribute to the entropy...

Rudo.

#2 lore raw
In reply to Luca T.
Quoted 14 lines · Luca T.

i am not sure if this is a kernel/module problem but so it seems to me. My computer is an AMD 2000+ with an ABIT motherboard, my kernel version is 2.4.21-0.13mdk (but i tried it with 2.4.21-0.18mdk too and it doesn't work either).

If i give this command:
dd if=/dev/zero of=./xxx bs=1024 count=100
it will work perfectly. But if i try to do the same reading from /dev/random with this command:
dd if=/dev/random of=./xxx bs=1024 count=100
it will just sit there and stare at me until i move the mouse... and then the program will exit without any error message (i checked in /var/log/messages too and there is no message there either about this).

Quoted 1 line

Is this a bug? If yes... do you have any idea that would help me fix it?

It's not a bug. The system needs to collect some randomness before you can get any data. The mouse is considered random, as are various other devices. If you need lots of random data, and are satisfied with pseudo-random numbers, you can use /dev/urandom instead.

Signature · 2 lines
Måns Rullgård
[email protected]
#3 lore raw
In reply to Luca T.
Quoted 3 lines · Luca T.

dd if=/dev/random of=./xxx bs=1024 count=100
it will just sit there and stare at me until i move the mouse... and Is this a bug? If yes... do you have any idea that would help me fix it?

no, use /dev/urandom. man urandom. read drivers/char/random.c.

Signature · 2 lines
Tom Vier <[email protected]>
DSA Key ID 0xE6CB97DA