测量熵质量的工具?

测量熵质量的工具?

有没有适用于 Linux 系统的工具可以测量系统上熵的“质量”?

我知道如何计算熵:

cat /proc/sys/kernel/random/entropy_avail

我知道有些系统具有“良好”的熵源(硬件熵密钥),而有些系统则没有(虚拟机)。

但是有没有一种工具可以提供系统熵“质量”的度量呢?

答案1

http://www.fourmilab.ch/random/对我有用。

sudo apt-get install ent
head -c 1M /dev/urandom > /tmp/out
ent /tmp/out

答案2

“ent”是一个优秀的命令行工具,用于简单快速地估计熵。

我用它来帮助学习线性同余发生器的工作原理。但如果“测量熵”是指“测量随机性”……问题就会变得更加复杂。

为了进行更稳健的随机性测试,您应该查看 dieharder 测试套件: http://www.phy.duke.edu/~rgb/General/dieharder.php

它不像“ent”那么容易使用,但要严格得多。

为了更深入的研究,“Cipher's by Ritter”还提供了一些很好的链接选择:

http://www.ciphersbyritter.com/NETLINKS.HTM#RandomnessLinks

答案3

工具只能给你一个熵的上限。对于大多数用途,特别是与安全相关的用途,您对下限更感兴趣。

计算任意文件的熵在数学上是不可能的,因此没有工具可以做到这一点。

我可以轻松编写一个文件生成器,它生成非常低的熵文件,但仍会通过您的熵测试。只需使用带有小种子的加密 PRNG。

答案4

ncomputers.org/entropyarrayent与 16、32、64、128、256 和 512 位串行相关测试相比,执行更快的熵测试。

ncomputers.org/entropy工具,您还可以执行视觉频率和分布测试,绘制输出熵频率熵高斯

例如,您可以使用以下命令执行高达 1GB 的在线测试servertest.online/entropytest

熵频率 熵高斯

相关内容