Skip to main content

Comparison of Genetic Programming Methods on Design of Cryptographic Boolean Functions

  • Conference paper
  • First Online:

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

Abstract

The ever-increasing need for information security requires a constant refinement of contemporary ciphers. One of these are stream ciphers which secure data by utilizing a pseudo-randomly generated binary sequence. Generating a cryptographically secure sequence is not an easy task and requires a Boolean function possessing multiple cryptographic properties. One of the most successful ways of designing these functions is genetic programming. In this paper, we present a comparative study of three genetic programming methods, tree-based, Cartesian and linear, on the task of generating Boolean functions with an even number of inputs possessing good values of nonlinearity, balancedness, correlation immunity, and algebraic degree. Our results provide a comprehensive overview of how genetic programming methods compare when designing functions of different sizes, and we show that linear genetic programming, which has not been used for design of some of these functions before, is the best at dealing with increasing number of inputs, and creates desired functions with better reliability than the commonly used methods.

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

Notes

  1. 1.

    http://ecf.zemris.fer.hr/.

  2. 2.

    https://www.open-mpi.org/.

References

  1. Vernam, G.S.: Cipher printing telegraph systems: for secret wire and radio telegraphic communications. J. AIEE 45(2), 109–115 (1926)

    Google Scholar 

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

    Google Scholar 

  3. 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, Cham (2014). https://doi.org/10.1007/978-3-319-10762-2_81

    Chapter  Google Scholar 

  4. Forrié, 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, New York (1990). https://doi.org/10.1007/0-387-34799-2_31

    Chapter  Google Scholar 

  5. Fino, B.J., Algazi, V.R.: Unified matrix treatment of the fast Walsh-Hadamard transform. IEEE Trans. Comput. C-25(11), 1142–1146 (1976)

    Google Scholar 

  6. Meier, W., Pasalic, E., Carlet, C.: Algebraic attacks and decomposition of Boolean functions. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 474–491. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24676-3_28

    Chapter  Google Scholar 

  7. Wu, H.: Cryptanalysis and design of stream ciphers. A Ph.D. thesis of Katholieke Universiteit Leuven, Belgium (2008)

    Google Scholar 

  8. Carlet, C.: Boolean functions for cryptography and error correcting codes. Boolean Models Meth. Math. Comput. Sci. Eng. 2, 257–397 (2010)

    Article  Google Scholar 

  9. Armknecht, F.: Algebraic attacks on certain stream ciphers. Ph.D. thesis, University of Rennes (2006)

    Google Scholar 

  10. Massey, J.: Shift-register synthesis and BCH decoding. IEEE Trans. Inf. Theory 15(1), 122–127 (1969)

    Article  MathSciNet  Google Scholar 

  11. Norton, G.H.: The Berlekamp-Massey algorithm via minimal polynomials. arXiv preprint arXiv:1001.1597 (2010)

  12. Didier, F.: Attacking the filter generator by finding zero inputs of the filtering function. In: Srinathan, K., Rangan, C.P., Yung, M. (eds.) INDOCRYPT 2007. LNCS, vol. 4859, pp. 404–413. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-77026-8_32

    Chapter  Google Scholar 

  13. Hodžić, S., Wei, Y., Pašalić, E., Bajrić, S.: Optimizing the placement of tap positions. Ph.D. thesis, Univerza na Primorskem, Fakulteta za matematiko, naravoslovje in informacijske tehnologije (2015)

    Google Scholar 

  14. Picek, S., Jakobovic, D., Miller, J.F., Batina, L., Cupic, M.: Cryptographic boolean functions: one output, many design criteria. Appl. Soft Comput. 40, 635–653 (2016)

    Article  Google Scholar 

  15. Carlet, C., Feng, K.: An infinite class of balanced functions with optimal algebraic immunity, good immunity to fast algebraic attacks and good nonlinearity. In: Pieprzyk, J. (ed.) ASIACRYPT 2008. LNCS, vol. 5350, pp. 425–440. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89255-7_26

    Chapter  Google Scholar 

  16. Chose, P., Joux, A., Mitton, M.: Fast correlation attacks: an algorithmic point of view. In: Knudsen, L.R. (ed.) EUROCRYPT 2002. LNCS, vol. 2332, pp. 209–221. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-46035-7_14

    Chapter  Google Scholar 

  17. Kavut, S., Maitra, S., Yücel, M.D.: There exist Boolean functions on n (odd) variables having nonlinearity \(> 2^{{n - 1}} - 2^{{\frac{{n - 1}}{2}}}\) if and only if \(n > 7\) (2006)

    Google Scholar 

  18. Canteaut, A., Trabbia, M.: Improved fast correlation attacks using parity-check equations of weight 4 and 5. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 573–588. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_40

    Chapter  Google Scholar 

  19. Braeken, A.: Cryptographic properties of Boolean functions and S-boxes. Ph.D. thesis (2006)

    Google Scholar 

  20. Tarannikov, Y., Korolev, P., Botev, A.: Autocorrelation coefficients and correlation immunity of Boolean functions. In: Boyd, C. (ed.) ASIACRYPT 2001. LNCS, vol. 2248, pp. 460–479. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45682-1_27

    Chapter  Google Scholar 

  21. Ronjom, S., Helleseth, T.: A new attack on the filter generator. IEEE Trans. Inf. Theory 53(5), 1752–1758 (2007)

    Article  MathSciNet  Google Scholar 

  22. Courtois, N.T., Meier, W.: Algebraic attacks on stream ciphers with linear feedback. In: Biham, E. (ed.) EUROCRYPT 2003. LNCS, vol. 2656, pp. 345–359. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-39200-9_21

    Chapter  Google Scholar 

  23. Cramer, N.L.: A representation for the adaptive generation of simple sequential programs. In: Proceedings of the First International Conference on Genetic Algorithms, pp. 183–187 (1985)

    Google Scholar 

  24. Kalkreuth, R., Rudolph, G., Droschinsky, A.: A new subgraph crossover for Cartesian genetic programming. In: McDermott, J., Castelli, M., Sekanina, L., Haasdijk, E., García-Sánchez, P. (eds.) EuroGP 2017. LNCS, vol. 10196, pp. 294–310. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-55696-3_19

    Chapter  Google Scholar 

  25. Brameier, M.: On linear genetic programming. Ph.D. thesis, Universitätsbibliothek Technische Universität Dortmund (2004)

    Google Scholar 

  26. Millan, W., Clark, A., Dawson, E.: An effective genetic algorithm for finding highly nonlinear boolean functions. In: Han, Y., Okamoto, T., Qing, S. (eds.) ICICS 1997. LNCS, vol. 1334, pp. 149–158. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0028471

    Chapter  Google Scholar 

  27. Picek, S., Jakobovic, D., Golub, M.: Evolving cryptographically sound Boolean functions. In: Proceedings of the 15th Annual Conference Companion on Genetic and Evolutionary Computation, pp. 191–192. ACM (2013)

    Google Scholar 

  28. Hrbacek, R., Dvorak, V.: Bent function synthesis by means of Cartesian genetic programming. In: Bartz-Beielstein, T., Branke, J., Filipič, B., Smith, J. (eds.) PPSN 2014. LNCS, vol. 8672, pp. 414–423. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-10762-2_41

    Chapter  Google Scholar 

  29. Hrbacek, R.: Bent functions synthesis on Intel Xeon Phi coprocessor. In: Hliněný, P., et al. (eds.) MEMICS 2014. LNCS, vol. 8934, pp. 88–99. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-14896-0_8

    Chapter  Google Scholar 

  30. Husa, J., Dobai, R.: Designing bent Boolean functions with parallelized linear genetic programming. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion, pp. 1825–1832. ACM (2017)

    Google Scholar 

  31. Picek, S., Jakobovic, D., Miller, J.F., Marchiori, E., Batina, L.: Evolutionary methods for the construction of cryptographic Boolean functions. In: Machado, P., et al. (eds.) EuroGP 2015. LNCS, vol. 9025, pp. 192–204. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-16501-1_16

    Chapter  Google Scholar 

  32. Picek, S., Carlet, C., Jakobovic, D., Miller, J.F., Batina, L.: Correlation immunity of Boolean functions: an evolutionary algorithms perspective. In: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation, pp. 1095–1102. ACM (2015)

    Google Scholar 

  33. Picek, S., Carlet, C., Guilley, S., Miller, J.F., Jakobovic, D.: Evolutionary algorithms for Boolean functions in diverse domains of cryptography. Evol. Comput. 24(4), 667–694 (2016)

    Article  Google Scholar 

  34. Picek, S., Guilley, S., Carlet, C., Jakobovic, D., Miller, J.F.: Evolutionary approach for finding correlation immune Boolean functions of order t with minimal hamming weight. In: Dediu, A.-H., Magdalena, L., Martín-Vide, C. (eds.) TPNC 2015. LNCS, vol. 9477, pp. 71–82. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-26841-5_6

    Chapter  Google Scholar 

  35. Picek, S., Jakobovic, D.: Evolving algebraic constructions for designing bent Boolean functions. In: Proceedings of the Genetic and Evolutionary Computation Conference 2016, pp. 781–788. ACM (2016)

    Google Scholar 

  36. Husa, J., Kalkreuth, R.: A comparative study on crossover in Cartesian genetic programming. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 203–219. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77553-1_13

    Chapter  Google Scholar 

  37. Zhang, W., Pasalic, E.: Improving the lower bound on the maximum nonlinearity of 1-resilient boolean functions and designing functions satisfying all cryptographic criteria. Inf. Sci. 376, 21–30 (2017)

    Article  Google Scholar 

  38. Eiben, A.E., Smith, J.E., et al.: Introduction to Evolutionary Computing, vol. 53. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-662-05094-1

    Book  MATH  Google Scholar 

Download references

Acknowledgments

This work was supported by Czech Science Foundation project 19-10137S.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jakub Husa .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Husa, J. (2019). Comparison of Genetic Programming Methods on Design of Cryptographic Boolean Functions. In: Sekanina, L., Hu, T., Lourenço, N., Richter, H., García-Sánchez, P. (eds) Genetic Programming. EuroGP 2019. Lecture Notes in Computer Science(), vol 11451. Springer, Cham. https://doi.org/10.1007/978-3-030-16670-0_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-16670-0_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-16669-4

  • Online ISBN: 978-3-030-16670-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics