0

我试图捕捉 /dev/random。但是只是块,没有给出一个字节的输出。(同时 /dev/urandom 的猫工作正常)。

root@test 07:22:08 ~ >cat /proc/sys/kernel/random/entropy_avail
36
root@test 07:22:10 ~ >cat /dev/random

这可能是什么原因?如何解决?

我正在使用带有 2.6 内核的嵌入式系统。

4

2 回答 2

1

来自维基百科

当熵池为空时,来自 /dev/random 的读取将被阻塞,直到收集到额外的环境噪声。

熵池由键盘等环境噪声源填充。因此,如果您没有这个源(例如在您的嵌入式系统或无头服务器中),那么熵池是空的,并且(如上所述)/dev/random将阻塞。

于 2013-10-29T14:31:04.430 回答
0

使用/dev/urandom,安全

参考:http ://www.2uo.de/myths-about-urandom/

如果在早期启动有疑问,您是否收集了足够的熵。改为使用getrandom()。[1]

[1] git 内核提交

于 2015-01-14T15:13:36.747 回答