NIST是评判伪随机序列随机性的一种方法,包含16个测试,测试内容看这篇

https://blog.csdn.net/lafu5137/article/details/79593845

因为NIST需要在Linux环境下运行,所以我们需要下载Cygwin去模拟LInux环境,下载教程看这几篇

NIST下载教程(比较新)

Cygwin安装教程(比较全)

NIST下载、安装及使用(比较全)

标注一个自己下载过程中出现的错误:在下载完Cygwin和NIST后,在Cygwin终端运行NIST,一定要输入正确的地址,我当时直接cd+win中make.file的路径直接复制然后回车,会提示:No such file or directory的错误,然后百度无果,认为是安装两软件出现问题,然后查询相关解决办法,又认为自己是没有安装make文件并且又去官网下载最新的文件,发现问题还是没有解决,又认为是Cygwin需要编译环境,又去安装gcc编译环境,问题依然没有解决,最后突然发现我们这块要输入不是cd D:\cygwin64\sts-2.1.2\sts-2.1.2,而是cd D:/cygwin64/sts-2.1.2/sts-2.1.2,看到差异了吗 \和/,前者是windows中直接复制的,后者是需要我们全部替换的可以在linux中识别的路径

在以上输入正确路径后,我们再输入make命令,NIST软件就会安装,这时候在相同路径下会产生一个asses.exe可执行文件,这意味着NIST安装成功。

然后进入NIST的使用

1.输入

./assess.exe

2.输入

./assess.exe 1000000

表示将数据段的长度设置为1000000(bits)=1M(bits)。

注意,NIST检验是按数据段来检验的,无论你原始的数据文件多大,都是分成小段,这里一段是一百万个比特位也就是1M。比如128M的数据就分成128段,30M的数据就分成30段。这里每段多长是可变的,但是数据段的长度应该至少大于1M(bits),因为有些检验要求输入的数据流至少要大于等于1M,不然后面运行会出警告。

3.输入0,再输入待测试文件所在的路径(这里是绝对路径,也就是直接到达目标位置)

0

4.选择要测试的项目,输入1,回车,表示16个NIST测试都要进行

5.

接下来,程序询问我们是否选择默认的参数设置,这里无所谓,如果你的数据足够大的话,[1]对应的那个128可以变大些,直接输1然后回车就可以更改,博主改成了20000,当然不改也可以。

非常重要的是这里有个 How many bitstreams这个问题,这里一定要与之前的数据段长度对应,之前数据段是1M,那128M的数据就就是128个比特流,30M的数据就是30个流。

128M的数据就就是128个比特流,这里就可以选一个比128小的数,比如100,代表只检验前100M数据的随机性。

6.接下来,程序询问我们待测数据的存放各式。由于我的数据文件格式是二进制,数据文件里只有0和1,所以输入0

7.具在屏幕上输出一行英文提示:统计测试进行中…。
接下来,耐心等待即可,运算时间与数据量有关。

8.当数据测试完成后,会在测试包所在目录的experiments->AlgorithmTesting目录下生成两个测试报告文件,他们分别是finalAnalysisReport.txt和freq.txt。

9.查看finalAnalysisReport.txt和freq.txt  首先前面16个文件夹分别对应16个检验,每个文件夹里都有各自的检验结果

结果如下,有两个文件

stats.txt文件里会给出每个数据段通过此检验的情况,success或者failure

finalAnalysisReport.txt文件是总的检验结果

打开之后,如下所示

PROPORTION是所有数据段中通过检验的比例。右边那个是检验的名称,其中Non开头那个比较特殊,它虽然是一个检验,但会出现多个P-value值。当然也是大于0.01认为随机。

所有P-value都大于等于0.01即可认为通过了NIST检验。

10.NIST软件使用过程中可能的出错

NIST随机数检测软件使用相关推荐

  1. 关于NIST随机数测试软件报错问题的补充

    关于NIST随机数测试软件报错问题的补充 待测试文件的格式与内容 关于文件格式 关于文件内容 运行算法时的参数 选择bit流大小和数量 选择测试项 NIST随机数测试算法相关测试软件的下载.安装.Cy ...

  2. NIST随机数测试软件下载,安装、和使用,分析方法最新版(19年4月)

    NIST随机数测试软件下载,安装.和使用方法 NIST简介 NIST下载与安装 NIST软件的使用 NIST软件使用过程中可能的出错 如何查看finalAnalysisReport.txt和freq. ...

  3. 目前最新NIST随机数测试软件下载、安装、及使用教程

    看了太多的NIST的安装教程,让我白白浪费了一下午,现在提一些细致的问题. 简介啥的就不说了.懂得自然懂. 一.软件下载 1.下载cygwin: 下载链接:Cygwin 具体安装方法如下,本文不在细说 ...

  4. cube sdio fatfs 初始化sd卡_SD卡读卡器检测——硬盘检测软件Hard Disk Sentinel Pro介绍

    在本教程中,将介绍如何使用硬盘检测软件Hard Disk Sentinel Pro查看相应的行业标准(微型)SD卡,USB设备的完整状态. 尽管大多数SD / microSD卡不提供状态信息,并且只能 ...

  5. 突变检测软件 测试数据库,合作文章|变异检测软件技能大PK,谁才是Battle King?...

    DNA变异是个体间遗传变异的重要来源之一.第二代测序技术(NGS)和第三代测序技术(TGS)都在遗传变异研究中大放异彩.许多变异检测工具可以用来解析二代或三代数据,但是目前没有软件能兼顾灵敏性和特异性 ...

  6. 蓝牙管理软件_Mac蓝牙检测软件----BlueSense

    需要一款蓝牙检测软件?BlueSense for Mac(蓝牙检测软件)是一款非常实用的蓝牙检测.分析.管理软件,它会完美会分析您的蓝牙设备的信号,并在您离开或回到Mac附近时执行任何所需的操作. 功 ...

  7. 硬件模拟大师_科普丨硬件检测软件3D Mark究竟多“硬核”?

    随着硬件更新换代和兼容性增强,笔记本电脑的综合性能甄别变得愈发复杂,如何精准评判一款电脑性能对众多电脑小白来说显得至关重要.尽管鲁大师同样可以提供简约直观的跑分但其偏向系统优化,高性能硬件测试更多只能 ...

  8. mats显存测试软件linux环境,Mats显存检测软件下载-Mats显存检测软件最新版下载-微侠手游网...

    Mats显存检测软件是一款专业的显卡检测工具,全系统都是中文的,是一款装机必备的硬件工具,帮助你了解自己的显卡运作情况,有任何问题都可以第一时间暂停,看完的小伙伴可以关注微侠网下载最新版软件以及查看最 ...

  9. 洛达检测软件_洛达1562m之体验篇

    阅读本文前,请您先点击上面的蓝色字体,再点击"关注",这样您就可以免费收到最新内容了.每天都有分享,完全是免费订阅,请放心关注. 声明:本文转载自网络,如有侵权,请在后台留言联系我 ...

最新文章

  1. 现代内存编号解读(转)
  2. PHP利用CURL_MULTI实现多线程
  3. 每天自动备份网站数据,发现问题一键恢复 ——阿里云虚拟主机推出网站数据自动备份功能...
  4. 面试官这Redis夺命连环12问,谁顶得住?
  5. 聊聊 HTTP 协议的知识点
  6. 标准BT.656并行数据结构
  7. android p ify 三星,Enjarify - Android逆向(二)
  8. MATLAB GUI中的handles
  9. json的存储与读取
  10. 上传大文件报错413问题处理
  11. Renesas_based_intro
  12. linux sort排序及取前几条数据
  13. Java8新特性stream流的优雅操作
  14. webGIS学习(二)探究本质,WebGIS前端地图显示之地图比例尺换算原理 发布于 3 年前 作者 lzxue 7473 次浏览 来自 技术 1.没有豆浆机怎么办? 喝豆浆是我们早晨中基本
  15. html5 端午节 龙舟,端午节看龙舟作文(精选5篇)
  16. 打开Windows任务管理器的七种方法
  17. 题解:单词排序(水)
  18. Linux操作命令(下)
  19. AVI文件和AVI函数
  20. Android开发秘籍 第2版

热门文章

  1. 中国电化学储能行业发展趋势展望及十四五战略研究报告2022~2027年
  2. 如何查看目前所有会话的状态oracle,Oracle一些常用查看数据库状态SQL
  3. Kafka的监控指标
  4. [RK3288][Android6.0] 调试笔记 --- CPU使用的频率表
  5. 小程序--错误{errcode:40029,errmsg:invalid code, hints: [ req_id: weh8ka0297hc58 ]}
  6. Mongodb关于读取的问题(Read Concern)和Write Concern
  7. 如何提炼好的软文标题
  8. 全国竞赛算不算全国计算机二级,竞赛证书的等级如何区分
  9. C语言笔记含源码(变量、输入输出、分支、循环、函数、数组、指针、字符串、结构体)小总结
  10. 小程序实战工作的知识点总结