For your particular use-case, I recommend writing down the 0 and 1 numbers generated by your rng as characters to a file and then use that file as input data for the test suite program.
Note that the sequence has to be at least 1000 characters long to be tested by STS.
When you run it, don't forget to use the flag -F 'a', to tell the program that the input file is made of ASCII 0 and 1 chars.
I also recommend trying this unofficial version of the NIST Statistical Test Suite, where I have fiddled with the original NIST source code and tried to optimize it.
For your convenience, here is the command I would suggest that you use to run the tests with it (after having compiled the program from the sources with $ make):
$ ./sts -v 1 -b -g 0 -i 32 -I 1 -w . -fF 'a' /path/to/input/file -F 'a' 1048576 You might want to increase the number of bitstreams tested (indicated by the -i flag) to a bigger one to use more data from the input. For example, you can choose:
number of bitstreams = (number of 1 and 0 bits you generated) / 1048576 Once all the tests have been run, the program will generate a report in a file called result.txt, that you can use to evaluate the quality of your rng.
Note that this program it’s not NIST-official though. Also, our test-suite modifications did not undergo 3rd party testing; so it’s AS-IS with no guarantees whatsoever.