有没有软件可以在Java中测试序列的非随机性?

2022-09-04 04:24:36

我在Java中寻找能够找到字节序列的非随机属性的程序或库。当给定一个巨大的文件时,如果数据显示任何规律性,就会运行一些统计测试和报告。

我知道三个这样的程序,但不是Java。我尝试了所有这些,但它们似乎并不适合我(这很令人惊讶,因为其中一个是NIST的)。其中最古老的,顽固的,工作正常,但有点难以使用。


答案 1

正如一些评论者所说,这实际上是一个专家数学问题。我能为你找到的最简单的解释是:

运行非随机性测试

这很有趣,但是由于它使用“正面或反面”来简化其示例,您会发现您需要更深入地将相同的理论应用于加密/密码学等 - 但这是一个良好的开端。


答案 2

另一种方法是使用模糊逻辑。您可以从数据集中提取模糊的关联规则。这些规则基本上是以下形式的含义:

如果 A 则 B,解释为例如“如果 01101(存在)则 1111(将紧随其后)”

谷歌搜索“模糊数据挖掘”/“提取模糊关联规则”应该会产生足够多的结果。

实际上,您的问题域非常大,因为这就是数据/文本挖掘的全部内容。还有统计和组合分析,仅举几例。

关于一个这样做的程序 - 看看这个


推荐