Modeling, design and characterization of delay-chains based true random number generator

Random numbers are required in numerous applications namely in cryptography where randomness is used in security protocols. There are two main classes of Random Number Generators (RNG) : The Pseudo RNG (PRNG) which have a deterministic sequence, and the True RNG (TRNG) which generates unpredictable random numbers. Cryptographic applications use both TRNG and PRNG. The PRNG needs an initial value, or seed, which can be the output of a TRNG. In digital technologies, like FPGAs, TRNG are commonly based on oscillators which have the drawback of being biased by harmonic coupling. In order to assess the entropic quality of TRNGs, standards based on statistical tests have been elaborated by certification organisms namely the NIST and the BSI. However, it is recommended to formalize the stochastic behaviour of the randomness generation process. In this Ph.D, we address the design and quality evaluation of TRNGs in digital circuits. We study of a low-cost digital TRNG without oscillators, hence robust against harmonics attacks. The proposed TRNG exploits both the metastability phenomenon and the jitter noise in CMOS digital flip-flops to generate the random numbers. A stochastic model of this TRNG has been formalized. This model describes the random generation process regardless of the targeted technology. The characterization and evaluation on a prototype circuit, in FPGA and ASIC technologies, has shown that the proposed TRNG architecture generates randomness of good quality and is robust against environmental variations.

[1]  Werner Schindler,et al.  Random Number Generators for Cryptographic Applications , 2009, Cryptographic Engineering.

[2]  J. McNeill,et al.  A digital-PLL-based true random number generator , 2005, Research in Microelectronics and Electronics, 2005 PhD.

[3]  John A. McNeill,et al.  Jitter in oscillators with 1/f noise sources , 2004, 2004 IEEE International Symposium on Circuits and Systems (IEEE Cat. No.04CH37512).

[4]  Werner Schindler,et al.  Efficient Online Tests for True Random Number Generators , 2001, CHES.

[5]  Markus Dichtl Bad and Good Ways of Post-processing Biased Physical Random Numbers , 2007, FSE.

[6]  Srinivas Devadas,et al.  FPGA-Based True Random Number Generation Using Circuit Metastability with Adaptive Feedback Control , 2011, CHES.

[7]  Berk Sunar,et al.  A Robust and Practical Random Number Generator , 2007 .

[8]  Shuichi Ichikawa,et al.  FPGA Implementation of Metastability-Based True Random Number Generator , 2009, IEICE Trans. Inf. Syst..

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

[10]  Jean-Luc Danger,et al.  Design methodology of an ASIC TRNG based on an open-loop delay chain , 2013, 2013 IEEE 11th International New Circuits and Systems Conference (NEWCAS).

[11]  Lee-Sup Kim,et al.  Metastability of CMOS latch/flip-flop , 1990 .

[12]  Jovan Dj. Golic,et al.  High-Speed True Random Number Generation with Logic Gates Only , 2007, CHES.

[13]  Chik How Tan,et al.  Analysis and Enhancement of Random Number Generator in FPGA Based on Oscillator Rings , 2008, 2008 International Conference on Reconfigurable Computing and FPGAs.

[14]  Jean-Sébastien Coron,et al.  Attack and Improvement of a Secure S-Box Calculation Based on the Fourier Transform , 2008, CHES.

[15]  Mathilde Soucarros,et al.  Analyse des générateurs de nombres aléatoires dans des conditions anormales d'utilisation. (Analysis of random number generators in abnormal usage conditions) , 2012 .

[16]  Massimo Alioto,et al.  Analysis and performance evaluation of area-efficient true random bit generators on FPGAs , 2008, 2008 IEEE International Symposium on Circuits and Systems.

[17]  Mario Stipcevic,et al.  Quantum random number generators and their use in cryptography , 2011, 2011 Proceedings of the 34th International Convention MIPRO.

[18]  Simon W. Moore,et al.  The Frequency Injection Attack on Ring-Oscillator-Based True Random Number Generators , 2009, CHES.

[19]  H. Trotter An elementary proof of the central limit theorem , 1959 .

[20]  Young-Sik Kim,et al.  Fast Digital TRNG Based on Metastable Ring Oscillator , 2008, CHES.

[21]  Viktor Fischer,et al.  On the assumption of mutual independence of jitter realizations in P-TRNG stochastic models , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[22]  J.-L. Danger,et al.  High speed true random number generator based on open loop structures in FPGAs , 2009, Microelectron. J..

[23]  Milos Drutarovský,et al.  Model of a true random number generator aimed at cryptographic applications , 2006, 2006 IEEE International Symposium on Circuits and Systems.

[24]  M.B. Ketchen,et al.  Ring oscillators for CMOS process tuning and variability control , 2006, IEEE Transactions on Semiconductor Manufacturing.

[25]  Stefan Mangard,et al.  Power analysis attacks - revealing the secrets of smart cards , 2007 .

[26]  Katja Gruenewald,et al.  Managing Temperature Effects In Nanoscale Adaptive Systems , 2016 .

[27]  Milos Drutarovský,et al.  High Performance True Random Number Generator in Altera Stratix FPLDs , 2004, FPL.

[28]  Francis Olivier,et al.  Electromagnetic Analysis: Concrete Results , 2001, CHES.

[29]  Olivier Sentieys,et al.  On-line monitoring of Random Number Generators for embedded security , 2009, 2009 IEEE International Symposium on Circuits and Systems.

[30]  Cécile Canovas,et al.  Fault Analysis and Evaluation of a True Random Number Generator Embedded in a Processor , 2013, J. Electron. Test..

[31]  Wayne P. Burleson,et al.  Entropy extraction in metastability-based TRNG , 2010, 2010 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST).

[32]  Siva Sai Yerubandi,et al.  Differential Power Analysis , 2002 .

[33]  Werner Schindler,et al.  A Design for a Physical RNG with Robust Entropy Estimators , 2008, CHES.

[34]  Eric Peeters,et al.  On the masking countermeasure and higher-order power analysis attacks , 2005, International Conference on Information Technology: Coding and Computing (ITCC'05) - Volume II.

[35]  Milos Drutarovský,et al.  New High Entropy Element for FPGA Based True Random Number Generators , 2010, CHES.

[36]  E. G. Chester,et al.  Design of an on–chip random number generator using metastability , 2002, Proceedings of the 28th European Solid-State Circuits Conference.

[37]  Daniel E. Holcomb,et al.  Power-Up SRAM State as an Identifying Fingerprint and Source of True Random Numbers , 2009, IEEE Transactions on Computers.

[38]  Vaughn Betz,et al.  A comprehensive approach to modeling, characterizing and optimizing for metastability in FPGAs , 2010, FPGA '10.

[39]  Slobodan Petrovic,et al.  Behavioral model of TRNG based on oscillator rings implemented in FPGA , 2011, 14th IEEE International Symposium on Design and Diagnostics of Electronic Circuits and Systems.

[40]  Bruno Robisson,et al.  Local and Direct EM Injection of Power Into CMOS Integrated Circuits , 2011, 2011 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[41]  R. Jacob Baker,et al.  CMOS Circuit Design, Layout, and Simulation , 1997 .

[42]  Igor E. Shparlinski,et al.  The Insecurity of the Elliptic Curve Digital Signature Algorithm with Partially Known Nonces , 2003, Des. Codes Cryptogr..

[43]  Paul C. Kocher,et al.  Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems , 1996, CRYPTO.

[44]  Volkan Kursun,et al.  Impact of temperature fluctuations on circuit characteristics in 180nm and 65nm CMOS technologies , 2006, 2006 IEEE International Symposium on Circuits and Systems.

[45]  H. Weinfurter,et al.  A fast and compact quantum random number generator , 1999, quant-ph/9912118.

[46]  Jean-Luc Danger,et al.  Stochastic Model of a Metastability-Based True Random Number Generator , 2013, TRUST.

[47]  Sampsa Hautaniemi,et al.  Random Number Generator , 2018, Tolerance Analysis of Electronic Circuits Using MATHCAD.

[48]  Rajarshi Roy,et al.  Scalable parallel physical random number generator based on a superluminescent LED. , 2011, Optics letters.

[49]  Bruno Robisson,et al.  Contactless Electromagnetic Active Attack on Ring Oscillator Based True Random Number Generator , 2012, COSADE.

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

[51]  Jiangjiang Zhang,et al.  High-speed physical random number generation using a chaotic semiconductor laser , 2011, International Conference on Optical Instruments and Technology.

[52]  J.-L. Danger,et al.  Fast True Random Generator in FPGAs , 2007, 2007 IEEE Northeast Workshop on Circuits and Systems.

[53]  Pierre L'Ecuyer,et al.  TestU01: A C library for empirical testing of random number generators , 2006, TOMS.

[54]  Ran Ginosar,et al.  Metastability and Synchronizers: A Tutorial , 2011, IEEE Design & Test of Computers.

[55]  V. Scarani,et al.  The security of practical quantum key distribution , 2008, 0802.4155.

[56]  David Blaauw,et al.  True Random Number Generator With a Metastability-Based Quality Control , 2007, IEEE Journal of Solid-State Circuits.

[57]  Kris Gaj,et al.  An embedded true random number generator for FPGAs , 2004, FPGA '04.

[58]  Peter Alfke Metastable Recovery in Virtex-II Pro FPGAs , 2005 .

[59]  Markus Dichtl,et al.  How to Predict the Output of a Hardware Random Number Generator , 2003, CHES.

[60]  Octavian Cret,et al.  High performance true random number generator based on FPGA block RAMs , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[61]  Berk Sunar,et al.  A Provably Secure True Random Number Generator with Built-In Tolerance to Active Attacks , 2007, IEEE Transactions on Computers.

[62]  Lilian Bossuet,et al.  Electromagnetic analysis on ring oscillator-based true random number generators , 2013, 2013 IEEE International Symposium on Circuits and Systems (ISCAS2013).

[63]  Ingrid Verbauwhede,et al.  FPGA Vendor Agnostic True Random Number Generator , 2006, 2006 International Conference on Field Programmable Logic and Applications.

[64]  Peng Xu,et al.  Stochastic model and simulation of a random number generator circuit , 2008, 2008 IEEE International Symposium on Circuits and Systems.

[65]  Milos Drutarovský,et al.  True Random Number Generator Embedded in Reconfigurable Hardware , 2002, CHES.

[66]  Arjen K. Lenstra,et al.  Ron was wrong, Whit is right , 2012, IACR Cryptol. ePrint Arch..

[67]  Eric C. Rouchka,et al.  DNA-based random number generation in security circuitry , 2010, Biosyst..

[68]  A.A. Abidi,et al.  Phase Noise and Jitter in CMOS Ring Oscillators , 2006, IEEE Journal of Solid-State Circuits.

[69]  Alfred Menezes,et al.  Handbook of Applied Cryptography , 2018 .

[70]  Chik How Tan,et al.  A Comparison of Post-Processing Techniques for Biased Random Number Generators , 2011, WISTP.

[71]  Thomas E. Tkacik A Hardware Random Number Generator , 2002, CHES.

[72]  Clark Foley Characterizing Metastability Practical Measurement Techniques to accurately determine device dependent coefficients used to predict synchronizer MTBF , 1996 .

[73]  Hendrikus J. M. Veendrick,et al.  The behaviour of flip-flops used as synchronizers and prediction of their failure rate , 1980 .

[74]  Igor E. Shparlinski,et al.  The Insecurity of the Digital Signature Algorithm with Partially Known Nonces , 2002, Journal of Cryptology.

[75]  Paul C. Kocher,et al.  The intel random number generator , 1999 .

[76]  Jean-Luc Danger,et al.  FPGA Design of an Open-Loop True Random Number Generator , 2013, 2013 Euromicro Conference on Digital System Design.

[77]  Milos Drutarovský,et al.  A Simple PLL-Based True Random Number Generator for Embedded Digital Systems , 2004, Comput. Artif. Intell..

[78]  Denis Réal,et al.  Influence of the temperature on true random number generators , 2011, 2011 IEEE International Symposium on Hardware-Oriented Security and Trust.

[79]  Sylvain Guilley,et al.  Security evaluation of application-specific integrated circuits and field programmable gate arrays against setup time violation attacks , 2011, IET Inf. Secur..

[80]  Stefan Mangard,et al.  Practical Second-Order DPA Attacks for Masked Smart Card Implementations of Block Ciphers , 2006, CT-RSA.

[81]  J.D. Golic,et al.  New Methods for Digital Generation and Postprocessing of Random Data , 2006, IEEE Transactions on Computers.

[82]  Alessandro Barenghi,et al.  Fault Injection Attacks on Cryptographic Devices: Theory, Practice, and Countermeasures , 2012, Proceedings of the IEEE.