如何测试加密安全随机数生成器

时间:2013-04-11 23:47:40

标签: testing random cryptography

或多或少出于好奇,是什么定义了随机数生成器加密安全?测试非加密安全和加密安全的发生器会不同?

此处的相关文章:How to test a random generator

2 个答案:

答案 0 :(得分:4)

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

显示随机数生成器在加密方面是安全的,根本不是测试问题 - 这是证明的问题。这通常归结为表明,从输出样本中预测RNG的未来(或猜测过去)输出(在某些情况下,即使控制其部分输入),也必须打败加密哈希,密码或其他通常被视为无法解决的问题。这是一个基本上由人为驱动的过程;它不能机械地执行。

答案 1 :(得分:-1)

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