sp800_22_tests 项目使用教程
1. 项目的目录结构及介绍
sp800_22_tests/
├── README.md
├── sp800_22_longest_run_ones_in_a_block_test.py
├── sp800_22_maurers_universal_test.py
├── sp800_22_monobit_test.py
├── sp800_22_non_overlapping_template_matching_test.py
├── sp800_22_overlapping_template_matching_test.py
├── sp800_22_random_excursion_test.py
├── sp800_22_random_excursion_variant_test.py
├── sp800_22_runs_test.py
├── sp800_22_serial_test.py
└── sp800_22_tests.py
README.md
: 项目说明文件,包含项目的基本介绍和使用方法。sp800_22_longest_run_ones_in_a_block_test.py
: 最长连续1测试。sp800_22_maurers_universal_test.py
: Maurers通用测试。sp800_22_monobit_test.py
: 单比特测试。sp800_22_non_overlapping_template_matching_test.py
: 非重叠模板匹配测试。sp800_22_overlapping_template_matching_test.py
: 重叠模板匹配测试。sp800_22_random_excursion_test.py
: 随机游走测试。sp800_22_random_excursion_variant_test.py
: 随机游走变体测试。sp800_22_runs_test.py
: 运行测试。sp800_22_serial_test.py
: 序列测试。sp800_22_tests.py
: 主测试文件,用于调用其他测试文件并输出结果。
2. 项目的启动文件介绍
sp800_22_tests.py
是项目的启动文件。它负责读取二进制数据文件并将其发送给每个测试文件,最后输出测试结果的摘要。
使用方法
$ python sp800_22_tests.py <binary_data_file>
例如:
$ python sp800_22_tests.py megabitrand.bin
3. 项目的配置文件介绍
该项目没有明确的配置文件。每个测试文件都是独立的,通过命令行参数传递需要测试的二进制数据文件。
示例
生成一个1 Mibibit的均匀随机二进制文件并运行测试:
$ djenrandom -b -k 128 > megabitrand.bin
$ python sp800_22_tests.py megabitrand.bin
以上命令将生成一个随机二进制文件并对其进行所有测试,最后输出测试结果的摘要。