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
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Braeken, A.: Cryptographic Properties of Boolean Functions and S-Boxes. Ph.D. thesis, Katholieke Universiteit Leuven (2006)
Burnett, L.D.: Heuristic optimization of boolean functions and substitution boxes for cryptography. Ph.D. thesis, Queensland University of Technology (2005)
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)
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)
Crama, Y., Hammer, P.L.: Boolean Models and Methods in Mathematics, Computer Science, and Engineering, 1st edn. Cambridge University Press, New York (2010)
Goossens, K.: Automated creation and selection of cryptographic primitives. Master’s thesis, Katholieke Universiteit Leuven (2005)
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)
Katz, J., Lindell, Y.: Introduction to Modern Cryptography. Chapman and Hall/CRC, Boca Raton (2008)
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/
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)
Millan, W., Fuller, J., Dawson, E.: New concepts in evolutionary search for boolean functions in cryptology. Computat. Intell. 20(3), 463–474 (2004)
Miller, J., Smith, S.: Redundancy and computational efficiency in cartesian genetic programming. IEEE Trans. Evol. Comput. 10(2), 167–174 (2006)
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)
Miller, J.F. (ed.): Cartesian Genetic Programming. Natural Computing Series. Springer, Heidelberg (2011)
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)
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)
Nyberg, K.: Perfect nonlinear S-Boxes. In: Davies, D.W. (ed.) EUROCRYPT 1991. LNCS, vol. 547, pp. 378–386. Springer, Heidelberg (1991)
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)
Picek, S., Jakobovic, D., Golub, M.: Evolving cryptographically sound boolean functions. In: GECCO (Companion), pp. 191–192 (2013)
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)
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
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)
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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)