linux内核熵池,快速的给内核熵池喂随机数

Entropy(熵)

PRNG(伪随机生成器)

RNG(随机数生成器)

有两种方法可以从熵池中获取内核随机数。

一种是通过内核导出的随机数接口,另一种是通过特殊的设备文件/dev/random和/dev/urandom。

前面一种是给程序员大哥们用的,咱这样的菜鸟暂时是搞不懂了。

第二种方式,/dev/random & /dev/urandom

这两个特殊设备都是字符型设备。我们可以在用户空间通过read系统调用读这两个设备文件以此获取随机数。

这两个设备文件的区别在于:如果内核熵池的估计值为0时,也就是熵池不足的时候,/dev/random将被阻塞,而/dev/urandom不会有这个限制,它继续使用软件算法继续生成随机数,当然这时候的随机数算是伪随机数了。

有时候,我们在生成密钥的时候,需要用到随机数,如果熵池不足的时候,它会要我们敲键盘,晃鼠标什么的,是不是觉得特sha叉。可以通过下面这条命令,用urandom给内核熵池喂大量的随机数。。。

rngd -r /dev/urandom

嗯,至于这种方式的随机性强度够不够,那恐怕得算法师来解答了。。。

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24701 人正在系统学习中 相关资源:android实现手机摇晃摆动效果_android开发-Android代码类资源…

来源:Johnny Durn

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月26日
下一篇 2021年3月26日

相关推荐