首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SHA3作为熵池

使用SHA3作为熵池
EN

Cryptography用户
提问于 2013-09-16 16:04:41
回答 2查看 1.7K关注 0票数 6

是否做过分析SHA3海绵结构作为熵池(例如/dev/random)的工作?

我听说过的所有用例都是输入操作序列的对比,然后是输出操作序列,其中作为熵池,任何混合的输入和输出操作序列都需要维护安全性。

EN

回答 2

Cryptography用户

发布于 2013-10-23 15:59:32

作为Paŭlo Ebermann在他的评论中已经提到,SHA3确实可以用作伪随机数生成器.

本文"基于海绵的伪随机数发生器“正是讨论了这一点,并描述了一种用(Keccak)海绵函数构造可重种PRNG的干净有效的方法。您将得到一个基于加密哈希函数…的PRNG有着通常的安全隐患。

例如:文件明确指出,您应该定期以足够的熵重新播种,以防止攻击者在PRNG的周期上倒转(这可能是您已经听说过的)。

关于这种基于海绵的PRNG结构的安全性证明,本文指出该PRNG具有不可微性(实际上声称它对理想的PRNG漠不关心)、对状态恢复的抵抗(这是它的不可微性的结果),并通过了NIST提出的统计检验。这是基于海绵的PRNG结构继承了海绵结构本身的可证明安全特性的结果。

我想建议您你自己查查这张纸掌握所有的细节,比如学习如何和何时重新播种PRNG,以防止一些潜在的攻击。它以详尽的细节回答了你的问题。

票数 6
EN

Cryptography用户

发布于 2013-10-24 02:22:44

SHA3将有一个与其容量一样大的熵池。如果你试图获得计算安全,这是很好的--这就是Keccak PRNG论文向你展示的方法。但是,如果您试图收集一个熵池并按要求运出它(如/dev/随机),则有两个问题:

  1. 容量限制了池所保留的熵的数量。
  2. 还不清楚您是否可以使用SHA3,例如,放入512位熵,然后取出512位,并期望从中获得全部熵。

现在,我认为尝试在/dev/随机池中保存熵的概念不是很有用,所以我个人认为获得一个256位安全级别的PRNG (需要512位容量)是很好的。

票数 1
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/10385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档