Skip to main content

Evolutionary Methods for the Construction of Cryptographic Boolean Functions

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9025))

Abstract

Boolean functions represent an important primitive when constructing many stream ciphers. Since they are often the only nonlinear element of such ciphers, without them the algorithm would be trivial to break. Therefore, it is not surprising there exist a substantial body of work on the methods of constructing Boolean functions. Among those methods, evolutionary computation (EC) techniques play a significant role. Previous works show it is possible to use EC methods to generate high-quality Boolean functions that even surpass those built by algebraic constructions. However, up to now, there was no work investigating the use of Cartesian Genetic Programming (CGP) for producing Boolean functions suitable for cryptography. In this paper we compare Genetic Programming (GP) and CGP algorithms in order to reach the conclusion which algorithm is better suited to evolve Boolean functions suitable for cryptographic usage. Our experiments show that CGP performs much better than the GP when the goal is obtaining as high as possible nonlinearity. Our results indicate that CGP should be further tested with different fitness objectives in order to check the boundaries of its performance.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Braeken, A.: Cryptographic Properties of Boolean Functions and S-Boxes. Ph.D. thesis, Katholieke Universiteit Leuven (2006)

    Google Scholar 

  2. Burnett, L.D.: Heuristic optimization of boolean functions and substitution boxes for cryptography. Ph.D. thesis, Queensland University of Technology (2005)

    Google Scholar 

  3. Cid, C., Kiyomoto, S., Kurihara, J.: The rakaposhi stream cipher. In: Qing, S., Mitchell, C.J., Wang, G. (eds.) ICICS 2009. LNCS, vol. 5927, pp. 32–46. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  4. Clark, J.A., Jacob, J.L., Stepney, S., Maitra, S., Millan, W.L.: Evolving boolean functions satisfying multiple criteria. In: Menezes, A., Sarkar, P. (eds.) INDOCRYPT 2002. LNCS, vol. 2551, pp. 246–259. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  5. Crama, Y., Hammer, P.L.: Boolean Models and Methods in Mathematics, Computer Science, and Engineering, 1st edn. Cambridge University Press, New York (2010)

    Book  MATH  Google Scholar 

  6. Goossens, K.: Automated creation and selection of cryptographic primitives. Master’s thesis, Katholieke Universiteit Leuven (2005)

    Google Scholar 

  7. Kalganova, T., Miller, J.F.: Evolving more efficient digital circuits by allowing circuit layout evolution and multi-objective fitness. In: Proceedings NASA/DoD Workshop on Evolvable Hardware, pp. 54–63. IEEE Computer Society (1999)

    Google Scholar 

  8. Katz, J., Lindell, Y.: Introduction to Modern Cryptography. Chapman and Hall/CRC, Boca Raton (2008)

    MATH  Google Scholar 

  9. McLaughlin, J., Clark, J.A.: Evolving balanced boolean functions with optimal resistance to algebraic and fast algebraic attacks, maximal algebraic degree, and very high nonlinearity. Cryptology ePrint Archive, Report 2013/011 (2013). http://eprint.iacr.org/

  10. Millan, W.L., Clark, A.J., Dawson, E.: Heuristic design of cryptographically strong balanced boolean functions. In: Nyberg, K. (ed.) EUROCRYPT 1998. LNCS, vol. 1403, pp. 489–499. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  11. Millan, W., Fuller, J., Dawson, E.: New concepts in evolutionary search for boolean functions in cryptology. Computat. Intell. 20(3), 463–474 (2004)

    Article  MathSciNet  Google Scholar 

  12. Miller, J., Smith, S.: Redundancy and computational efficiency in cartesian genetic programming. IEEE Trans. Evol. Comput. 10(2), 167–174 (2006)

    Article  Google Scholar 

  13. Miller, J.F.: An empirical study of the efficiency of learning boolean functions using a cartesian genetic programming approach. In: Banzhaf, W., Daida, J.M., Eiben, A.E., Garzon, M.H., Honavar, V., Jakiela, M.J., Smith, R.E. (eds.) GECCO, pp. 1135–1142. Morgan Kaufmann (1999)

    Google Scholar 

  14. Miller, J.F. (ed.): Cartesian Genetic Programming. Natural Computing Series. Springer, Heidelberg (2011)

    MATH  Google Scholar 

  15. Miller, J.F., Thomson, P.: Cartesian genetic programming. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 121–132. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  16. Miller, J.F., Harding, S.L.: Cartesian Genetic Programming. In: Proceedings of the 10th Annual Conference Companion on Genetic and Evolutionary Computation, GECCO 2008, pp. 2701–2726. ACM, New York (2008)

    Google Scholar 

  17. Nyberg, K.: Perfect nonlinear S-Boxes. In: Davies, D.W. (ed.) EUROCRYPT 1991. LNCS, vol. 547, pp. 378–386. Springer, Heidelberg (1991)

    Google Scholar 

  18. Picek, S., Batina, L., Jakobovic, D.: Evolving DPA-resistant boolean functions. In: Bartz-Beielstein, T., Branke, J., Filipič, B., Smith, J. (eds.) PPSN 2014. LNCS, vol. 8672, pp. 812–821. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  19. Picek, S., Jakobovic, D., Golub, M.: Evolving cryptographically sound boolean functions. In: GECCO (Companion), pp. 191–192 (2013)

    Google Scholar 

  20. Picek, S., Marchiori, E., Batina, L., Jakobovic, D.: Combining evolutionary computation and algebraic constructions to find cryptography-relevant boolean functions. In: Bartz-Beielstein, T., Branke, J., Filipič, B., Smith, J. (eds.) PPSN 2014. LNCS, vol. 8672, pp. 822–831. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  21. Prouff, E.: DPA Attacks and S-Boxes. In: Gilbert, H., Handschuh, H. (eds.) FSE 2005. LNCS, vol. 3557, pp. 424–441. Springer, Heidelberg (2005). http://www.iacr.org/cryptodb/archive/2005/FSE/3172/3172.pdf

    Chapter  Google Scholar 

  22. Sarkar, P., Maitra, S.: Nonlinearity Bounds and Constructions of Resilient Boolean Functions. In: Bellare, M. (ed.) CRYPTO 2000. LNCS, vol. 1880, pp. 515–532. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

Download references

Acknowledgments

This work was supported in part by the Technology Foundation STW (project 12624 - SIDES), The Netherlands Organization for Scientific Research NWO (project ProFIL 628.001.007) and the ICT COST action IC1204 TRUDEVICE.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Domagoj Jakobovic .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Picek, S., Jakobovic, D., Miller, J.F., Marchiori, E., Batina, L. (2015). Evolutionary Methods for the Construction of Cryptographic Boolean Functions. In: Machado, P., et al. Genetic Programming. EuroGP 2015. Lecture Notes in Computer Science(), vol 9025. Springer, Cham. https://doi.org/10.1007/978-3-319-16501-1_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-16501-1_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-16500-4

  • Online ISBN: 978-3-319-16501-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics