This communication proposes a simplified model of pseudorandom bit generator, based on two Chirikov standard maps filtered with shrinking rule. The study also demonstrates that the generated keystreams have excellent properties of randomness and resistance to statistical attacks, which is proven by using the NIST, ENT, and DIEHARD testing suites.
The chaotic maps and the shrinking rules have been used widely in the fields of random simulations and secure communications. Patidar and Sud [
The aim of the paper is referred on the method of synthesis of a pseudorandom bit generation scheme based on two standard maps which are filtered by Jabri shrinking generator (JSG) [
The Chirikov standard map is an area-conserving chaotic map defined by a set of difference equations:
Jabri pointed out that using the classic shrinking function leads to statistical disadvantage and proposed a modified shrinking rule, which addresses the problem. If
This study was inspired by the work of Patidar and Sud [
Schematic description of the proposed chaos based generator.
The proposed pseudorandom bit generator is implemented softwarely in Dev-C++ 5.0 beta 9.2 (4.9.9.2) environments with Mingw/GCC 3.4.2. We produced a set of 1000 sequences of 1000000 bits each, using the following initial numbers:
The NIST suite [ State the null hypothesis. Assume that the zero/one sequence is random. Compute a sequence test statistic. Testing is carried out at the bit level. Compute the Fix
The NIST suite calculates the proportion of sequences that pass the particular tests. The range of acceptable proportion is determined using the confidence interval defined as
The distribution of
The empirical results we obtained are presented in Table
NIST test results.
NIST | Proposed generator | |
---|---|---|
Statistical test |
|
Pass rate |
Frequency (monobit) | 0.228367 | 994/1000 |
Block frequency | 0.186566 | 983/1000 |
Cumulative sums (forward) | 0.759756 | 990/1000 |
Cumulative sums (reverse) | 0.003224 | 991/1000 |
Runs | 0.647530 | 993/1000 |
Longest run of ones | 0.960198 | 990/1000 |
Rank | 0.670396 | 992/1000 |
FFT | 0.187581 | 988/1000 |
Nonoverlapping templates | 0.482512 | 990/1000 |
Overlapping templates | 0.166260 | 987/1000 |
Universal | 0.281232 | 987/1000 |
Approximate entropy | 0.903338 | 988/1000 |
Random-excursion | 0.532463 | 590/599 |
Random-excursion variant | 0.409049 | 591/599 |
Serial 1 | 0.066465 | 986/1000 |
Serial 2 | 0.442831 | 989/1000 |
Linear complexity | 0.985788 | 984/1000 |
The minimum pass rate for the random excursion (variant) test is approximately 585 for a sample size of 599 binary sequences for the proposed pseudorandom algorithm.
The Marsaglias Diehard test package consists of 18 statistical tests: Birthday spacings, Overlapping 5-permutations, Binary rank (31 × 31), Binary rank (32 × 32), Binary rank (6 × 8), Bitstream, Overlapping-Pairs-Sparse-Occupancy, Overlapping-Quadruples-Sparse-Occupancy, DNA, Stream count-the-ones, Byte-count-the-ones, Parking lot, Minimum distance, 3D spheres, Squeeze, Overlapping sums, Runs (up and down), and Craps. The tests return
We will introduce the particular tests briefly [
Table
Diehard test results.
DIEHARD | Proposed generator |
---|---|
Statistical test |
|
Birthday spacings | 0.576866 |
Overlapping 5-permutation | 0.191766 |
Binary rank (31 × 31) | 0.393875 |
Binary rank (32 × 32) | 0.326959 |
Binary rank (6 × 8) | 0.532371 |
Bitstream | 0.489218 |
OPSO | 0.462404 |
OQSO | 0.462404 |
DNA | 0.559898 |
Stream count-the-ones | 0.521853 |
Byte count-the-ones | 0.596708 |
Parking lot | 0.861929 |
Minimum distance | 0.765773 |
3D spheres | 0.383131 |
Squeeze | 0.496864 |
Overlapping sums | 0.008502 |
Runs up | 0.289339 |
Runs down | 0.449145 |
Craps | 0.497628 |
The ENT suite performs 6 tests to sequences of bytes stored in files and outputs the results of those tests. We tested output stream of 125000000 bytes of the proposed scheme. The results are summarized in Table
ENT test results.
ENT | Proposed generator |
---|---|
Statistical test | Results |
Entropy | 7.997502 bits per byte |
Optimum compression | OC would reduce the size of this 125000000 byte file by 0 |
|
For 125000000 samples is 438239.72 and randomly would exceed this value less than 0.01 |
Arithmetic mean value | 127.5013 |
Monte Carlo |
3.140569010 (error 0.03 |
Serial correl. coeff. | −0.000147 |
(totally uncorrelated = 0.0) |
In summary, we propose a novel chaos-based pseudorandom bit generator, which uses two Chirikov standard maps filtered by a search-based rule. We did detailed analysis by NIST, Diehard, and ENT statistical packages to show that the novel generator did not reveal a noticeable deviation from randomness.
The authors declare that there is no conflict of interests regarding the publication of this paper.
The authors thank anonymous reviewers for their valuable comments and suggestions. This paper is supported by the Project BG051PO 00l-3.3.06-0003 “Building and steady development of PhD students, post-PhD and young scientists in the areas of the natural, technical, and mathematical sciences.” The project is realized by the financial support of the Operative Program “Development of the human resources” of the European social fund of the European Union.