Nonlinear Dynamics

, Volume 82, Issue 4, pp 1913–1922 | Cite as

GPUs and chaos: a new true random number generator

  • Je Sen Teh
  • Azman Samsudin
  • Mishal Al-Mazrooie
  • Amir Akhavan
Original Paper


For applications where security and unpredictability is of utmost importance, true random number generators (TRNGs) play a heavy role compared to its pseudo-random counterparts. Most TRNGs obtain randomness from physical phenomena such as radio noise, radioactive decay or thermal noise that are unpredictable. These applications usually require external hardware to extract entropy and convert them into digital signals. This paper introduces a TRNGs that utilizes graphics processing units as the source of entropy. Its unpredictable behavior is harnessed by computing chaotic maps that are highly sensitive to slight changes to their control parameters and have pseudo-random behavior. A simple post-processing function based on modular addition and XOR is then used to achieve an unbiased output. The security of the proposed TRNG is evaluated using statistical test suites such as the NIST SP 800-22, DIEHARD and ENT, as well as entropy analysis to determine unpredictability. Results indicate that the proposed TRNG has strong statistical quality of random numbers and high throughput without the need of external specialized equipment.


True random number generator Chaotic map GPU  Security evaluation CUDA 



This work has been supported by Fundamental Research Grant Scheme (FRGS - 203/PKOMP/6711427) funded by the Ministry of Higher Education of Malaysia (MOHE).


  1. 1.
    Walker, J.: HotBits: genuine random numbers, generated by radioactive decay. online at (2001)
  2. 2.
    Jun, B., Kocher, P.: The intel random number generator. White Paper Prepared for Intel Corporation, Cryptography Research Inc. online at (1999)
  3. 3.
    Cret, O., Gyorfi, T., Suciu, A.: Implementing true random number generators based on high fanout nets. Roman. J. Info. Sci. Technol. 15(3), 277–298 (2012)Google Scholar
  4. 4.
    R.B.P. Dept. The Evaluation of Randomness of RPG100 by Using NIST and DIEHARD Tests. Technical report, FDK Corporation (2003)Google Scholar
  5. 5.
    Cicek, I., Pusane, A.E., Dundar, G.: A novel design method for discrete time chaos based true random number generators. Integr. VLSI J. 47(1), 38–47 (2014)CrossRefGoogle Scholar
  6. 6.
    Kanter, I., Aviad, Y., Reidler, I., Cohen, E., Rosenbluh, Michael: An optical ultrafast random bit generator. Nat. Photon. 4(December), 2–5 (2009)Google Scholar
  7. 7.
    Li, S., Wang, L., Wu, L.A., Ma, H.Q., Zhai, Guang-Jie: True random number generator based on discretized encoding of the time interval between photons. J. Opt. Soc. Am. A 30(1), 124–127 (2013)CrossRefGoogle Scholar
  8. 8.
    Jofre, M., Curty, M., Steinlechner, F., Anzolin, G., Torres, J.P., Mitchell, M.W., Pruneri, V.: True random numbers from amplified quantum vacuum. Opt. Express 19(21), 20665–20672 (2011)CrossRefGoogle Scholar
  9. 9.
    Zhou, Q., Liao, X., Wong, K.W., Yue, H.U., Xiao, Di: True random number generator based on mouse movement and chaotic hash function. Info. Sci. 179(19), 3442–3450 (2009)CrossRefGoogle Scholar
  10. 10.
    Xingyuan, W., Xue, Q., Lin, T.: A novel true random number generator based on mouse movement and a one-dimensional chaotic map. Math. Probl. Eng. 2012, 1–9 (2012)MathSciNetGoogle Scholar
  11. 11.
    Zimmermann, P.: PGP Source Code and Internals. MIT Press, Cambridge (1995)Google Scholar
  12. 12.
    Gerguri, S., Matyá\(\check{\rm s}\)íha, Z., Smolík, L.: Random number generation based on fingerprints. In: Information Security Theory and Practices: Security and Privacy of Pervasive Systems and Smart Devices. Lecture Notes in Computer Science, vol. 6033, pp. 170–182 (2010)Google Scholar
  13. 13.
    Zhu, H., Zhao, C., Zhang, X., Yang, L.: A novel iris and chaos-based random number generator. Comput. Secur. 36, 40–48 (2013)CrossRefGoogle Scholar
  14. 14.
    Davis, D., Ihaka, R., Fenstermacher, P.: Cryptographic randomness from air turbulence in disk drives. In: Advances in Cryptology – Crypto ‘94. Lecture Notes in Computer Science, vol. 839, pp.114–120 (2010)Google Scholar
  15. 15.
    Hart-Davis, D.: Entropy Pool random number generator. online at
  16. 16.
    Kim, J., Yoo, T., Yeom, Y., Yi, O.: New entropy source for cryptographic modules using openMP in multicore CPUs. Int. J. Secur. Appl. 7(4), 445–452 (2013)Google Scholar
  17. 17.
    Muller, S.: CPU time jitter based non-physical true random number generator (2014)Google Scholar
  18. 18.
    Chan, J.J.M., Sharma, B.Lv.J., Thomas, G., Thulasiram, R., Thulasiraman, P.: True random number generator using GPUs and histogram equalization techniques. In: IEEE International Conference on High Performance Computing and Communications (61), 161–170 (2011)Google Scholar
  19. 19.
    Yeom, Y.: Generating random numbers for cryptographic modules using race conditions in GPU. In: Computer Applications for Graphics, Grid Computing, and Industrial Environment, pp. 96–102. (2012)Google Scholar
  20. 20.
    Lee, G., Pyo, C.: GPUs as high-performance random sources. Electron. Lett. 50(8), 602–604 (2014)CrossRefGoogle Scholar
  21. 21.
    Pang, W.M., Wong, T.T., Heng, P.A.: Generating massive high-quality random numbers using GPU. In: IEEE World Congress on Computational Intelligence, pp. 841–847. (2008)Google Scholar
  22. 22.
    Passerat-Palmbach, J.: Pseudo-random number generation on GP-GPU. In: Principles of Advanced and Distributed Simulation (PADS), 2011 IEEE Workshop on, pp. 1–8. (2011)Google Scholar
  23. 23.
    Gao, S., Peterson, G.D.: GASPRNG: GPU accelerated scalable parallel random number generator library. Comput. Phys. Commun. 184(4), 1241–1249 (2013)CrossRefGoogle Scholar
  24. 24.
    Belsare, A., Liu, S., Khatri, S.: GPU implementation of a scalable non-linear congruential generator for cryptography applications. In: Proceedings of the 23rd ACM International Conference on Great Lakes Symposium on VLSI - GLSVLSI ’13, pp. 89–94. (2013)Google Scholar
  25. 25.
    Barash, L.Y., Shchur, L.N.: PRAND: GPU accelerated parallel random number generation library: using most reliable algorithms and applying parallelism of modern GPUs and CPUs. Comput. Phys. Commun. 185, 1343–1353 (2014)CrossRefGoogle Scholar
  26. 26.
    Langdon, W.B., Von Neumann, J.: A fast high quality pseudo random number generator for graphics processing units. In: IEEE World Congress on Computational Intelligence, pp. 459–465. (2008)Google Scholar
  27. 27.
    Boyer, M., Skadron, K., Weimer, W.: Automated dynamic analysis of CUDA programs. In: Third Workshop on Software Tools for MultiCore Systems (2008)Google Scholar
  28. 28.
    Strogatz, S.H.: Nonlinear dynamics and chaos: with applications to physics, biology, chemistry, and engineering (studies in nonlinearity). studies in nonlinearity. Perseus Books Group, 1st edn, January (1994)Google Scholar
  29. 29.
    Kocarev, L., Tasev, Z.: Public-key encryption based on Chebyshev maps. In: Proceedings of the 2003 International Symposium on Circuits and Systems, 2003. ISCAS ’03. 3 (2003)Google Scholar
  30. 30.
    Behnia, S., Akhshani, A., Ahadpour, S., Mahmodi, H., Akhavan, Amir: A fast chaotic encryption scheme based on piecewise nonlinear chaotic maps. Phys. Lett. A 366(4–5), 391–396 (2007)CrossRefGoogle Scholar
  31. 31.
    Wang, X., Wang, Q.: A novel image encryption algorithm based on dynamic s-boxes constructed by chaos. Nonlinear Dyn. 75(3), 567–576 (2014)CrossRefGoogle Scholar
  32. 32.
    Akhavan, A., Samsudin, A., Akhshani, A.: Hash function based on piecewise nonlinear chaotic map. Chaos, Solitons and Fractals 42, 1046–1053 (2009)MATHCrossRefGoogle Scholar
  33. 33.
    Li, Y., Xiao, D., Deng, S., Han, Q., Zhou, G.: Parallel hash function construction based on chaotic maps with changeable parameters. Neural Comput. Appl. 20(8), 1305–1312 (2011). Cited By (since 1996):1CrossRefGoogle Scholar
  34. 34.
    Kanso, A., Ghebleh, M.: A fast and efficient chaos-based keyed hash function. Commun. Nonlinear Sci. Numer. Simul. 18, 109–123 (2012)MathSciNetCrossRefGoogle Scholar
  35. 35.
    Teh, J.S., Samsudin, A., Akhavan, A.: Parallel chaotic hash function based on the shuffle-exchange network. Nonlinear Dyn. 81(3), 1067–1079 (2015)Google Scholar
  36. 36.
    Farash, M.S., Attari, M.A.: An efficient and provably secure three-party password-based authenticated key exchange protocol based on Chebyshev chaotic maps. Nonlinear Dyn. 77(1–2), 399–411 (2014)MathSciNetCrossRefGoogle Scholar
  37. 37.
    Farash, M.S., Attari, M.A.: Cryptanalysis and improvement of a chaotic map-based key agreement protocol using Chebyshev sequence membership testing. Nonlinear Dyn. 76(2), 1203–1213 (2014)MATHMathSciNetCrossRefGoogle Scholar
  38. 38.
    Farash, M.S., Attari, M.A., Kumari, S.: Cryptanalysis and improvement of a three-party password-based authenticated key exchange protocol with user anonymity using extended chaotic maps. In: International Journal of Communication Systems (2014)Google Scholar
  39. 39.
    Avaroğlu, E., Tuncer, T., Özer, A.B., Ergen, B., Tűrk, M.: A novel chaos-based post-processing for TRNG. Nonlinear Dyn. 1–11 (2015)Google Scholar
  40. 40.
    Tlelo-Cuautle, E., Rangel-Magdaleno, J.J., Pano-Azucena, A.D., Obeso-Rodelo, P.J., Nunez-Perez, J.C.: FPGA realization of multi-scroll chaotic oscillators. Commun. Nonlinear Sci. Numer. Simul. 27(1–3), 66–80 (2015)MathSciNetCrossRefGoogle Scholar
  41. 41.
    de la Fraga, L.G., Tlelo-Cuautle, E.: Optimizing the maximum Lyapunov exponent and phase space portraits in multi-scroll chaotic oscillators. Nonlinear Dyn. 76(2), 1503–1515 (2014)Google Scholar
  42. 42.
    de la Vega, J.L., Valtierra Sánchez, Tlelo-Cuautle, E.: Simulation of piecewise-linear one-dimensional chaotic maps by verilog-a. In: IETE Technical Review, pp. 1–7 (2015)Google Scholar
  43. 43.
    Alligood, K.T., Sauer, T.D., Yorke, J.A.: Chaos, An Introduction to Dynamical Systems. Springer, New York (2000)Google Scholar
  44. 44.
    Zheng, M., Ravi, V.T., Qin, F., Agrawal, G.: GRace: a low-overhead mechanism for detecting data races in GPU programs. ACM SIGPLAN Not. 46(8), 135–145 (2011)CrossRefGoogle Scholar
  45. 45.
    Oteo, J., Ros, J.: Double precision errors in the logistic map: statistical study and dynamical interpretation. Phys. Rev. E 76(3), 036214 (2007)CrossRefGoogle Scholar
  46. 46.
    Rukhin, A., Soto, J., Nechvatal, J.: A statistical test suite for random and pseudorandom number generators for cryptographic applications. In: NIST Special Publication 800-22. National Institute of Standards and Technology (2010)Google Scholar
  47. 47.
    Marsaglia, G.: DIEHARD battery of tests of randomness. online at (1996)
  48. 48.
    Walker, J.: A pseudorandom number sequence test program. online at (2008)
  49. 49.
    Addabbo, Tommaso, Fort, Ada, Rocchi, Santina, Vignoli, Valerio: Chaos based generation of true random bits. In: Kocarev, Ljupco, Galias, Zbigniew, Lian, Shiguo (eds.) Intelligent Computing Based on Chaos, volume 184 of Studies in Computational Intelligence, pp. 355–377. Springer, Berlin Heidelberg (2009)CrossRefGoogle Scholar
  50. 50.
    Dodis, Y., Pointcheval, D., Ruhault, S., Vergniaud, D., Wichs, D.: Security analysis of pseudo-random number generators with input: /dev/random is not robust. In: Proceedings of the 2013 ACM SIGSAC Conference on Computer & #38; Communications Security. CCS ’13, pp. 647–658. ACM, New York (2013)Google Scholar
  51. 51.
    Schindler, W., Killmann, W.: Evaluation criteria for true (physical) random number generators used in cryptographic applications. In: Cryptographic Hardware and Embedded Systems - CHES 2002. volume 2523 of Lecture Notes in Computer Science, pp. 431–449. Springer, Berlin Heidelberg (2003)Google Scholar
  52. 52.
    Coron, J.S.: On the security of random sources. In: Public Key Cryptography. volume 1560 of Lecture Notes in Computer Science, pp. 29–42. Springer, Berlin Heidelberg (1999)Google Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2015

Authors and Affiliations

  • Je Sen Teh
    • 1
  • Azman Samsudin
    • 1
  • Mishal Al-Mazrooie
    • 1
  • Amir Akhavan
    • 1
  1. 1.School of Computer SciencesUniversiti Sains Malaysia (USM)MindenMalaysia

Personalised recommendations