cooltest

Crates.iocooltest
lib.rscooltest
version0.2.0
created_at2025-06-06 11:35:21.3229+00
updated_at2025-06-06 11:35:21.3229+00
descriptionRandomness testing tool
homepage
repositoryhttps://github.com/jirigav/cooltest
max_upload_size
id1702907
size55,492
Jiří Gavenda (jirigav)

documentation

README

CoolTest

CoolTest is a randomness-testing tool. It uses first half of provided data to construct a distinguisher based on a histogram construction. Then it evaluates the distinguisher on the second half of the data to evaluate the probability of the data being generated by true random number generator.

This tool is based on our paper published at IFIP SEC 2025.

How to use CoolTest

Prerequisites

  • Rust: Ensure you have Rust installed. If not, install it from rust-lang.org.

Build Instructions

Clone the repository:

git clone https://github.com/jirigav/cooltest.git
cd cooltest

Build the project in release mode:

cargo build --release

Run the tool

After building, you can run CoolTest with default parameters using the following command:

./target/release/cooltest <file>

Replace with the path to the binary file you wish to test.

To view all available options:

./target/release/cooltest --help

Alternative p-value computation

For a more precise p-value computation, the python library SciPy can be used.

Python library SciPy (version 1.7.0 or newer) is required.

Build with:

cargo build --release --features scipy

License

CoolTest is released under the MIT license. See LICENSE for more information.

Commit count: 111

cargo fmt