linux内核熵池,linux – 内核熵池如何工作?

你所说的是现在,理论上可以将熵投入/ dev / random,但是您需要控制很多内核“噪声”来源才是重要的。您可以查看

random.c的源码,看看/ dev / random从哪里拾取噪声。基本上,如果你控制大量的噪音源,那么你可以猜测其他人对熵池有什么贡献。

因为/ dev / urandom是从/ dev / random播种的Hash chain,所以你可以预测下一个数字,如果你知道种子。如果您对熵池有足够的控制权,那么从/ dev / urandom的输出可能可以猜到这个种子,这样可以预测/ dev / urandom中的所有下一个数字,但是只有保留/ dev / random耗尽,否则/ dev / urandom将被重新设置。

话虽如此,我还没有看到任何人真的做到这一点,甚至没有在受控的环境中。当然这不是一个保证,但我不用担心。

所以我宁愿使用/ dev / urandom,并保证我的程序不会阻止等待熵,而不是使用/ dev / random,并要求用户做一些愚蠢的事情,如移动鼠标或键盘敲击。

我想你应该从LWN读取On entropy and randomness,希望它会平静你的后顾之忧:-)。

如果你还在担心,那么自己就要HRNG了。

编辑

这是一个关于熵的小笔记:

我认为熵的概念一般很难掌握,可以看看Wikipedia.但是基本上,在这种情况下,你可以将熵视为随机性。

那么我怎么看,就是你有一大块彩色的球,这个袋子里的熵越高,预测从包里抽出的下一个颜色就越难。

在这种情况下,您的熵池只是一堆随机字节,其中不能从之前的或其他任何字节派生。这意味着你有很高的熵。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值