Recommendations on Statistical Randomness Test Batteries for Cryptographic Purposes

  • Abstract
  • Literature Map
  • Similar Papers
Abstract
Translate article icon Translate Article Star icon

Security in different applications is closely related to the goodness of the sequences generated for such purposes. Not only in Cryptography but also in other areas, it is necessary to obtain long sequences of random numbers or that, at least, behave as such. To decide whether the generator used produces sequences that are random, unpredictable and independent, statistical checks are needed. Different batteries of hypothesis tests have been proposed for this purpose.In this work, a survey of the main test batteries is presented, indicating their pros and cons, giving some guidelines for their use and presenting some practical examples.

Similar Papers
  • Book Chapter
  • 10.1007/978-3-540-76290-4_5
Tests for Randomness
  • Jan 1, 2007
  • James J Buckley + 1 more

Any sequence claimed to be random, real numbers or fuzzy numbers, must be tested for randomness. We first test our sequence of fuzzy random numbers, obtained from Sobol quasi-random numbers, for randomness using a run test and then a frequency test. We identified two types of triangular shaped fuzzy numbers from Chapter 4: (1) quadratic fuzzy numbers generated from 7-tuples; and (2) quadratic Bezier generated fuzzy numbers (QBGFNs). For reasons given there we direct our attention to QBGFNs. A run test depends on what definition of ≤ between fuzzy numbers we are using. So we do the run test three times on the Bezier fuzzy numbers; first using Buckley’s Method of ≤ (Section 2.6.1) next using Kerre’s Method of ≤ (Section 2.6.2) and lastly using Chen’s Method of ≤ (Section 2.6.3). We must also test our sequence of random fuzzy vectors for randomness. We have seen that sequences of random numbers can pass randomness tests but when they are used to build vectors the resulting sequence of vectors can fail randomness tests (Chapter 3). We will test our sequences of random vectors, whose components are all TFNs, for randomness using a chi-square test.

  • Book Chapter
  • 10.1016/b978-0-12-237459-3.50016-4
CHAPTER 12 - SIMULATIONS WITH RANDOM NUMBERS
  • Jan 1, 1988
  • Structured Programming Using Turbo Basic
  • Wade Ellis + 1 more

CHAPTER 12 - SIMULATIONS WITH RANDOM NUMBERS

  • Research Article
  • Cite Count Icon 6
  • 10.26906/sunz.2021.1.081
DATA ENCRYPTION USING XOR CIPHER
  • Feb 26, 2021
  • Системи управління, навігації та зв’язку. Збірник наукових праць
  • G Golovko + 2 more

This article offers an example of using an application whose main task is to encrypt data such as files and private messages. Data encryption is performed using an encryption algorithm - xor. The XOR cipher is a data encryption algorithm using exclusive disjunction. Acquired widespread use in computer networks in the 90's due to the ease of implementation. Used to encrypt Microsoft Word documents in Windows. The XOR encryption algorithm is to "overlay" a sequence of random numbers on the text to be encrypted. A sequence of random numbers is called a gamma sequence, and is used to encrypt and decrypt data. If you use a key with a length at least equal to the length of the message, the XOR cipher becomes much more crypto-resistant than when using a duplicate key. For cryptological protection of information of the travel company Rest & Travel, EDcrypt software has been created, which performs the following functions: account login; inability to use the system without logging in to the account; notification of entering incorrect user data; message encryption; decryption of messages; the ability to select the recipient of the message; encryption of text files; decryption of text files; sending text files to selected recipients; three interface languages: English, Russian, Ukrainian

  • Conference Article
  • Cite Count Icon 5
  • 10.1145/63047.63098
Shift-register sequence random number generators on the hypercube conurrent computers
  • Jan 1, 1988
  • T-W Chiu

We discuss the design of a class of shift-register sequence random number generators for the MIMD parallel computers, and particularly for the hypercube concurrent computers. The simplest implementation is to have each processor generating its own sequence provided that the initial seeds are linearly independent. We generate these initial seeds by using distinct linear congruential generators and finally bit-by-bit-exclusive-or with the system time in microseconds. Our shift-register sequence random number generators are coded in C and run under the CUBIX. The statistical tests are performed on each sequence generated by every single processor as well as on the combined sequence produced by all processors. The tests include chi- square, Kolmogorov-Smirnov, auto-correlation, runlength and n-tuple distribution tests. A statistical test has been devised for testing the sequences of random numbers generated by a MIMD parallel computer. Our test results indicate that our generators do provide independent sequences of random numbers with extremely long periods.

  • Conference Article
  • Cite Count Icon 14
  • 10.1109/cirsyssim.2018.8525964
Design and Implementation of a Configurable and Aperiodic Pseudo Random Number Generator in FPGA
  • Jul 1, 2018
  • Honghui Tang + 4 more

Pseudo random number generators (PRNGs) play an important role in many fields such as encryption and hardware testing. One common structure of PRNGs is linear feedback shifting register (LFSR), which generate a n-bit sequence from a specific seed. However, the sequence of random numbers can be predicted given a fixed seed and some sequences of generated numbers. Considering the drawbacks of available LSFR-based PRNGs, in this paper we devised a configurable and aperiodic LSFR-based PRNG, which utilize the unpredictability of metastable state widely existed in digital circuits. In this case, the sequence of random numbers is almost unpredictable and can meet the requirements of most applications especially critical ones. Then we implemented it on FPGA and the simulation results indicate that the proposed PRNG has better performance in generating random numbers with high randomness.

  • Research Article
  • Cite Count Icon 3
  • 10.12783/dtetr/icmeit2018/23436
Design and Implementation of a Configurable and Aperiodic Pseudo Random Number Generator in FPGA
  • Jun 20, 2018
  • DEStech Transactions on Engineering and Technology Research
  • Hong-Hui Tang + 3 more

Pseudo random number generators (PRNGs) play an important role in many fields such as encryption and hardware testing. One common structure of PRNGs is linear feedback shifting register (LFSR), which generate a n-bit sequence from a specific seed. However, the sequence of random numbers can be predicted given a fixed seed and some sequences of generated numbers. Considering the drawbacks of available LSFR-based PRNGs, in this paper we devised a configurable and aperiodic LSFR-based PRNG, which utilize the unpredictability of metastable state widely existed in digital circuits. In this case, the sequence of random numbers is almost unpredictable and can meet the requirements of most applications especially critical ones. Then we implemented it on FPGA and the simulation results indicate that the proposed PRNG has better performance in generating random numbers with high randomness.

  • Research Article
  • Cite Count Icon 15
  • 10.1016/j.amc.2023.128222
Further analysis of the statistical independence of the NIST SP 800-22 randomness tests
  • Aug 4, 2023
  • Applied Mathematics and Computation
  • Elena Almaraz Luengo + 3 more

In multiple applications, from Statistics to Particle Physics and notably in Cryptography and Computer Security, it is necessary to obtain long sequences of random numbers. In order to verify the properties of these sequences, different statistical tests are commonly applied, which are usually included in the so-called test batteries or test suites. The batteries need to be both effective and efficient. Their effectiveness relates to how well they can spot non-randomness behaviour, the efficiency is related to the computational time they require. It is therefore essential for tests included in batteries to measure their independence features: Test independence is important for good effectiveness, as high correlations between tests could lead to a decreased efficiency (testing for the same features multiple times) and effectiveness (missing an opportunity to test for an orthogonal randomness property when we essentially measure the same twice). Moreover, the related study of test coverage is often based on the assumption that tests are independent. This paper describes a series of experiments aimed at scrutinizing dependencies among the statistical tests in the NIST SP 800-22 suite. In order to do so, sequences of varying lengths from sources of varying entropy have been generated and tested. Afterwards, an inferential study was carried out to find whether significant correlations exist and to present our findings in a statistically sound way.

  • Research Article
  • 10.14988/pa.2017.0000011489
The number π as a pseudo-random number generator
  • Oct 31, 2008
  • Taketomo Mitsui

The random numbers, as actually realized sequences of the random variable with mutually independent and same distribution function, are applied in many fields of science and technology. The random number sequence which a computer generates is called pseudo-random numbers (PRNs). Various codes for PRN generation have been developed and applied. Some known algorithms, e.g., the linear congruence method, have been reported often to exhibit some faults, in particular, in parallel computation environments. The mathematical constant pi is expected that its decimal expression gives a sequence of random numbers. Up to now, pi is calculated of more than a trillion digits. More precisely, 1.241 x 10[12] digits were given with a help of super-computer. Although there is still no mathematical proof which shows either randomness or non-randomness of the digit sequence of pi, it has a potential as a PRN. Hence, we are inspired to carry out statistical tests on randomness for the number sequence from pi, and to compare its results with other algorithms for PRN. Two sets of statistical test together with a test through Monte Carlo simulation showed that the PRN generator based on pi is by no means inferior to other methods. In some tests, it exhibits even superiority as well. As the number pi is known to have several parallel algorithms for its calculation, a parallel computation of PRN generation can be considered in the future.

  • Research Article
  • Cite Count Icon 3
  • 10.1002/ecjc.20229
Generation of physical random numbers by means of photon counting
  • Oct 10, 2006
  • Electronics and Communications in Japan (Part III: Fundamental Electronic Science)
  • Chie Suematsu + 3 more

Random numbers were generated using the probabilistic behavior of a single photon in an optical fiber coupler. An optical fiber coupler (1:1 split ratio) distributes with equal probability a single photon to two optical paths. Therefore, a binary random number sequence was obtained. This random number generation rate was 2.94 Mbit/s. We found from the results of examining the obtained random number sequence that correlation appears between adjacent numbers of random numbers because there is a dead‐time (Td=50ns) in the photon detector. Therefore, we created a new random number sequence by sampling every second random number. This random number sequence did pass statistical tests for independence and uniformity. Consequently, the random number generation rate was 1.47 Mbit/s. © 2006 Wiley Periodicals, Inc. Electron Comm Jpn Pt 3, 90(2): 1–8, 2007; Published online in Wiley InterScience (www.interscience.wiley.com). DOI 10.1002/ecjc.20229

  • Conference Article
  • Cite Count Icon 4
  • 10.1145/3447818.3461664
ThundeRiNG
  • Jun 3, 2021
  • Hongshi Tan + 4 more

In this paper, we propose ThundeRiNG, a resource-efficient and high-throughput system for generating multiple independent sequences of random numbers (MISRN) on FPGAs. Generating MISRN can be a time-consuming step in many applications such as numeric computation and approximate computing. Despite that decades of studies on generating a single sequence of random numbers on FPGAs have achieved very high throughput and high quality of randomness, existing MISRN approaches either suffer from heavy resource consumption or fail to achieve statistical independence among sequences. In contrast, ThundeRiNG resolves the dependence by using a resource-efficient decorrelator among multiple sequences, guaranteeing a high statistical quality of randomness. Moreover, ThundeRiNG develops a novel state sharing among a massive number of pseudo-random number generator instances on FPGAs. The experimental results show that ThundeRiNG successfully passes the widely used statistical test, TestU01, only consumes a constant number of DSPs (less than 1\% of the FPGA resource capacity) for generating any number of sequences, and achieves a throughput of 655 billion random numbers per second. Compared to the state-of-the-art GPU library, ThundeRiNG demonstrates a $10.62\times$ speedup on MISRN and delivers up to $9.15\times$ performance and $26.63\times$ power efficiency improvement on two applications ($\pi$ estimation and Monte Carlo option pricing). This work is open-sourced on Github at https://github.com/Xtra-Computing/ThundeRiNG

  • Research Article
  • 10.7498/aps.70.20202034
High-quality random number sequences extracted from chaos post-processed by phased-array semiconductor laser
  • Jan 1, 2021
  • Acta Physica Sinica
  • Jia-Chen Wu + 6 more

<sec> With the rapid development of the computer technology and communication technology, as well as the popularization of the Internet, information security has received much attention of all fields. To ensure the information security, a large number of random numbers must be generated. It is well accepted that random numbers can be divided into physical random numbers and pseudo random numbers. The pseudo random numbers are mainly generated based on algorithms, which can be reproduced once the seed is decoded. The physical random numbers are extracted from physical entropies. While the bandwidth of the traditional physical entropy source is quite small, the bit rate of generated physical random numbers is limited. In the literature, a lot of methods have been proposed to produce high-quality and high-speed random number sequences with the chaotic entropy source, which exhibits wide bandwidth, large amplitude and random fluctuations. Usually, a semiconductor laser with optical feedback, i.e, an external-cavity semiconductor laser (ECSL), is chosen as a chaotic entropy source to generate a chaotic signal output. However, the chaotic signal output has a high time delay characteristic, which is not conducive to the production of high-quality random numbers. </sec><sec> In this paper, to produce high-quality chaos with time-delay signature (TDS) being well suppressed, we propose to employ an integration-oriented phased-array semiconductor laser to post-process the original chaos generated by an ECSL. It is shown that the proposed laser array is effective in TDS suppression, which improves the quality of optical chaos. After certain necessary post-processing, high-speed and high-quality random number sequences can be achieved. In this paper, we employ the conventional post-processing techniques, which include an 8-bit analog-to-digital converter (ADC) for sampling and quantization, and m-bits least significant bit (m-LSB) and exclusive OR (XOR) for removing bias. The simulation results show that the random number sequences obtained from the chaotic entropy source comprised of an ECSL and phased-array semiconductor lasers have uniform distribution characteristic and their scatter diagram contains no obvious pattern. Meanwhile, the obtained random number sequences can pass all tests of the standard randomness benchmark, NIST SP 800-22. Additionally, based on the extensibility of phased-array semiconductor lasers, random number generators that can generate parallel random numbers are achievable. </sec>

  • Book Chapter
  • Cite Count Icon 1
  • 10.1007/978-3-642-01970-8_54
Minkowski Functionals Study of Random Number Sequences
  • Jan 1, 2009
  • Xinyu Zhang + 3 more

Random number sequences are used in a wide range of applications such as simulation, sampling, numerical analysis, cryptography, and recreation. The quality of random number sequences is critical to the correctness of these applications. Many statistical tests have been developed to test various characteristics of random number generators such as randomness, independence, uniformity, etc. Most of them are based on testing on a single sequence. When multiple sequences are employed in an application, their potential correlations are also concerned. In this paper, we explore the techniques of using the Minkowski functionals and their extensions, the Minkowski valuations, to study the mathematical morphology of two dimensional binary image generated by pair-wise random number sequences, and apply this method to describe and compare the properties of several well-known pseudo- and quasi-random number generators.

  • Book Chapter
  • Cite Count Icon 2
  • 10.1007/978-981-16-8739-6_62
Chaotic Pseudo Random Number Generator (cPRNG) Using One-Dimensional Logistic Map
  • Jan 1, 2022
  • Ayan Mukherjee + 2 more

In this paper, a method of generating non-periodic pseudo random numbers has been proposed based on a chaotic PRNG using one-dimensional logistic map. PRNGs generate deterministic sequences of numbers that appear random; such a sequence is reproducible given the state of the generator is known. The proposed cPRNG is based on the one-dimensional logistic map; by adjusting the value of the control parameter lambda, a sequence of random numbers is generated. The sequence so generated is then put through a test of randomness. In this paper, the Wald–Wolfowitz runs test has been used as a test of randomness.KeywordsChaos theoryPseudo random numbersLogistic mapWald–Wolfowitz runs testNon-periodicChaotic system

  • Research Article
  • 10.23939/ictee2023.02.020
МЕТОДИКА КРИТЕРІЇВ СУМ У ЗАДАЧАХ ТЕСТУВАННЯ НЕЗАЛЕЖНОСТІ ПОСЛІДОВНОСТЕЙ ВИПАДКОВИХ ЧИСЕЛ
  • Sep 1, 2023
  • Information and communication technologies, electronic engineering
  • S Odegov + 4 more

Random and pseudo-random number generators (RNGs) were initially used to solve numerical integration problems (the Monte Carlo method). Currently, the RNGs are used in cryptography and simulation modeling. The latter one typically uses RNGs based on computer algorithms and programs. This article presents a method aimed at testing the independence of random numbers sequences (RNSs). The method is based on the sums properties of independent random variables. Algorithms based on this method operate fast. Here not only the instant statistics including correlation coefficients are analyzed, but also the properties of empirical functions of RNSs distributed sums. In this article, the analysis is limited only to the case of uniformly distributed RNSs. The calculations performed prove the high selective efficiency of the proposed criteria, which allows to reliably distinguish between dependent and independent RNSs. Due to the high operation speed, the proposed algorithms and criteria can be used for testing very long RNSs (especially in Big Data tasks).

  • Book Chapter
  • 10.1007/978-1-4612-2856-1_70
Testing the Random Number Tests
  • Jan 1, 1992
  • Hubert Lilliefors

Given a sequence of random numbers produced by a random number generator, the first question one asks is: is the sequence random? The answer is that it is not since the numbers are the result of calculations on a digital computer. The second question is: does the sequence have the properties that one would expect from a sequence of random numbers? Is the sequence uniformly distributed? Are the numbers uniformly distributed? Are consecutive numbers independent? Etc.

Save Icon
Up Arrow
Open/Close