The Efficient Randomness Testing using Boolean Functions

Marek Sýs, Dušan Klinec, Petr Švenda

2017

Abstract

The wide range of security applications requires data either truly random or indistinguishable from random. The statistical tests included in batteries such as NIST STS or Dieharder are frequently used to assess the randomness property. We designed a principally simple, yet powerful, statistical randomness test working on bit level. It is based on a search for boolean function(s) indicating a bias when applied to the tested stream not expected for truly random data. The deviances are detected in seconds rather than tens of minutes required by the common batteries. Importantly, the boolean function indicating the bias directly describes the pattern responsible for this bias. This allows to construct the bit predictor or to fix the cause of bias in the function design. The present bias is typically detected in at least an order of magnitude less data than required by NIST STS or Dieharder. The tests included in these batteries are either too simple to spot the common biases (like the Monobit test) or overly complex (like the Fourier Transform test) requiring an extensive amount of data. The proposed approach called BoolTest fills this gap. The performance was verified on more than 20 real world cryptographic functions – block and stream ciphers, hash functions and pseudorandom generators. Among others, the previously unknown bias in the output of C rand() and Java Random generators was found.

Download


Paper Citation


in Harvard Style

Sýs M., Klinec D. and Švenda P. (2017). The Efficient Randomness Testing using Boolean Functions . In Proceedings of the 14th International Joint Conference on e-Business and Telecommunications - Volume 6: SECRYPT, (ICETE 2017) ISBN 978-989-758-259-2, pages 92-103. DOI: 10.5220/0006425100920103


in Bibtex Style

@conference{secrypt17,
author={Marek Sýs and Dušan Klinec and Petr Švenda},
title={The Efficient Randomness Testing using Boolean Functions},
booktitle={Proceedings of the 14th International Joint Conference on e-Business and Telecommunications - Volume 6: SECRYPT, (ICETE 2017)},
year={2017},
pages={92-103},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006425100920103},
isbn={978-989-758-259-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 14th International Joint Conference on e-Business and Telecommunications - Volume 6: SECRYPT, (ICETE 2017)
TI - The Efficient Randomness Testing using Boolean Functions
SN - 978-989-758-259-2
AU - Sýs M.
AU - Klinec D.
AU - Švenda P.
PY - 2017
SP - 92
EP - 103
DO - 10.5220/0006425100920103