Abstract
Pseudorandom number generation is a key component of many Computer Science algorithms, including mathematical modeling, stochastic processes, Monte Carlo simulations, and most cryptographic primitives and protocols. To date, multiple approaches that use Evolutionary Computation (EC) techniques have been proposed for designing useful Pseudorandom Number Generators (PRNGs) for certain non-cryptographic applications. However, none of the proposals have been secure nor efficient enough to be of interest for the much more demanding crypto world. In this work, we present a general scheme, which uses Genetic Programming (GP), for the automatic design of crypto-quality PRNGs by evolving highly nonlinear and extremely efficient functions. A new PRNG named Lamar and obtained using this scheme is proposed, whose C code and preliminary security analysis are provided.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
The lil-gp GP system, http://garage.cps.msu.edu/software/lil-gp/
Bao, F.: Cryptanalysis of a partially known cellular automata cryptosystem. IEEE Trans. on Computers 53(11), 1493–1497 (2004)
Cantú-Paz, E.: On random numbers and the performance of genetic algorithms. In: Proc. of GECCO 2002, vol. 2, pp. 311–318. Morgan Kaufmann, San Francisco (2002)
Forré, R.: The strict avalanche criterion: Spectral properties of boolean functions and an extended definition. In: Goldwasser, S. (ed.) CRYPTO 1988. LNCS, vol. 403, pp. 450–468. Springer, Heidelberg (1990)
Hernandez-Castro, J.C., Isasi, P., Seznec, A.: On the design of state-of-the-art PRNGs by means of genetic programming. In: Proc. of the IEEE CEC 2004, pp. 1510–1516. IEEE Press, Los Alamitos (2004)
Hernandez-Castro, J.C., Ribagorda, A., Isasi, P., Sierra, J.M.: Finding near optimal parameters for linear congruential PRNGs by means of evolutionary computation. In: Proc. of GECCO 2001, pp. 1292–1298. Morgan Kaufmann, San Francisco (2001)
Hinton, G., et al.: The microarchitecture of the pentium 4 processor. Intel Technology Journal Q1 (2001)
Hirose, S., Yoshida, S.: A one-way hash function based on a two-dimensional cellular automaton. In: Proc. of the 20th Symposium on Information Theory and its Applications, Matsuyama, vol. 1, pp. 213–216 (1997)
Johnson, B.C.: Radix-b extensions to some common empirical tests for PRNGs. ACM Trans. on Modeling and Comp. Sim. 6(4), 261–273 (1996)
Kanter, I., Kinzel, W., Kanter, E.: Secure exchange of information by synchronization of neural networks. Europhysical Letters 57(141) (2002)
Knuth, D.E.: The Art of Computer Programming. Seminumerical Algorithms, 3rd edn., vol. 2. Addison-Wesley, Reading (1998)
Koza, J.R.: Evolving a computer program to generate random number using the genetic programming paradigm. In: Proc. of the 4th Int. Conference on Genetic Algorithms, pp. 37–44. Morgan Kaufmann, San Francisco (1991)
Marsaglia, G.: Yet another RNG. Posted to sci.stat.math (1994)
Marsaglia, G.: The Marsaglia Random Number CDROM Including the DIEHARD Battery of Tests of Randomness (1996), http://stat.fsu.edu/pub/diehard
Marsaglia, G., Tsang, W.W.: Some difficult-to-pass tests of randomness. Journal of Statistical Software 7(3) (2002)
Matsumoto, M., Kurita, Y.: Twisted GFSR generators. ACM Trans. on Modeling and Comp. Sim. 2(3), 179–194 (1992)
Matsumoto, M., et al.: Mersenne twister: A 623-dimensionally equidistributed uniform PRNG. ACM Trans. on Modeling and Comp. Sim. 8(1), 3–30 (1998)
Meysenburg, M.M., Foster, J.A.: The quality of PRNGs and simple genetic algorithm performance. In: Proc. of the 7th Int. Conference on Genetic Algorithms, pp. 276–281. Morgan Kaufmann, San Francisco (1997)
Meysenburg, M.M., Foster, J.A.: Randomness and GA performance, revisited. In: Proc. of GECCO 1999, vol. 1, pp. 425–432. Morgan Kaufmann, San Francisco (1999)
Mihaljevic, M., Zheng, Y., Imai, H.: A cellular automaton based fast one-way hash function suitable for hardware implementation. In: Imai, H., Zheng, Y. (eds.) PKC 1998. LNCS, vol. 1431, Springer, Heidelberg (1998)
Mihaljevic, M.J.: An improved key stream generator based on the programmable cellular automata. In: Han, Y., Quing, S. (eds.) ICICS 1997. LNCS, vol. 1334, pp. 181–191. Springer, Heidelberg (1997)
Millan, W., Clark, A., Dawson, E.: An effective genetic algorithm for finding boolean functions. In: Han, Y., Quing, S. (eds.) ICICS 1997. LNCS, vol. 1334, Springer, Heidelberg (1997)
Press, W.H., Teukolsky, S.A., Vetterling, W.T., Flannery, B.P.: Numerical Recipes in C, 2nd edn. Cambridge University Press, Cambridge (1992)
Rivest, R.L., Robshaw, M.J.B., Sidney, R., Yin, Y.L.: The RC6 block cipher, v1.1 (August 20, 1998)
Rukhin, A., et al.: A statistical test suite for random and pseudorandom number generators for cryptographic applications. NIST special publication 800-22 (2001), http://csrc.nist.gov/rng/
Schneier, B.: Applied Cryptography. John Wiley and Sons, Chichester (1994)
Seredynski, M., Bouvry, P.: Block cipher based on reversible cellular automata. Next Generation Computing Journal 23(3), 245–258 (2005)
Sipper, M., Tomassini, M.: Generating parallel random number generators by cellular programming. Int. Journal of Modern Physics C, 181–190 (1996)
Tezuka, S., L’Ecuyer, P.: Efficient and portable combined Tausworthe Random Number Generators. ACM Trans. on Modeling and Comp. Sim. 1(2), 99–112 (1991)
Walker, J.: ENT Randomness Tests (1998), http://www.fourmilab.ch/random/
Wolfram, S.: Random sequence generation by cellular automata. Advances in Applied Mathematics 7, 123–169 (1986)
Yalcin, M.E., Suykens, J.A.K., Vandewalle, J.: True random bit generation from a double-scroll attractor. IEEE Trans. on Circuits and Systems-I: Regular Papers 51(7), 1395–1404 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lamenca-Martinez, C., Hernandez-Castro, J.C., Estevez-Tapiador, J.M., Ribagorda, A. (2006). Lamar: A New Pseudorandom Number Generator Evolved by Means of Genetic Programming. In: Runarsson, T.P., Beyer, HG., Burke, E., Merelo-Guervós, J.J., Whitley, L.D., Yao, X. (eds) Parallel Problem Solving from Nature - PPSN IX. PPSN 2006. Lecture Notes in Computer Science, vol 4193. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11844297_86
Download citation
DOI: https://doi.org/10.1007/11844297_86
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-38990-3
Online ISBN: 978-3-540-38991-0
eBook Packages: Computer ScienceComputer Science (R0)