Designing Stream Cipher Systems Using Genetic Programming

  • Wasan Shaker Awad
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6683)


Genetic programming is a good technique for finding near-global optimal solutions for complex problems, by finding the program used to solve the problems. One of these complex problems is designing stream cipher systems automatically. Steam cipher is an important encryption technique used to protect private information from an unauthorized access, and it plays an important role in the communication and storage systems. In this work, we propose a new approach for designing stream cipher systems of good properties, such as high degree of security and efficiency. The proposed approach is based on the genetic programming. Three algorithms are presented here, which are simple genetic programming, simulated annealing programming, and adaptive genetic programming. Experiments were performed to study the effectiveness of these algorithms in solving the underlying problem.


Genetic Algorithm Genetic Programming Boolean Function Cellular Automaton Linear Complexity 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Szaban, M., Seredynski, F., Bouvry, P.: Collective Behavior of Rules for Cellular Automata-Based Stream Ciphers. In: IEEE Congress on Evolutionary Computation, pp. 179–183 (2006)Google Scholar
  2. 2.
    Clark, A., Jacob, L.J.: Almost Boolean functions: the design of Boolean functions by spectral inversion. Computational Intelligence 20(3), 450–462 (2004)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Millan, W., Clark, A., Dawson, E.: An effective genetic algorithm for finding highly nonlinear Boolean functions. In: Proc. 1st Int. Conf. on Information and Communications Security, China, Beijing, pp. 149–158 (1997)Google Scholar
  4. 4.
    Awad, W.S.: The applications of GA in cryptology. Far East Journal of Experimental and Theoretical Artificial Intelligence 2(1), 59–76 (2008)zbMATHGoogle Scholar
  5. 5.
    Eiben, A.E., Hinterding, R., Michalewic, Z.: Parameters control in evolutionary algorithms. IEEE Trans. Syst. Man Cybern. 16(1), 122–128 (1999)Google Scholar
  6. 6.
    Van Laarhoven, P.J.M., et al.: Simulated Annealing: Theory and applications. Reidel, Holland (1987)CrossRefzbMATHGoogle Scholar
  7. 7.
    Sadegheih: Sequence optimization and design of allocation using GA and SA. Applied Mathematics and Computation 186(2), 1723–1730 (2007)CrossRefzbMATHGoogle Scholar
  8. 8.
    Yuichiro, U., Mitsunori, M., Tomoyuki, H.: Simulated Annealing Programming Using Effective Subtrees. Doshisha Daigaku Rikogaku Kenkyu Hokoku 49(4), 205–209 (2009)Google Scholar
  9. 9.
    Miki, M., Hashimoto, M., Fujita, Y.: Program Search with Simulated Annealing. In: Proc. of the 9th Annual Conference on Genetic and Evolutionary Computation, London, England, pp. 1754–1754 (2007)Google Scholar
  10. 10.
    Sivanandam, S.N., Deepa, S.N.: Introduction to genetic algorithms. Springer, New York (2008)zbMATHGoogle Scholar
  11. 11.
    Srinivas, M., Patnaik, L.M.: Adaptive Probabilities of Crossover and Mutation in Genetic Algorithms. IEEE Trans. Systems, Man and Cybernetics 24(4), 656–667 (1994)CrossRefGoogle Scholar
  12. 12.
    Zhang, J., Hu, T.: Adaptive Genetic Algorithm Based on Population Diversity. Computer Engineering and Applications 9(1), 49–51 (2002)Google Scholar
  13. 13.
    Forouzan, B.A.: Cryptography and network security. McGraw-Hill, New York (2008)Google Scholar
  14. 14.
    Rueppel, R.A.: Analysis and Design of Stream Cipher. Springer, New York (1986)CrossRefzbMATHGoogle Scholar
  15. 15.
    Schneier, B.: Applied cryptography. John Wiley and Sons, New York (1996)zbMATHGoogle Scholar
  16. 16.
    Golomb, S.W.: Shift Register Sequence. Holden-Day, San Francisco (1967)Google Scholar
  17. 17.
    Beker, P.F.: Cipher Systems. John Wiley, New York (1982)zbMATHGoogle Scholar
  18. 18.
    Klapper, G.M.: Feedback shift registers, 2-adic span and combiners with memory. Journal of Cryptology 10(1), 111–147 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Dubrova, E., Teslenko, M., Tenhunen, H.: Analysis and Synthesis of (n,k)-Non-Linear Feedback Shift Registers. In: Proc. of the Conf. on Design, Automation and Test, Munich, Germany, pp. 1286–1290 (2008)Google Scholar
  20. 20.
    Goresky, M., Klapper, A.: Pseudonoise Sequence Based on Algebraic Feedback Shift Registers. IEEE Trans. Inf. Theory 52(4), 1649–1662 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Gustafson, H., et al.: A computer package for measuring the strength of encryption algorithm. Comp. and Sec. 14(1), 687–697 (1994)CrossRefGoogle Scholar
  22. 22.
    Zeng, K., Yang, C., Rao, T.R.N.: Pseudorandom Bit Generator in Stream Cipher Cryptography. Comp. 2(24), 8–17 (1991)CrossRefGoogle Scholar
  23. 23.
    L’ecuyer, P., Simard, R.: TestU01: A C library for empirical testing of random number generators. ACM Trans. Math. Softw. 33(4), 22–40 (2007)MathSciNetCrossRefGoogle Scholar
  24. 24.
    Massey, J.L.: Shift register sequences and BCH decoding. IEEE Trans. on Inf. Theory IT 15(1), 122–127 (1976)CrossRefzbMATHGoogle Scholar
  25. 25.
    Eberhart, R., Shi, Y.: Computational Intelligence: concepts to implementation. Morgan Kaufmann, San Francisco (2008)zbMATHGoogle Scholar
  26. 26.
    Koza, J.R.: Genetic programming. MIT Press, Cambridge (1992)zbMATHGoogle Scholar
  27. 27.
    Goldberg, D.E.: Genetic algorithms in search, optimization, and machine learning. Addison-Wesley, New York (1989)zbMATHGoogle Scholar
  28. 28.
    Mitchell, M.: An Introduction to Genetic Algorithm. MIT Press, Cambridge (1996)Google Scholar
  29. 29.
    Holland, J.H.: Adaptive in natural and artificial systems. University of Michigan, Ann Arbor (1975)Google Scholar
  30. 30.
    Hirsh, H., Banzhaf, W., Koza, J.R., Ryan, C., Spector, L., Jacob, C.: Genetic programming. IEEE Intelligent Systems 15(3), 74–84 (2000)CrossRefGoogle Scholar
  31. 31.
    Koza, J.R., Keane, M.A., Streeter, M.: What’s AI done for me lately? - genetic programming’s human competitive results. IEEE Intelligent Systems 18(3), 25–31 (2003)CrossRefGoogle Scholar
  32. 32.
    Koza, J.R.: Genetic Programming II: Automatic Discovery of Reusable Programs. MIT Press, Cambridge (1994)zbMATHGoogle Scholar
  33. 33.
    Kirkpatrik, S., et al.: Optimization by simulated annealing. Science 220(4598), 671–680 (1983)MathSciNetCrossRefGoogle Scholar
  34. 34.
    Yong, L., Lishan, K., Evans, D.J.: The annealing evolution algorithm as function optimizer. Parallel Computing 21(3), 389–400 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  35. 35.
    Cordon, O., et al.: An Inductive Query by Example Technique for Extended Boolean Queries Based on Simulated-Annealing Programming. In: The Proc. of 7th International ISKO Conference on Challenges in Knowledge Representation and Organization for the 21st Century, pp. 429–436. Integration of Knowledge Across Boundaries, Granada (2002)Google Scholar
  36. 36.
    Haynes, T., et al.: Strongly typed GP in evolving cooperation strategies. In: Proc. of the sixth Int. Conf. on GA, pp. 271–278. Morgan Kaufmann, San Francisco (1995)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Wasan Shaker Awad
    • 1
  1. 1.Department of Information Systems, College of Information TechnologyUniversity of BahrainSakheerBahrain

Personalised recommendations