1

或多或少出于好奇,什么将随机数生成器定义为加密安全?对非密码安全和密码安全生成器的测试会有所不同吗?

此处的相关帖子:如何测试随机生成器

4

2 回答 2

4

测试通用随机数生成器的质量通常涉及运行各种统计测试,这些测试表明其结果在某些方面没有偏差。NIST 有一组用于此目的的测试,详见:http ://csrc.nist.gov/groups/ST/toolkit/rng/index.html

证明随机数生成器在密码学上是安全的,根本不是测试的问题,而是证明的问题。这通常归结为表明,要从 RNG 的输出样本中预测未来(或猜测过去)的输出(在某些情况下,甚至在控制部分输入时),必须击败密码散列、密码或其他通常被认为难以解决的问题。这是一个基本上由人为驱动的过程;它不能机械地执行。

于 2013-04-12T00:10:20.787 回答
0

1)至于“什么构成'加密安全伪随机数生成器'(CSPRNG)?”,维基百科有一个很好的标准列表:

http://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator

2)至于“如何测试”,您可以考虑卡方:

http://en.wikibooks.org/wiki/Algorithm_Implementation/Pseudorandom_Numbers/Chi-Square_Test

于 2013-04-11T23:58:44.457 回答