Abstract
Random numbers are important ingredients in a number of applications. Especially in a security context, they must be well distributed and unpredictable. We investigate the practical use of random number generators (RNGs) that are built from digital elements found in FPGAs. For this, we implement different types of ring oscillators (ROs) and memory collision-based circuits on FPGAs from major vendors. Implementing RNGs on the same device as the rest of the system benefits an overall reduction of vulnerability to attacks and wire tapping. Nevertheless, we investigate different attacks by tampering with power supply, chip temperature, and by exposition to strong magnetic fields and X-radiation. We also consider their usability as massively deployed components, whose functionality cannot be tested individually anymore, by conducting a technology invariance experiment. Our experiments show that BlockRAM-based RNGs cannot be considered as a suitable entropy source. We further show that RO-based RNGs work reliably under a wide range of operating conditions. While magnetic fields and X-rays did not induce any notable change, voltage and temperature variations caused an increase in propagation delays within the circuits. We show how reliable RNGs can be constructed and deployed on FPGAs.
- Lawrence E. Bassham III. 2010. A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications. Retrieved from http://csrc.nist.gov/groups/ST/toolkit/rng.Google Scholar
- Abdelkarim Cherkaoui, Viktor Fischer, Laurent Fesquet, and Alain Aubert. 2013. A Very High Speed True Random Number Generator with Entropy Assessment. In Cryptographic Hardware and Embedded Systems—CHES 2013, Guido Bertoni and Jean-Sébastien Coron (Eds.). Lecture Notes in Computer Science, Vol. 8086. Springer, Berlin, 179--196. DOI:http://dx.doi.org/10.1007/978-3-642-40349-1_11 Google Scholar
Digital Library
- Markus Dichtl. 2012a. Mehrspur-ringoszillator. Research Project DICECUP; Internal Communications.Google Scholar
- Markus Dichtl. 2012b. Messung der Schiefe und Klebrigkeit am Generator BRAMX. Research Project DICECUP; Internal Communications.Google Scholar
- Markus Dichtl. 2013. On ring oscillator based true random number generators and some of their variants. CryptArchi 2013.Google Scholar
- Markus Dichtl and Jovan Dj. Golić. 2007. High-Speed True Random Number Generation with Logic Gates Only. In CHES 2007, Lecture Notes in Computer Science, Vol. 4727. Springer, Berlin, 45--62. DOI:http://dx.doi.org/10.1007/978-3-540-74735-2_4 Google Scholar
Digital Library
- Jovan Dj. Golić. 2006. New methods for digital generation and postprocessing of random data. IEEE Transactions on Computers 55, 10, 1217--1229. DOI:http://dx.doi.org/10.1109/TC.2006.164 Google Scholar
Digital Library
- Tamas Györfi, Octavian Creţ, and Alin Suciu. 2009. High performance true random number generator based on FPGA block RAMs. In Proceedings of the 2009 IEEE International Symposium on Parallel and Distributed Processing (IPDPS’09). IEEE Computer Society, Washington, DC, 1--8. DOI:http://dx.doi.org/10.1109/IPDPS.2009.5161207 Google Scholar
Digital Library
- Tim Güneysu and Christof Paar. 2009. Transforming write collisions in block RAMs into security applications. In International Conference on Field-Programmable Technology, 2009 (FPT’09), 128--134. DOI:http://dx.doi.org/10.1109/FPT.2009.5377631Google Scholar
Cross Ref
- Christian Hochberger, Changgong Li, Michael Raitza, and Markus Vogt. 2012. Influence of operating conditions on ring oscillator-based entropy sources in FPGAs. In 2012 22nd International Conference on Field Programmable Logic and Applications (FPL), 555--558. DOI:http://dx.doi.org/10.1109/FPL.2012.6339378Google Scholar
Cross Ref
- Ari Juels, Markus Jakobsson, Elizabeth Shriver, and Bruce K. Hillyer. 2000. How to turn loaded dice into fair coins. IEEE Transactions on Information Theory 46, 3, 911--921. DOI:http://dx.doi.org/10.1109/18.841170 Google Scholar
Digital Library
- Marvin S. Keshner. 1982. 1/f Noise (IEEE), Vol. 70. 212--218. DOI:http://dx.doi.org/10.1109/PROC.1982.12282Google Scholar
- Hans Kosina, Goran Kaiblinger-Grujin, and Siegfried Selberherr. 1997. A new approach to ionized-impurity scattering. In 1997 International Conference on Simulation of Semiconductor Processes and Devices (SISPAD’97), 205--208. DOI:http://dx.doi.org/10.1109/SISPAD.1997.621373Google Scholar
Cross Ref
- Abhranil Maiti, Logan McDougall, and Patrick Schaumont. 2011. The Impact of aging on an FPGA-based physical unclonable function. In FPL 2011. 151--156. DOI:http://dx.doi.org/10.1109/FPL.2011.35 Google Scholar
Digital Library
- Abhranil Maiti, Raghunandan Nagesh, Anand Reddy, and Patrick Schaumont. 2009. Physical unclonable function and true random number generator: A compact and scalable implementation. In Proceedings of the 19th ACM Great Lakes Symposium on VLSI (GLSVLSI’09). ACM, New York, NY, 425--428. DOI:http://dx.doi.org/10.1145/1531542.1531639 Google Scholar
Digital Library
- Mehrdad Majzoobi, Farinaz Koushanfar, and Srinivas Devadas. 2011. FPGA-Based True Random Number Generation Using Circuit Metastability with Adaptive Feedback Control. In Cryptographic Hardware and Embedded Systems -- (CHES’11), Bart Preneel and Tsuyoshi Takagi (Eds.). Lecture Notes in Computer Science, Vol. 6917. Springer, Berlin, 17--32. DOI:http://dx.doi.org/10.1007/978-3-642-23951-9_2 Google Scholar
Digital Library
- John von Neumann. 1963. Various techniques for use in connection with random digits. In Von Neumann’s Collected Works, Vol. 5. Pergamon, 768--770.Google Scholar
- G. Richard Newell. 2011. Measurement of FPGA ring oscillator noise, and analysis using the Allan variance method. Presentation at CryptArchi 2011.Google Scholar
- Charles W. O’Donnell, G. Edward Suh, and Srinivas Devadas. 2004. PUF-based random number generation. MIT CSAIL CSG Technical Memo 481.Google Scholar
- Michael Raitza, Markus Vogt, Christian Hochberger, and Thilo Pionteck. 2014. Influence of magnetic fields and X-radiation on ring oscillators in FPGAs. In 21st Reconfigurable Architectures Workshop (RAW). Google Scholar
Digital Library
- J. R. Schwank, M. R. Shaneyfelt, J. A. Felix, P. E. Dodd, J. Baggio, V. Ferlet-Cavrois, P. Paillet, G. L. Hash, R. S. Flores, L. W. Massengill, and E. Blackmore. 2006. Effects of total dose irradiation on single-event upset hardness. IEEE Transactions on Nuclear Science 53, 4, 1772--1778. DOI:http://dx.doi.org/10.1109/TNS.2006.877896Google Scholar
Cross Ref
- Claude E. Shannon. 1948. A mathematical theory of communication. Bell System Technical Journal 27, 3, 379--423. DOI:http://dx.doi.org/10.1002/j.1538-7305.1948.tb01338.xGoogle Scholar
Digital Library
- Edward A. Stott, Justin S. J. Wong, Pete Sedcole, and Peter Y. K. Cheung. 2010. Degradation in FPGAs: Measurement and modelling. In Symposium on FPGAs (FPGA’10). ACM, New York, NY, 229--238. DOI:http://dx.doi.org/10.1145/1723112.1723152 Google Scholar
Digital Library
- Michal Varchola, Milos Drutarovsky, and Viktor Fischer. 2013. New universal element with integrated PUF and TRNG capability. In 2013 International Conference on Reconfigurable Computing and FPGAs (ReConFig). 1--6. DOI:http://dx.doi.org/10.1109/ReConFig.2013.6732311Google Scholar
Cross Ref
- Todd C. Weigandt, Beomsup Kim, and Paul R. Gray. 1994. Analysis of timing jitter in CMOS ring oscillators. In 1994 IEEE International Symposium on Circuits and Systems (ISCAS’94), 4, 27--30. DOI:http://dx.doi.org/10.1109/ISCAS.1994.409188Google Scholar
Index Terms
RAW 2014: Random Number Generators on FPGAs
Recommendations
Enhancing the Randomness of a Combined True Random Number Generator Based on the Ring Oscillator Sampling Method
RECONFIG '11: Proceedings of the 2011 International Conference on Reconfigurable Computing and FPGAsAn efficient method for generating number sequences that pass all statistical tests is combining numbers produced by many independent generators. Excellent statistical properties are very important in many applications but they are not sufficient in ...
True Random Number Generator Based on Ring Oscillator PUFs
ICMSSP 2017: Proceedings of the 2017 2nd International Conference on Multimedia Systems and Signal ProcessingRandom number generator is an important building block for many cryptographic primitives and protocols. Random numbers are used to initialize key bits, nonces and initialization vectors and seed pseudo-random number generators. Physical Unclonable ...
On-the-Fly Evaluation of FPGA-Based True Random Number Generator
ISVLSI '09: Proceedings of the 2009 IEEE Computer Society Annual Symposium on VLSIMany embedded security chips require a high-quality digital True Random Number Generator (TRNG). Recently, some new TRNGs have been proposed in the literature, innovating by their new architectures. Moreover, some of them don't need to use the post-...






Comments