Shannon
Shannon

Reputation: 1205

How can I use NIST software in non-interactive way?

I am using NIST software. This tool (written in C) has interactive mode. It gets an input file, asks user some questions about test type and parameters, and then runs the test. I want to run it on several files, so I want to automate the whole process in Python. Is there anyway to use this software in non-interactive mode?

For documentation and code: http://csrc.nist.gov/groups/ST/toolkit/rng/documentation_software.html

Upvotes: 1

Views: 129

Answers (2)

kelalaka
kelalaka

Reputation: 5636

NIST STS is open source, so you can download and modify it;

the main in asses.c

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.

So, one you can fix your parameters, desing and compile.

In the documentation NIST also says that;

In the event that storage space is a problem, the user may want to modify the reference implementation and plug-in their implementation of the PRNG under evaluation. The bit streams will be stored directly in the epsilon data structure, which contains binary sequences.

Note: Depending on your need, The Red Cricket's answer may be better to suits you.

Upvotes: 1

Red Cricket
Red Cricket

Reputation: 10460

You can automate interactive interfaces with pexpect, which is a python library for expect. expect is also an NIST product.

Upvotes: 2

Related Questions