2012-11-27 54 views
4

我在读关于随机数及其代数。自从我开始编程以来,我对随机性感兴趣。我读过Linux内核也使用随机数生成架构。/dev /随机许可被拒绝

The structure consists of a two-level cascaded sequence of pools coupled with 
CSPRNGs. 
Each pool is a large group of bits which represents the current state of the 
random number generator. The CSPRNGs are currently based on SHA-1, but the 
kernel developers are considering a switch to SHA-3. 

The kernel RNG produces two user-space output streams. One of these goes to 
/dev/urandom and also to the kernel itself; the latter is useful because there 
are uses for random numbers within the kernel. The other output stream goes to 
/dev/random. The difference between the two is that /dev/random tries to estimate 
how much entropy is coming into the system, and will throttle its output if there 
is insufficient entropy. By contrast, the /dev/urandom stream does not throttle 
output, and if users consume all of the available entropy, the interface degrades 
to a pure CSPRNG. 

因此,充满激动,我尝试进入并检查/ dev/random和/ dev/urandom中有什么。但它说,

[email protected]:/home/sunny# /dev/random 
bash: /dev/random: Permission denied 

[email protected]:/home/sunny# /dev/urandom 
bash: /dev/urandom: Permission denied 

但是,当我检查“ls”命令时,我可以看到/ dev中的“随机”。 我想详细了解这一点。

回答

8

/dev/random不是可执行文件。尝试cat /dev/random。或者如果你不喜欢测试你的反应,dd if=/dev/random bs=128 count=1将显示有限的随机垃圾。

+4

尽管准备好Ctrl-c很快...... – Xymostech

+0

@Xymostech是的,但是如果你能让你的终端回来,你肯定会看到“那里有什么”。 – ldav1s

+2

是的,@Xymostech我准备好了。谢谢。我是否强制它生成随机数字?还是显示已经存在的随机事物? – Sunny