Randomness testing toolkit automates running and evaluating statistical testing batteries
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Randomness Testing Toolkit

Randomness testing toolkit (RTT) is a tool that unites execution of various statistical batteries. Its aim is to detect non-randomness in given binary data in simple and automated manner. RTT also post-processes outputs of batteries so one does not need to cope vith various output formats these batteries use. Advanced users can even implement their own output module with minimal complications.

RTT currently implements support for following statistical tools:

Related repositories

This repository contains backend part of Randomness Testing Toolkit. For other parts see following repositories.

  • Statistical batteries GitHub
    Set of updated and modified statistical batteries compatible with RTT.
  • Service deployment automation GitHub
    RTT can be deployed on single or multiple servers as a service. Scripts in this repository automates the process of deployment.
  • Web interface GitHub
    The web interface is working on top of the deployed service and allow users to analyze data and view the analysis results through their browsers.

Installation and usage

For instructions on how to install and use Randomness Testing Toolkit, please refer to our wiki.


The framework is developed at the Centre for Research on Cryptography and Security (formerly Laboratory of Security and Applied Cryptography), Masaryk University, Brno, Czech Republic.

  • Petr Švenda 2015-now (Project lead)
  • Ľubomír Obrátil 2015-now (Development)


Randomness Testing Toolkit is licenced under MIT Licence, Copyright (c) 2015-2017 Centre for Research on Cryptography and Security. For details on MIT Licence, see file LICENSE.

Third party libraries

Some sub-parts of the project have their own licencing conditions. The brief list of such sub-parts follows.

  • Easylogging++ Home page
    Simple header C++ logging library. Released under MIT license.

  • JSON for modern C++ Home page
    JSON parser for C++. Released under MIT license.

  • C++17 std::variant for C++11/14/17 Home page
    Implementation of variant object from C++17 standard.