{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,31]],"date-time":"2026-03-31T22:15:22Z","timestamp":1774995322258,"version":"3.50.1"},"reference-count":37,"publisher":"MDPI AG","issue":"4","license":[{"start":{"date-parts":[[2023,10,30]],"date-time":"2023-10-30T00:00:00Z","timestamp":1698624000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Cryptography"],"abstract":"<jats:p>In this paper, we present approaches to generating random numbers, along with potential applications. Rather than trying to provide extensive coverage of several techniques or algorithms that have appeared in the scientific literature, we focus on some representative approaches, presenting their workings and properties in detail. Our goal is to delineate their strengths and weaknesses, as well as their potential application domains, so that the reader can judge what would be the best approach for the application at hand, possibly a combination of the available approaches. For instance, a physical source of randomness can be used for the initial seed; then, suitable preprocessing can enhance its randomness; then, the output of preprocessing can feed different types of generators, e.g., a linear congruential generator, a cryptographically secure one and one based on the combination of one-way hash functions and shared key cryptoalgorithms in various modes of operation. Then, if desired, the outputs of the different generators can be combined, giving the final random sequence. Moreover, we present a set of practical randomness tests that can be applied to the outputs of random number generators in order to assess their randomness characteristics. In order to demonstrate the importance of unpredictable random sequences, we present an application of cryptographically secure generators in domains where unpredictability is one of the major requirements, i.e., eLotteries and cryptographic key generation.<\/jats:p>","DOI":"10.3390\/cryptography7040054","type":"journal-article","created":{"date-parts":[[2023,10,30]],"date-time":"2023-10-30T13:20:07Z","timestamp":1698672007000},"page":"54","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":26,"title":["Random Number Generators: Principles and Applications"],"prefix":"10.3390","volume":"7","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-6236-1707","authenticated-orcid":false,"given":"Anastasios","family":"Bikos","sequence":"first","affiliation":[{"name":"Computer Technology Institute and Press \u201cDiophantus\u201d, University of Patras Campus, 26504 Patras, Greece"},{"name":"Computer Engineering and Informatics Department, University of Patras, 26504 Patras, Greece"}]},{"given":"Panagiotis E.","family":"Nastou","sequence":"additional","affiliation":[{"name":"Applied Mathematics and Mathematical Modeling Laboratory, Department of Mathematics, University of the Aegean, 83200 Samos, Greece"},{"name":"Center for Applied Optimization, University of Florida, Gainesville, FL 32611, USA"}]},{"given":"Georgios","family":"Petroudis","sequence":"additional","affiliation":[{"name":"Applied Mathematics and Mathematical Modeling Laboratory, Department of Mathematics, University of the Aegean, 83200 Samos, Greece"}]},{"given":"Yannis C.","family":"Stamatiou","sequence":"additional","affiliation":[{"name":"Computer Technology Institute and Press \u201cDiophantus\u201d, University of Patras Campus, 26504 Patras, Greece"},{"name":"Department of Business Administration, University of Patras, 26504 Patras, Greece"}]}],"member":"1968","published-online":{"date-parts":[[2023,10,30]]},"reference":[{"key":"ref_1","unstructured":"Zenil, H. (2023, October 24). Available online: https:\/\/www.worldscientific.com\/worldscibooks\/10.1142\/7973#t=toc."},{"key":"ref_2","unstructured":"Killmann, W., and Schindler, W. (, January September). A Proposal for Functionality Classes for Random Number Generators. Proceedings of the Bundesamt Sicherheit der Informationstechnik (BSI), Available online: https:\/\/www.bsi.bund.de\/SharedDocs\/Downloads\/EN\/BSI\/Certification\/Interpretations\/+AIS_31_Functionality_classes_for_random_number_generators_e.pdf?__blob=publicationFile&v=4."},{"key":"ref_3","unstructured":"Rukhin, A., Soto, J., Nechvatal, J., Smid, M., Barker, E., Leigh, S., Levenson, M., Vangel, M., Banks, D., and Heckert, A. (2023, October 24). A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications, NIST Special Publication 800-22, Reveision 1a, Available online: https:\/\/nvlpubs.nist.gov\/nistpubs\/Legacy\/SP\/nistspecialpublication800-22r1a.pdf."},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Turan, M.S., Barker, E., Kelsey, J., McKay, K.A., Baish, M.L., and Boyle, M. (2023, October 24). Recommendation for the Entropy Sources Used for Random Bit Generation, NIST Special Publication 800-90B. Available online: https:\/\/doi.org\/10.6028\/NIST.SP.800-90B.","DOI":"10.6028\/NIST.SP.800-90B"},{"key":"ref_5","unstructured":"Marsaglia, G. (2016, January 25). The Marsaglia Random Number CDROM including the Diehard Battery of Tests of Randomness. Available online: https:\/\/web.archive.org\/web\/20160125103112\/http:\/\/stat.fsu.edu\/pub\/diehard\/."},{"key":"ref_6","unstructured":"Cachin, C. (1997). Entropy Measures and Unconditional Security in Cryptogrphy. Diss. ETH No. 12187. [Ph.D. Thesis, ETH Zurich]."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Barker, E., Kelsey, J., McKay, K., Roginsky, A., and Turan, M.S. (2023, October 24). Recommendation for Random Bit Generation (RBG) Constructions. NIST Special Publication 800-90C Revision 3. Available online: https:\/\/doi.org\/10.6028\/NIST.SP.800-90C.3pd.","DOI":"10.6028\/NIST.SP.800-90C.3pd"},{"key":"ref_8","unstructured":"Viega, J., and Messier, M. (2003). Secure Programming Cookbook for C and C++: Recipes for Cryptography, Authentication, Input Validation and More, O\u2019Reilly Media."},{"key":"ref_9","doi-asserted-by":"crossref","first-page":"2431","DOI":"10.1109\/TCAD.2021.3096464","article-title":"A Lightweight Full Entropy TRNG with On-Chip Entropy Assurance","volume":"40","author":"Chen","year":"2021","journal-title":"IEEE Trans. Comput. Aided Des. Integr. Circuits Syst."},{"key":"ref_10","doi-asserted-by":"crossref","unstructured":"Prada-Delgado, M.A., Martinez-Gomez, C., and Baturone, I. (2020, January 12\u201314). Auto-Calibrated Ring Oscillator TRNG Based on Jitter Accumulation. Proceedings of the 2020 IEEE International Symposium on Circuits and Systems (ISCAS), Seville, Spain.","DOI":"10.1109\/ISCAS45731.2020.9180598"},{"key":"ref_11","doi-asserted-by":"crossref","first-page":"2280","DOI":"10.1109\/TVLSI.2020.3011648","article-title":"Unified Analog PUF and TRNG Based on Current-Steering DAC and VCO","volume":"28","author":"Danesh","year":"2020","journal-title":"IEEE Trans. Very Large Scale Integr. (VLSI) Syst."},{"key":"ref_12","doi-asserted-by":"crossref","first-page":"5484","DOI":"10.1109\/TED.2023.3302277","article-title":"A True Random Number Generator Based on Semiconductor-Vacancies Junction Entropy Source and Square Transform Method","volume":"70","author":"Zhao","year":"2023","journal-title":"IEEE Trans. Electron Devices"},{"key":"ref_13","doi-asserted-by":"crossref","first-page":"1578","DOI":"10.1109\/TVLSI.2023.3298327","article-title":"RHS-TRNG: A Resilient High-Speed True Random Number Generator Based on STT-MTJ Device","volume":"31","author":"Fu","year":"2023","journal-title":"IEEE Trans. Very Large Scale Integr. (VLSI) Syst."},{"key":"ref_14","unstructured":"Guajardo, J., Kumar, S.S., Schrijen, G.J., and Tuyls, P. (2007, January 10\u201313). FPGA Intrinsic PUFs and Their Use for IP Protection. Proceedings of the Cryptographic Hardware and Embedded Systems\u2014CHES 2007: 9th International Workshop, Vienna, Austria."},{"key":"ref_15","unstructured":"O\u2019Donnell, C.W., Suh, G.E., and Devadas, S. (2004). PUF-Based Random Number Generation. MIT CSAIL CSG Tech. Memo, 481."},{"key":"ref_16","doi-asserted-by":"crossref","unstructured":"Cao, Y., Liu, W., Qin, L., Liu, B., Chen, S., Ye, J., Xia, X., and Wang, C. (2022). Entropy Sources Based on Silicon Chips: True Random Number Generator and Physical Unclonable Function. Entropy, 24.","DOI":"10.3390\/e24111566"},{"key":"ref_17","doi-asserted-by":"crossref","first-page":"850","DOI":"10.1137\/0213053","article-title":"How to Generate Cryptographically Strong Sequences of Pseudo-Random Bits","volume":"13","author":"Blum","year":"1984","journal-title":"Siam Comput."},{"key":"ref_18","doi-asserted-by":"crossref","unstructured":"Yao, A. (1982, January 3\u20135). Theory and Applications of Trapdoor Functions. Proceedings of the 23rd Annual Symposium on Foundations of Computer Science (SFCS 1982), Chicago, IL, USA.","DOI":"10.1109\/SFCS.1982.45"},{"key":"ref_19","doi-asserted-by":"crossref","first-page":"147","DOI":"10.1007\/978-3-540-27809-2_18","article-title":"Electronic National Lotteries","volume":"Volume 3110","author":"Konstantinou","year":"2004","journal-title":"Lecture Notes in Computer Science, Proceedings of the Financial Cryptography: 8th International Conference, FC 2004, Key West, FL, USA, 9\u201312 February 2004"},{"key":"ref_20","first-page":"44","article-title":"\u201cTrust Engineering:\u201d From Requirements to System Design and Maintenance\u2014A Working National Lottery System Experience","volume":"Volume 3650","author":"Konstantinou","year":"2004","journal-title":"Lecture Notes in Computer Science, Proceedings of the Information Security, ISC 2005, Singapore, 20\u201323 September 2005"},{"key":"ref_21","unstructured":"Goldreich, O., Goldwasser, S., and Micali, S. (1984, January 24\u201326). How to construct random functions (extended abstract). Proceedings of the 25th Annual Symposium on Foundations of Computer Science, West Palm Beach, FL, USA."},{"key":"ref_22","unstructured":"Knuth, D. (1997). The Art of Computer Programming. Volume 2, Seminumerical Algorithms, Addison-Wesley Professional. [3rd ed.]."},{"key":"ref_23","doi-asserted-by":"crossref","first-page":"129","DOI":"10.1145\/58562.59305","article-title":"Inferring sequences produced by pseudo-random number generators","volume":"36","author":"Boyar","year":"1989","journal-title":"J. Assoc. Comput. Mach."},{"key":"ref_24","doi-asserted-by":"crossref","first-page":"177","DOI":"10.1007\/BF02252875","article-title":"Inferring sequences produced by a linear congruential generator missing low-order bits","volume":"1","author":"Boyar","year":"1989","journal-title":"J. Cryptol."},{"key":"ref_25","doi-asserted-by":"crossref","unstructured":"Kranakis, E. (1986). Primality and Cryptography, Wiley-Teubner Series in Computer Science.","DOI":"10.1007\/978-3-322-96647-6"},{"key":"ref_26","doi-asserted-by":"crossref","first-page":"364","DOI":"10.1137\/0215025","article-title":"A Simple Unpredictable Pseudo-Random Generator","volume":"15","author":"Blum","year":"1986","journal-title":"SIAM J. Comput."},{"key":"ref_27","first-page":"137","article-title":"On composite numbers P which satisfy the Fermat congruence aP\u22121 \u2261 1 mod P","volume":"26","author":"Carmichael","year":"1919","journal-title":"Am. Math. Mon."},{"key":"ref_28","doi-asserted-by":"crossref","first-page":"194","DOI":"10.1137\/0217013","article-title":"RSA and Rabin Functions: Certain Parts are as Hard as the Whole","volume":"17","author":"Alexi","year":"1988","journal-title":"SIAM J. Comput."},{"key":"ref_29","doi-asserted-by":"crossref","first-page":"5","DOI":"10.1023\/A:1011264815860","article-title":"On the linear complexity of the power generator","volume":"23","author":"Shparlinski","year":"2001","journal-title":"Des. Codes Cryptogr."},{"key":"ref_30","unstructured":"(2023, October 24). Mcrypt Cryptographic Library. Available online: ftp:\/\/mcrypt.hellug.gr\/pub\/crypto\/mcrypt."},{"key":"ref_31","unstructured":"Kelsey, J., Schneier, B., and Ferguson, N. (1999). Sixth Annual Workshop on Selected Areas in Cryptography, Springer."},{"key":"ref_32","doi-asserted-by":"crossref","first-page":"64","DOI":"10.1501\/Commua1_0000000862","article-title":"Modifications of Knuth Randomness Tests for Integer and Binary Sequences","volume":"67","author":"Sulak","year":"2018","journal-title":"Commun. Fac. Sci. Univ. Ank. Ser. Math. Stat."},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Barker, E., Roginsky, A., and Davis, R. (2023, October 24). Recommendation for Cryptographic Key Generation. NIST Special Publication 800-133 Revision 2. Available online: https:\/\/doi.org\/10.6028\/NIST.SP.800-133r2.","DOI":"10.6028\/NIST.SP.800-133r2"},{"key":"ref_34","doi-asserted-by":"crossref","unstructured":"Barker, E., and Kelsey, J. (2023, October 24). Recommendation for Random Number Generation Using Deterministic Random Bit Generators. NIST Special Publication 800-90A Revision 1. Available online: https:\/\/doi.org\/10.6028\/NIST.SP.800-90Ar1.","DOI":"10.6028\/NIST.SP.800-90Ar1"},{"key":"ref_35","unstructured":"Naor, M., and Reingold, O. (1997, January 19\u201322). Number-theoretic constructions of efficient pseudo-random functions. Proceedings of the 38th IEEE Symposium on Foundations of Computer Science, Miami Beach, FL, USA."},{"key":"ref_36","unstructured":"Micali, S., Rabin, M., and Vadhan, S. (1999, January 17\u201318). Verifiable Random Functions. Proceedings of the 40th Annual Symposium on the Foundations of Computer Science (FOCS \u201899), New York, NY, USA."},{"key":"ref_37","first-page":"275","article-title":"Simplified OAEP for the RSA and Rabin functions","volume":"Volume 2139","author":"Boneh","year":"2001","journal-title":"Lecture Notes in Computer Science, Crypto 2001"}],"container-title":["Cryptography"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2410-387X\/7\/4\/54\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T21:14:14Z","timestamp":1760130854000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2410-387X\/7\/4\/54"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,10,30]]},"references-count":37,"journal-issue":{"issue":"4","published-online":{"date-parts":[[2023,12]]}},"alternative-id":["cryptography7040054"],"URL":"https:\/\/doi.org\/10.3390\/cryptography7040054","relation":{},"ISSN":["2410-387X"],"issn-type":[{"value":"2410-387X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,10,30]]}}}