Generating True Random Numbers Based on Multicore CPU Using Race Conditions and Chaotic Maps

A true random number generator (TRNG) is proposed, harvesting entropy from multicore CPUs to generate non-deterministic outputs. The entropy source is the unpredictable sequence of thread access when parallel threads attempt to access the same memory location, known as race condition or data races. Although prior work using the same entropy source exists, they either have low efficiency or insufficient security analysis. The novelty of this work lies in its use of chaotic networks capable of extracting entropy while postprocessing outputs simultaneously. These networks are formulated by coupling chaotic maps in the form of chaotic coupled map lattices which have the capability to amplify minor uncertainties, leading to better performance as compared to other CPU-based TRNGs. We first perform experiments to depict the unpredictable nature of thread access due to race conditions through entropy and scale index analysis. Next, the proposed generator is scrutinized based on a standardized set of evaluation criteria which includes the use of multiple statistical test suites followed by an analysis of its non-deterministic property. We also perform an in-depth entropy analysis of the generator’s outputs and measure its degree of non-periodicity. Results indicate that the proposed chaos-based TRNG is fast, evenly distributed, and is secure enough for applications that have high security requirements.

[1]  Rafael Benítez,et al.  A wavelet-based tool for studying non-periodicity , 2010, Comput. Math. Appl..

[2]  David Pointcheval,et al.  Security analysis of pseudo-random number generators with input: /dev/random is not robust , 2013, CCS.

[3]  Nilanjan Sarkar,et al.  Symplectic Entropy as a Novel Measure for Complex Systems , 2016, Entropy.

[4]  Jean-Sébastien Coron,et al.  On the Security of Random Sources , 1999, Public Key Cryptography.

[5]  Lingfeng Liu,et al.  On the eigenvalue and Shannon's entropy of finite length random sequences , 2015, Complex..

[6]  I. Kanter,et al.  An optical ultrafast random bit generator , 2010 .

[7]  Amir Akhavan,et al.  Pseudo random number generator based on quantum chaotic map , 2014, Commun. Nonlinear Sci. Numer. Simul..

[8]  Azman Samsudin,et al.  A post-processing method for true random number generators based on hyperchaos with applications in audio-based generators , 2020, Frontiers of Computer Science.

[9]  Sung-il Pae,et al.  DRAM as source of randomness , 2009 .

[10]  Luis Sánchez,et al.  Social Noise: Generating Random Numbers from Twitter Streams , 2015 .

[11]  Amir Akhavan,et al.  GPUs and chaos: a new true random number generator , 2015, Nonlinear Dynamics.

[12]  Honorio Martín,et al.  Design and Analysis of a True Random Number Generator Based on GSR Signals for Body Sensor Networks , 2019, Sensors.

[13]  Gyungho Lee,et al.  GPUs as high-performance random sources , 2014 .

[14]  Turgay Kaya,et al.  True Random Number Generation from Bioelectrical and Physical Signals , 2018, Comput. Math. Methods Medicine.

[15]  Victor B. Kazantsev,et al.  A Neuromuscular Interface for Robotic Devices Control , 2018, Comput. Math. Methods Medicine.

[16]  Min Lei,et al.  Fault Detection for Vibration Signals on Rolling Bearings Based on the Symplectic Entropy Method , 2017, Entropy.

[17]  Hong Guo,et al.  True random number generator based on the phase noise of laser , 2010, CLEO/QELS: 2010 Laser Science to Photonic Applications.

[18]  Kwok-Wo Wong,et al.  A true random number generator based on mouse movement and chaotic cryptography , 2009 .

[19]  Je Sen Teh,et al.  A parallelizable chaos-based true random number generator based on mobile device cameras for the Android platform , 2018, Multimedia Tools and Applications.

[20]  Barton P. Miller,et al.  What are race conditions?: Some issues and formalizations , 1992, LOPL.

[21]  Werner Schindler,et al.  Evaluation Criteria for True (Physical) Random Number Generators Used in Cryptographic Applications , 2002, CHES.

[22]  Ruppa K. Thulasiram,et al.  Stationarity Enforcement of Accelerator Based TRNG by Genetic Algorithm , 2015, 2015 IEEE Trustcom/BigDataSE/ISPA.

[23]  Tommaso Addabbo,et al.  Chaos Based Generation of True Random Bits , 2009, Intelligent Computing Based on Chaos.

[24]  Yu-Guang Yang,et al.  Novel pseudo-random number generator based on quantum random walks , 2016, Scientific Reports.

[25]  Charles E. McDowell,et al.  A Taxonomy of Race Conditions , 1996, J. Parallel Distributed Comput..

[26]  Adrian Colesa,et al.  Software Random Number Generation Based on Race Conditions , 2008, 2008 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.

[27]  Onur Mutlu,et al.  D-RaNGe: Using Commodity DRAM Devices to Generate True Random Numbers with Low Latency and High Throughput , 2018, 2019 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[28]  Elaine B. Barker,et al.  A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications , 2000 .

[29]  Rachid Guerraoui,et al.  The entropy of a distributed computation random number generation from memory interleaving , 2017, Distributed Computing.

[30]  Hong-Bo Xie,et al.  Complexity analysis of the biomedical signal using fuzzy entropy measurement , 2011, Appl. Soft Comput..

[31]  Okyeon Yi,et al.  New Entropy Source for Cryptographic Modules Using OpenMP in Multicore CPUs , 2013 .

[32]  Azman Samsudin,et al.  A new hybrid digital chaotic system with applications in image encryption , 2019, Signal Process..

[33]  Laurent Fesquet,et al.  A Self-Timed Ring Based True Random Number Generator , 2013, 2013 IEEE 19th International Symposium on Asynchronous Circuits and Systems.

[34]  A. Özer,et al.  A novel chaos-based post-processing for TRNG , 2015, Nonlinear Dynamics.

[35]  Lilian Huang,et al.  A new color image encryption using combination of the 1D chaotic map , 2017, Signal Process..

[36]  Jinhu Lu,et al.  A Novel Approach for Constructing One-Way Hash Function Based on a Message Block Controlled 8D Hyperchaotic Map , 2017, Int. J. Bifurc. Chaos.

[37]  Jie Li,et al.  Efficient deterministic and non-deterministic pseudorandom number generation , 2018, Mathematics and Computers in Simulation.

[38]  Azman Samsudin,et al.  Digital Cosine Chaotic Map for Cryptographic Applications , 2019, IEEE Access.