【问题标题】:How can I use NIST software in non-interactive way?如何以非交互方式使用 NIST 软件?
【发布时间】:2018-11-07 05:44:27
【问题描述】:

我正在使用 NIST 软件。这个工具(用 C 语言编写)具有交互模式。它获取一个输入文件,询问用户一些关于测试类型和参数的问题,然后运行测试。我想在几个文件上运行它,所以我想在 Python 中自动化整个过程。有没有办法在非交互模式下使用这个软件?

文档和代码:http://csrc.nist.gov/groups/ST/toolkit/rng/documentation_software.html

【问题讨论】:

    标签: python c random cryptography


    【解决方案1】:

    您可以使用 pexpect 自动化交互界面,这是一个 Python 库。 expect 也是 NIST 产品。

    【讨论】:

    • 很高兴我能帮上忙。
    【解决方案2】:

    NIST STS 是开源的,可以下载修改;

    asses.c 中的 main

    tp.n = atoi(argv[1]); // gets the size from command line.
    
    generatorOptions() in the utilities.c , case option tell you how to enter your file.
    

    因此,您可以修复参数、设计和编译。

    在文档中 NIST 也这么说;

    如果存储空间有问题,用户可能希望修改参考实现并插入他们正在评估的 PRNG 的实现。比特流将直接存储 在 epsilon 数据结构中,其中包含二进制序列。

    注意:根据您的需要,The Red Cricket 的回答可能更适合您。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-05
      • 2017-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-05
      相关资源
      最近更新 更多