Abstract
True random number generator (TRNG) is a crucial part of any modern cryptographic primitives. Designing high entropy TRNG is still a challenging task to compete. Usually, TRNGs use physical mean as random source to generate random numbers which are unpredictable. TRNG has different application but not limited to symmetric key cryptography, random simulation, nonce, user authentication protocols, and gaming. In this work, ring oscillator (RO)-based pyramid entropy source is proposed for generating device-independent true random numbers. The de-synchronization technique has been utilized for extracting the randomness from entropy source wherein linear-feedback shift register (LFSR) is used as post-processor to improve the statistical characteristics of proposed TRNG. The design of TRNG has been implemented on Altera Cyclone II EP2C20F484C6 FPGA which consumed 892 logic elements (5%), 67.75 mW power to generate 131,072 true random bits. It yields maximum entropy of 0.999987 through entropy analysis. Statistical properties of the proposed TRNG have been evaluated using NIST tests. Restart experiment is also conducted to evidence the true randomness of the proposed TRNG.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Bagini, V., Bucci, M.: A design of reliable true random number generator for cryptographic applications. Cryptogr. Hardw. Embed. Syst., 204–218 (1999)
Dichtl, M., Golić, J.D.: High-speed true random number generation with logic gates only. Cryptogr. Hardw. Embed. Syst., 45–62 (2007). https://doi.org/10.1007/978-3-540-74735-2_4
Danger, J.L., Guilley, S., Hoogvorst, P.: High speed true random number generator based on open loop structures in FPGAs. Microelectron. J., 40, 1650–1656 (2009). https://doi.org/10.1016/j.mejo.2009.02.004
Deak, N., Gyorfi, T., Marton, K., Vacariu, L., Cret, O.: Highly efficient true random number generator in FPGA devices using phase-locked loops. In: 20th International Conference on Control Systems and Computer Science (2015), 453–458, (2015)
Güneysu, T., Paar, C.: Transforming write collisions in block RAMs into security applications. In: Proceedings of the 2009 International Conference on Field-Programmable Technology, FPT’09. (2009) 128–134. https://doi.org/10.1109/fpt.2009.5377631
Johnson, A.P., Chakraborty, R.S., Mukhopadhyay, D.: An improved DCM-based tunable true random number generator for xilinx FPGA. IEEE Trans. Circuits Syst. II Express Briefs 99 (2016)
Park, M., Rodgers, J.C., Lathrop, D.P.: True random number generation using CMOS Boolean chaotic oscillator. Microelectronics J. 46(12), 1364–1370 (2015)
Sunar, B., Martin, W.J., Stinson, D.R.: A provably secure true random number generator with built-in tolerance to active attacks. IEEE Trans. Comput. 56(1), 109–119 (2007)
Schellekens, D., Preneel, B., Verbauwhede, I.: FPGA vendor agnostic true random number generator. In: 2006 International Conference on Field Programmable Logic and Applications FPL, 139–144 (2006). https://doi.org/10.1109/fpl.2006.311206
Wold, K., Tan, C.H.: Analysis and enhancement of random number generator in FPGA based on oscillator rings. In: Proceedings of International Conference on Reconfigurable Computing and FPGAs, ReConFig, vol. 2009, pp. 385–390 (2008)
Marghescu, A., Teseleanu, G., Maimut, D.S., Neacsa, T., Svasta, P.: Adapting a ring oscillator-based true random number generator for Zynq system on chip embedded platform. In: 2014 IEEE 20th International Symposium for Design and Technology in Electronic Packaging, SIITME, 197–202 (2014)
Varchola, M., Drutarovsky, M.: New high entropy element for FPGA based true random number generators in cryptographic hardware and embedded systems. In: Mangard, S., Standaert, F.-X. (eds.) CHES 2010: 12th International Workshop, Santa Barbara, USA, August 17–20, 2010. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 351–365 (2010)
Jessa, M., Matuszewski, L.: The use of delay lines in a ring-oscillator-based combined true random number generator. 2012 International Conference on Signals and Electronic Systems ICSES (2012)
Bassham, L.E., et al.: A statistical test suite for random and pseudorandom number generators for cryptographic applications. Natl. Inst. Stand. Technol., Gaithersburg, MD, USA, Tech. Rep., no. April, 2010
Martin, H., Peris-Lopez, P., Tapiador, J.E., San Millan, E.: A new TRNG based on coherent sampling with self-timed rings. IEEE Trans. Ind. Inf. 12(1), 91–100 (2016)
Fischer, V., Bernard, F.: True random number generators in FPGAs. Security trends for FPGAS, 73–100 (2011). https://doi.org/10.1007/978-94-007-1338-3.2011
Fischer, V., Drutarovský, M., Šimka, M., Bochard, N.: High performance true random number generator in Altera Stratix FPLDs. In: Becker, J., Platzner, M., Vernalde, S. (eds.) Field Programmable Logic and Application, 14th International Conference FPL 2004, Leuven, Belgium, Aug 30–Sept 1, 2004. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 555–564 (2004). https://doi.org/10.1007/978-3-540-30117-2_57
Kwok, S.H.M., Lam, E.Y.: FPGA-based high-speed true random number generator for cryptographic applications. In: TENCON 2006—2006 IEEE Region 10 Conference, pp. 1–4 (2006). https://doi.org/10.1109/tencon.2006.344013
Deak, N., Gyorfi, T., Marton, K., Vacariu, L., Cret, O.: Highly efficient true random number generator in FPGA devices using phase-locked loops. In: 2015 20th International Conference on Control Systems and Computer Science, pp. 453–458 (2015)
Kohlbrenner, P., Gaj, K.: An embedded true random number generator for FPGAs. In: Proceedings of the 2004 ACM/SIGDA 12th International Symposium on Field Programmable Gate Arrays, ACM, New York, NY, USA, pp. 71–78 (2004). https://doi.org/10.1145/968280.968292
Varchola, M., Drutarovsky, M.: New high entropy element for FPGA based true random number generators. In: Mangard, S., Standaert, F.-X. (eds.) Cryptographic Hardware and Embedded Systems CHES 2010 12th International Workshop. St. Barbar. USA, Aug 17–20, 2010. Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 351–365 (2010). https://doi.org/10.1007/978-3-642-15031-9_24
Wieczorek, P.Z.: Dual-metastability FPGA-based true random number generator. Electron. Lett. 49, 744–745 (2013). https://doi.org/10.1049/el.2012.4126
Valtchanov, B., Fischer, V., Aubert, A.: Enhanced TRNG based on the coherent sampling. In: 3rd International Conference on Circuits, Signals, and Systems SCS 2009, 1–6 (2009). https://doi.org/10.1109/icscs.2009.5412601
Güneysu, T., Paar, C..: Transforming write collisions in block RAMs into security applications. In: Proceedings of the 2009 International Conference on Field-Programmable Technology, FPT’09, 128–134 (2009). https://doi.org/10.1109/fpt.2009.5377631
Güneysu, T.: True random number generation in block memories of reconfigurable devices. In: 2010 International Conference on Field-Programmable Technol. FPT’10, 200–207 (2010). https://doi.org/10.1109/fpt.2010.5681499
Hisashi, H., Ichikawa, S.: FPGA implementation of metastability-based true random number generator. IEICE Trans. Inf. E95–D, 426–436 (2012). https://doi.org/10.1587/transinf.e95.d.426
Acknowledgements
The authors wish to thank SASTRA University for providing infrastructure through the Research & Modernization Fund (Ref. No: R&M/0026/SEEE–010/2012–13) to carry out the research work.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Rethinam, S., Rajagopalan, S., Arumugham, S., Janakiraman, S., Lakshmi, C., Rengarajan, A. (2020). Pyramid Entropy Source for True Random Number Generator on FPGA. In: Pati, B., Panigrahi, C., Buyya, R., Li, KC. (eds) Advanced Computing and Intelligent Engineering. Advances in Intelligent Systems and Computing, vol 1089. Springer, Singapore. https://doi.org/10.1007/978-981-15-1483-8_3
Download citation
DOI: https://doi.org/10.1007/978-981-15-1483-8_3
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-1482-1
Online ISBN: 978-981-15-1483-8
eBook Packages: EngineeringEngineering (R0)