called BoolTest is based on boolean functions. Our
approach was evaluated on more than 20 real world
cryptographic functions with results comparable to
commonly used statistical batteries like NIST STS or
Dieharder. The test runs significantly faster than men-
tioned batteries and usually requires order of magni-
tude less data.
Additionally, the bias spotted is directly inter-
pretable as a relation between several fixed output
bits of the analyzed function. The BoolTest can be
used as a fast alternative to existing batteries and/or
to complement its results. The direct interpretability
of a boolean function based distinguisher adds benefit
for human cryptologist interested in the more detailed
analysis of weakness present in a inspected crypto-
graphic function.
The future work will address boolean functions of
higher degree and with more components. The brute-
force examination of boolean functions used in this
work can be practically performed only for the de-
gree up 3 and with no possibility to evaluate all com-
bination of two or more components. The adaptive
learning methods may be used for selection of viable
candidates for combination from the initial pool of all
possible simple functions.
ACKNOWLEDGEMENTS
We acknowledge the support of the Czech Science
Foundation, project GA16-08565S. The access to the
computing and storage resources of National Grid
Infrastructure MetaCentrum (LM2010005) is greatly
appreciated.
REFERENCES
Bard, G. V. (2009). Algebraic Cryptanalysis. Springer Pub-
lishing Company, ISBN 978-0-387-88756-2.
Brown, R. G., Eddelbuettel, D., and Bauer, D. (2013).
Dieharder: A random number test suite 3.31.1.
http://www.phy.duke.edu/ rgb/General/dieharder.php.
Chevillard, S. (2012). The functions Erf and Erfc computed
with arbitrary precision and explicit error bounds. In
Academic Press, Inc., Information and Computation,
volume 216, pages 72–95. Academic Press, Inc.
EACirc (2017). EACirc project.
https://github.com/CRoCS MUNI/EACirc.
Englund, H., Johansson, T., and S
¨
onmez Turan, M. (2007).
A framework for chosen IV statistical analysis of
stream ciphers. In INDOCRYPT 2007, pages 268–
281. Springer Berlin Heidelberg.
Filiol, E. (2002). A new statistical testing for symmetric ci-
phers and hash functions. In ICICS 2002, pages 342–
353. Springer Berlin Heidelberg.
Garrett, A., Hamilton, J., and Dozier, G. (2007). A com-
parison of genetic algorithm techniques for the crypt-
analysis of TEA. In International journal of intelli-
gent control and systems, volume 12, pages 325–330.
Springer.
Hern
´
andez, J. and Isasi, P. (2004). Finding efficient dis-
tinguishers for cryptographic mappings, with an ap-
plication to the block cipher TEA. In Computational
Intelligence, volume 20, pages 517–525. Blackwell.
Heys, H. M. (2002). A tutorial on linear and differential
cryptanalysis. In Cryptologia, volume 26, pages 189–
221, Bristol, PA, USA. Taylor & Francis, Inc.
Kaminsky, A. and Sorrell, J. (2014). Cryp-
tostat, a bayesian statistical testing
framework for block ciphers and macs.
http://www.cs.rit.edu/ ark/students/jls6190/report.pdf.
L’Ecuyer, P. and Simard, R. (2007). TestU01: A C library
for empirical testing of random number generators. In
ACM Trans. Math. Softw., volume 33, New York, NY,
USA. ACM.
Marsaglia, G. (1995). The Marsaglia random number
CDROM including the diehard battery of tests of ran-
domness. http://www.stat.fsu.edu/pub/diehard/.
Mouha, N. (2010). Ecrypt II: Tools for cryptography.
http://www.ecrypt.eu.org/tools/overview.
NIST (2001). FIPS 140-2 security requirements for crypto-
graphic modules. NIST.
Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flan-
nery, B. P. (2007). Numerical recipes 3rd edition:
The art of scientific computing. Cambridge Univer-
sity Press.
Rukhin, A. (2010). A statistical test suite for the valida-
tion of random number generators and pseudo ran-
dom number generators for cryptographic applica-
tions, version STS-2.1. NIST.
Sheskin, D. J. (2003). Handbook of parametric and non-
parametric statistical procedures. CRC Press, USA.
Stankovski, P. (2010). Greedy distinguishers and non-
randomness detectors. In INDOCRYPT 2010, LNCS
6498. Springer.
S
´
ys, M. and Klinec, D. (2017). Booltest
– tool for fast randomness testing.
http://crocs.fi.muni.cz/papers/secrypt2017.
S
´
ys, M.,
ˇ
Svenda, P., Ukrop, M., and Maty
´
a
ˇ
s, V. (2014).
Constructing empirical tests of randomness. In SE-
CRYPT 2014. ICETE.
Wackerly, D. D., III, W. M., and Scheaffer, R. L. (2002).
Mathematical statistics with applications. Duxbury
Advanced Series.
The Efficient Randomness Testing using Boolean Functions
103