Evolutionary algorithms-assisted construction of cryptographic boolean functions

In the last few decades, evolutionary algorithms were successfully applied numerous times for creating Boolean functions with good cryptographic properties. Still, the applicability of such approaches was always limited as the cryptographic community knows how to construct suitable Boolean functions with deterministic algebraic constructions. Thus, evolutionary results so far helped to increase the confidence that evolutionary techniques have a role in cryptography, but at the same time, the results themselves were seldom used. This paper considers a novel problem using evolutionary algorithms to improve Boolean functions obtained through algebraic constructions. To this end, we consider a recent generalization of Hidden Weight Boolean Function construction, and we show that evolutionary algorithms can significantly improve the cryptographic properties of the functions. Our results show that the genetic algorithm performs by far the best of all the considered algorithms and improves the nonlinearity property in all Boolean function sizes. As there are no known algebraic techniques to reach the same goal, we consider this application a step forward in accepting evolutionary algorithms as a powerful tool in the cryptography domain.

[1]  William Millan,et al.  An effective genetic algorithm for finding highly nonlinear Boolean Functions , 1997, ICICS.

[2]  Randal E. Bryant,et al.  On the Complexity of VLSI Implementations and Graph Representations of Boolean Functions with Application to Integer Multiplication , 1991, IEEE Trans. Computers.

[3]  Domagoj Jakobovic,et al.  Comparison of schedule generation schemes for designing dispatching rules with genetic programming in the unrelated machines environment , 2020, Appl. Soft Comput..

[4]  Elena Marchiori,et al.  Combining Evolutionary Computation and Algebraic Constructions to Find Cryptography-Relevant Boolean Functions , 2014, PPSN.

[5]  William Millan,et al.  Heuristic Design of Cryptographically Strong Balanced Boolean Functions , 1998, EUROCRYPT.

[6]  Carlos A. Coello Coello,et al.  Evolutionary Algorithms for Finding Short Addition Chains: Going the Distance , 2016, EvoCOP.

[7]  Selçuk Kavut,et al.  Improved Cost Function in the Design of Boolean Functions Satisfying Multiple Criteria , 2003, INDOCRYPT.

[8]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[9]  Claude Carlet,et al.  Cryptographic properties of the hidden weighted bit function , 2014, Discret. Appl. Math..

[10]  Julian Francis Miller,et al.  Cryptographic Boolean functions: One output, many design criteria , 2016, Appl. Soft Comput..

[11]  An Wang,et al.  A novel bit scalable leakage model based on genetic algorithm , 2015, Secur. Commun. Networks.

[12]  John A. Clark,et al.  Two-Stage Optimisation in the Design of Boolean Functions , 2000, ACISP.

[13]  Bing Xue,et al.  A genetic programming approach to feature construction for ensemble learning in skin cancer detection , 2020, GECCO.

[14]  Nele Mentens,et al.  Evolving Cryptographic Pseudorandom Number Generators , 2016, PPSN.

[15]  Willi Meier,et al.  Fast Algebraic Attacks on Stream Ciphers with Linear Feedback , 2003, CRYPTO.

[16]  Hans-Paul Schwefel,et al.  Evolution strategies – A comprehensive introduction , 2002, Natural Computing.

[17]  Luca Mariot,et al.  Heuristic Search by Particle Swarm Optimization of Boolean Functions for Cryptographic Applications , 2015, GECCO.

[18]  Yasushi Fuwa,et al.  An evolutionary multiobjective approach to design highly non-linear Boolean functions , 2007, GECCO '07.

[19]  Herbert Bos,et al.  VUzzer: Application-aware Evolutionary Fuzzing , 2017, NDSS.

[20]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[21]  Riccardo Poli,et al.  A Field Guide to Genetic Programming , 2008 .

[22]  Domagoj Jakobovic,et al.  Evolving Algebraic Constructions for Designing Bent Boolean Functions , 2016, GECCO.

[23]  Claude Carlet,et al.  Evolutionary Algorithms for Boolean Functions in Diverse Domains of Cryptography , 2016, Evolutionary Computation.

[24]  Domagoj Jakobovic,et al.  Immunological algorithms paradigm for construction of Boolean functions with good cryptographic properties , 2017, Eng. Appl. Artif. Intell..

[25]  Claude Carlet,et al.  An Infinite Class of Balanced Functions with Optimal Algebraic Immunity, Good Immunity to Fast Algebraic Attacks and Good Nonlinearity , 2008, ASIACRYPT.

[26]  Holger Claussen,et al.  Evolutionary learning of link allocation algorithms for 5G heterogeneous wireless communications networks , 2019, GECCO.

[27]  William Millan,et al.  New concepts in evolutionary search for Boolean functions in cryptology , 2003, The 2003 Congress on Evolutionary Computation, 2003. CEC '03..

[28]  Domagoj Jakobovic,et al.  Evolutionary computation and machine learning in cryptology , 2020, GECCO Companion.

[29]  Claude Carlet A Wide Class of Boolean Functions Generalizing the Hidden Weight Bit Function , 2022, IEEE Transactions on Information Theory.

[30]  Domagoj Jakobovic,et al.  On the design of S-box constructions with genetic programming , 2019, GECCO.

[31]  Marin Golub,et al.  Evolving cryptographically sound boolean functions , 2013, GECCO.

[32]  Claude Carlet,et al.  Boolean Functions for Cryptography and Coding Theory , 2020 .