Skip to main content
Log in

Semantic mutation operator for a fast and efficient design of bent Boolean functions

  • Published:
Genetic Programming and Evolvable Machines Aims and scope Submit manuscript

Abstract

Boolean functions are important cryptographic primitives with extensive use in symmetric cryptography. These functions need to possess various properties, such as nonlinearity to be useful. The main limiting factor of the quality of a Boolean function is the number of its input variables, which has to be sufficiently large. The contemporary design methods either scale poorly or are able to create only a small subset of all functions with the desired properties. This necessitates the development of new and more efficient ways of Boolean function design. In this paper, we propose a new semantic mutation operator for the design of bent Boolean functions via genetic programming. The principle of the proposed operator lies in evaluating the function’s nonlinearity in detail to purposely avoid mutations that could be disruptive and taking advantage of the fact that the nonlinearity of a Boolean function is invariant under all affine transformations. To assess the efficiency of this operator, we experiment with three distinct variants of genetic programming and compare its performance to three other commonly used non-semantic mutation operators. The detailed experimental evaluation proved that the proposed semantic mutation operator is not only significantly more efficient in terms of evaluations required by genetic programming but also nearly three times faster than the second-best operator when designing bent functions with 12 inputs and almost six times faster for functions with 20 inputs.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. Note that CGP is often used to solve problems that require multiple output values. In these scenarios, the genotype is extended with a number of additional genes that specify which nodes represent which outputs.

References

  1. A. Braeken, Cryptographic properties of Boolean functions and S-boxes. Ph.D thesis, Katholieke Universiteit Leuven (2006)

  2. M. Brameier, W. Banzhaf, W. Banzhaf, Linear Genetic Programming, vol. 1 (Springer, New York, 2007)

    MATH  Google Scholar 

  3. Ç. Çalık, Computing cryptographic properties of Boolean functions from the algebraic normal Form representation. Ph.D thesis, Middle East Technical University (2013)

  4. C. Carlet, Boolean Functions for Cryptography and Error-Correcting Codes Encyclopedia of Mathematics and its Applications. (Cambridge University Press, Cambridge, 2010), pp.257–397

    MATH  Google Scholar 

  5. C. Carlet, M. Djurasevic, D. Jakobovic, L. Mariot, S. Picek, Evolving constructions for balanced, highly nonlinear boolean functions, in Proceedings of the Genetic and Evolutionary Computation Conference (2022), pp. 1147–1155.

  6. C. Carlet, D. Jakobovic, S. Picek. Evolutionary algorithms-assisted construction of cryptographic Boolean functions, in Proceedings of the Genetic and Evolutionary Computation Conference (2021), pp. 565–573

  7. C. Carlet, S. Mesnager, Four decades of research on bent functions. Des. Codes Crypt. 78(1), 5–50 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  8. M. Castelli, S. Silva, L. Vanneschi, A c++ framework for geometric semantic genetic programming. Genet. Program Evolv. Mach. 16(1), 73–81 (2015)

    Article  Google Scholar 

  9. J.E. Fuller. Analysis of affine equivalent Boolean functions for cryptography. Ph.D thesis, Queensland University of Technology (2003)

  10. B.W Goldman, W.F. Punch, Length bias and search limitations in cartesian genetic programming, in Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation (2013), pp. 933–940

  11. B.W. Goldman, W.F. Punch, Analysis of cartesian genetic programming’s evolutionary mechanisms. IEEE Trans. Evol. Comput. 19(3), 359–373 (2014)

    Article  Google Scholar 

  12. A. Grocholewska-Czuryło, A study of differences between bent functions constructed using rothaus method and randomly generated bent functions. J. Telecommun. Inf. Technol., 19–24 (2003)

  13. D. Hodan, V. Mrazek, Z. Vasicek, Semantically-oriented mutation operator in cartesian genetic programming for evolutionary circuit design. Genet. Program Evolvable Mach. 22(4), 539–572 (2021)

    Article  Google Scholar 

  14. D. Hodan, V. Mrazek, Z. Vasicek, Semantically-oriented mutation operator in cartesian genetic programming for evolutionary circuit design. Genet. Prog. Evolv. Mach. 22(4), 539–572 (2021)

    Article  Google Scholar 

  15. R. Hrbacek, Bent functions synthesis on intel xeon phi coprocessor, in International Doctoral Workshop on Mathematical and Engineering Methods in Computer Science (Springer, 2014), pp. 88–99

  16. R. Hrbacek, V. Dvorak, Bent function synthesis by means of cartesian genetic programming, in International Conference on Parallel Problem Solving from Nature (Springer, 2014), pp. 414–423

  17. R. Hrbacek, L. Sekanina, Towards highly optimized cartesian genetic programming: from sequential via simd and thread to massive parallel implementation, in Proceedings of the 2014 Annual Conference on Genetic and Evolutionary Computation (2014), pp. 1015–1022

  18. J. Husa, Comparison of genetic programming methods on design of cryptographic boolean functions, in European Conference on Genetic Programming (Springer, 2019), pp. 228–244

  19. J. Husa, Designing correlation immune boolean functions with minimal hamming weight using various genetic programming methods, in Proceedings of the Genetic and Evolutionary Computation Conference Companion (2019), pp. 342–343

  20. J. Husa, R. Dobai, Designing bent boolean functions with parallelized linear genetic programming, in Proceedings of the Genetic and Evolutionary Computation Conference Companion (2017), pp. 1825–1832

  21. J. Husa, L. Sekanina, Evolving cryptographic Boolean functions with minimal multiplicative complexity, in 2020 IEEE Congress on Evolutionary Computation (CEC) (IEEE, 2020), pp. 1–8

  22. D. Jakobovic, S. Picek, M.S.R. Martins, M. Wagner, Toward more efficient heuristic construction of Boolean functions. Appl. Soft Comput. 107, 107327 (2021)

    Article  Google Scholar 

  23. H.B. Mann, D.R. Whitney, On a test of whether one of two random variables is stochastically larger than the other. Ann. Math. Stat. 50–60 (1947)

  24. L. Mariot, S. Picek, D. Jakobovic, M. Djurasevic, A. Leporati. Evolutionary construction of perfectly balanced boolean functions. arXiv:2202.08221 (2022)

  25. W. Millan, A. Clark, E. Dawson, An effective genetic algorithm for finding highly nonlinear boolean functions, in International Conference on Information and Communications Security (Springer, 1997), pp. 149–158

  26. W. Millan, J. Fuller, E. Dawson, New concepts in evolutionary search for Boolean functions in cryptology. Comput. Intell. 20(3), 463–474 (2004)

    Article  MathSciNet  Google Scholar 

  27. J.F. Miller, Cartesian genetic programming: its status and future. Genet. Prog. Evolv. Mach. 21(1), 129–168 (2020)

    Article  Google Scholar 

  28. A. Moraglio, K. Krawiec, C.G. Johnson, Geometric semantic genetic programming, in International Conference on Parallel Problem Solving from Nature (Springer, 2012), pp. 21–31.

  29. Q.U. Nguyen, X. Hoai Nguyen, M. O’Neill, Semantic aware crossover for genetic programming: the case for real-valued function regression, in European Conference on Genetic Programming (Springer, 2009), pp. 292–302

  30. Q.U. Nguyen, M. O’Neill, X.H. Nguyen, Examining semantic diversity and semantic locality of operators in genetic programming. PhD thesis, University College Dublin (2011)

  31. M. O’Neill, R. Poli, W.B. Langdon, N.F. McPhee, A Field Guide to Genetic Programming (Springer, Berlin, 2009)

    Google Scholar 

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

    Article  Google Scholar 

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

  34. S. Picek, S. Guilley, C. Carlet, D. Jakobovic, J.F. Miller, Evolutionary approach for finding correlation immune boolean functions of order t with minimal hamming weight, in International Conference on Theory and Practice of Natural Computing (Springer, 2015), pp. 71–82

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

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

    Article  Google Scholar 

  37. S. Picek, D. Jakobovic, J.F. Miller, E. Marchiori, L. Batina, Evolutionary methods for the construction of cryptographic Boolean functions, in European Conference on Genetic Programming (Springer, 2015), pp 192–204

  38. S. Picek, E. Marchiori, L. Batina, D. Jakobovic, Combining evolutionary computation and algebraic constructions to find cryptography-relevant boolean functions, in International Conference on Parallel Problem Solving from Nature (Springer, 2014), pp. 822–831

  39. S. Picek, R. Santana, D. Jakobovic, Maximal nonlinearity in balanced boolean functions with even number of inputs, revisited, in 2016 IEEE Congress on Evolutionary Computation (CEC) (IEEE, 2016), pp. 3222–3229

  40. M. Stanek, On cryptographic properties of random Boolean functions. J. Univ. Comput. Sci. 4(8), 705–717 (1998)

    MathSciNet  MATH  Google Scholar 

  41. N. Tokareva, On the number of bent functions from iterative constructions: lower bounds and hypotheses. Cryptology ePrint Archive (2011)

  42. N.Q. Uy, N. Xuan Hoai, M. O’Neill, B. McKay, Semantics based crossover for boolean problems, in Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (2010), pp. 869–876

  43. N.Q. Uy, N. Xuan Hoai, M. O’Neill, Semantics based mutation in genetic programming: the case for real-valued symbolic regression, in 15th International Conference on Soft Computing, Mendel, vol. 9 (2009), pp. 73–91

  44. N.Q. Uy, N.X. Hoai, M. O’Neill, R.I. McKay, E. Galván-López, Semantically-based crossover in genetic programming: application to real-valued symbolic regression. Genet. Prog. Evolv. Mach. 12(2), 91–119 (2011)

    Article  Google Scholar 

  45. L. Vanneschi, M. Castelli, S. Silva, A survey of semantic methods in genetic programming. Genet. Prog. Evolv. Mach. 15(2), 195–214 (2014)

    Article  Google Scholar 

Download references

Funding

This work was supported by the Czech Science Foundation Project 21-13001 S.

Author information

Authors and Affiliations

Authors

Contributions

JH: Conceptualization, Methodology, Software, Validation, Investigation, Data curation, Visualization, Writing - original draft. LS: Conceptualization, Supervision, Project administration, Funding acquisition, Writing - review & editing.

Corresponding author

Correspondence to Jakub Husa.

Ethics declarations

Conflict of interests

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Husa, J., Sekanina, L. Semantic mutation operator for a fast and efficient design of bent Boolean functions. Genet Program Evolvable Mach 25, 3 (2024). https://doi.org/10.1007/s10710-023-09476-w

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10710-023-09476-w

Keywords

Navigation