Abstract
This chapter provides a general overview of AI methods used to support the design of cryptographic primitives and protocols. After giving a brief introduction to the basic concepts underlying the field of cryptography, we review the most researched use cases concerning the use of AI techniques and models to design cryptographic primitives, focusing mainly on Boolean functions, S-boxes and pseudorandom number generators. We then point out two interesting directions for further research on the design of cryptographic primitives where AI methods could be applied in the future.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Personal communication.
References
Applebaum, B., Ishai, Y., Kushilevitz, E.: Cryptography by cellular automata or how fast can complexity emerge in nature? In: Proceedings of ICS 2010, pp. 1–19 (2010)
Bäck, T.: Evolutionary Algorithms in Theory and Practice - Evolution Strategies, Evolutionary Programming, Genetic Algorithms. Oxford University Press, Oxford (1996)
Bassham III, L.E., et al.: Sp 800–22 rev. 1a. a statistical test suite for random and pseudorandom number generators for cryptographic applications. National Institute of Standards & Technology (2010)
Bertoni, G., Daemen, J., Peeters, M., Assche, G.V.: The Keccak reference, January 2011. http://keccak.noekeon.org/
Burnett, L., Carter, G., Dawson, E., Millan, W.: Efficient methods for generating MARS-like S-boxes. In: Goos, G., Hartmanis, J., van Leeuwen, J., Schneier, B. (eds.) FSE 2000. LNCS, vol. 1978, pp. 300–313. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44706-7_21
Carlet, C.: Boolean Functions for Cryptography and Coding Theory. Cambridge University Press, Cambridge (2021)
Castro, J.C.H., Viñuela, P.I., del Arco-Calderón, C.L.: Finding efficient nonlinear functions by means of genetic programming. In: Palade, V., Howlett, R.J., Jain, L. (eds.) KES 2003. LNCS (LNAI), vol. 2773, pp. 1192–1198. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45224-9_161
Castro, J.C.H., Seznec, A., Isasi, P.: On the design of state-of-the-art pseudorandom number generators by means of genetic programming. In: IEEE Congress on Evolutionary Computation, pp. 1510–1516. IEEE (2004)
Castro, J.C.H., Viñuela, P.I.: New results on the genetic cryptanalysis of TEA and reduced-round versions of XTEA. New Gener. Comput. 23(3), 233–243 (2005)
Chopard, B., Tomassini, M.: An Introduction to Metaheuristics for Optimization. Natural Computing Series. Springer, Heidelberg (2018). https://doi.org/10.1007/978-3-319-93073-2
Clark, J.A., Jacob, J.L.: Two-stage optimisation in the design of boolean functions. In: Dawson, E.P., Clark, A., Boyd, C. (eds.) ACISP 2000. LNCS, vol. 1841, pp. 242–254. Springer, Heidelberg (2000). https://doi.org/10.1007/10718964_20
Clark, J.A., Jacob, J.L., Maitra, S., Stanica, P.: Almost boolean functions: the design of boolean functions by spectral inversion. Comput. Intell. 20(3), 450–462 (2004)
Clark, J.A., Jacob, J.L., Stepney, S.: The design of s-boxes by simulated annealing. New Gener. Comput. 23(3), 219–231 (2005)
Clark, J.A., Jacob, J.L., Stepney, S., Maitra, S., Millan, W.: Evolving boolean functions satisfying multiple criteria. In: Menezes, A., Sarkar, P. (eds.) INDOCRYPT 2002. LNCS, vol. 2551, pp. 246–259. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36231-2_20
Daemen, J., Govaerts, R., Vandewalle, J.: Invertible shift-invariant transformations on binary arrays. Appl. Math. Comput. 62(2), 259–277 (1994)
Daemen, J., Hoffert, S., Assche, G.V., Keer, R.V.: The design of Xoodoo and Xoofff. IACR Trans. Symmetric Cryptol. 2018(4), 1–38 (2018)
Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing. Natural Computing Series, 2nd edn. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-44874-8
Formenti, E., Imai, K., Martin, B., Yunès, J.-B.: Advances on random sequence generation by uniform cellular automata. In: Calude, C.S., Freivalds, R., Kazuo, I. (eds.) Computing with New Resources. LNCS, vol. 8808, pp. 56–70. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-13350-8_5
Fuller, J., Millan, W., Dawson, E.: Multi-objective optimisation of bijective S-boxes. In: Proceedings of CEC 2004, pp. 1525–1532 (2004)
Ghoshal, A., Sadhukhan, R., Patranabis, S., Datta, N., Picek, S., Mukhopadhyay, D.: Lightweight and side-channel secure 4 \(\times \) 4 S-boxes from cellular automata rules. IACR Trans. Symmetric Cryptol. 2018(3), 311–334 (2018)
Gohr, A.: Improving attacks on round-reduced speck32/64 using deep learning. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11693, pp. 150–179. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26951-7_6
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
Ilachinski, A.: Cellular Automata: A Discrete Universe. World Scientific Publishing Co. Inc. (2001)
Ivanov, G., Nikolov, N., Nikova, S.: Reversed genetic algorithms for generation of bijective s-boxes with good cryptographic properties. Cryptogr. Commun. 8(2), 247–276 (2016). https://doi.org/10.1007/s12095-015-0170-5
Jakobovic, D., Picek, S., Martins, M.S.R., Wagner, M.: A characterisation of S-box fitness landscapes in cryptography. In: Auger, A., Stützle, T. (eds.) Proceedings of GECCO 2019, pp. 285–293. ACM (2019)
Kari, J.: Basic concepts of cellular automata. In: Rozenberg, G., Bäck, T., Kok, J.N. (eds.) Handbook of Natural Computing, pp. 3–24. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-540-92910-9_1
Katz, J., Lindell, Y.: Introduction to Modern Cryptography, 2nd edn. CRC Press, Boca Raton (2014)
Koza, J.R.: Evolving a computer program to generate random numbers using the genetic programming paradigm. In: ICGA, pp. 37–44. Morgan Kaufmann (1991)
Krawec, W., Picek, S., Jakobovic, D.: Evolutionary algorithms for the design of quantum protocols. In: Kaufmann, P., Castillo, P.A. (eds.) EvoApplications 2019. LNCS, vol. 11454, pp. 220–236. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-16692-2_15
Lamenca-Martinez, C., Hernandez-Castro, J.C., Estevez-Tapiador, J.M., Ribagorda, A.: Lamar: a new pseudorandom number generator evolved by means of genetic programming. In: Runarsson, T.P., Beyer, H.-G., Burke, E., Merelo-Guervós, J.J., Whitley, L.D., Yao, X. (eds.) PPSN 2006. LNCS, vol. 4193, pp. 850–859. Springer, Heidelberg (2006). https://doi.org/10.1007/11844297_86
Leporati, A., Mariot, L.: Cryptographic properties of bipermutive cellular automata rules. J. Cell. Autom. 9(5–6), 437–475 (2014)
Manzoni, L., Mariot, L.: Cellular automata pseudo-random number generators and their resistance to asynchrony. In: Mauri, G., El Yacoubi, S., Dennunzio, A., Nishinari, K., Manzoni, L. (eds.) ACRI 2018. LNCS, vol. 11115, pp. 428–437. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99813-8_39
Manzoni, L., Mariot, L., Tuba, E.: Balanced crossover operators in genetic algorithms. Swarm Evol. Comput. 54, 100646 (2020)
Mariot, L., Jakobovic, D., Leporati, A., Picek, S.: Hyper-bent boolean functions and evolutionary algorithms. In: Sekanina, L., Hu, T., Lourenço, N., Richter, H., García-Sánchez, P. (eds.) EuroGP 2019. LNCS, vol. 11451, pp. 262–277. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-16670-0_17
Mariot, L., Leporati, A.: Sharing secrets by computing preimages of bipermutive cellular automata. In: Wąs, J., Sirakoulis, G.C., Bandini, S. (eds.) ACRI 2014. LNCS, vol. 8751, pp. 417–426. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11520-7_43
Mariot, L., Leporati, A.: A genetic algorithm for evolving plateaued cryptographic boolean functions. In: Dediu, A.-H., Magdalena, L., Martín-Vide, C. (eds.) TPNC 2015. LNCS, vol. 9477, pp. 33–45. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-26841-5_3
Mariot, L., Leporati, A.: Heuristic search by particle swarm optimization of boolean functions for cryptographic applications. In: Silva, S., Esparcia-Alcázar, A.I. (eds.) Companion Proceedings of GECCO 2015, pp. 1425–1426. ACM (2015)
Mariot, L., Picek, S., Jakobovic, D., Leporati, A.: Evolutionary search of binary orthogonal arrays. In: Auger, A., Fonseca, C.M., Lourenço, N., Machado, P., Paquete, L., Whitley, D. (eds.) PPSN 2018. LNCS, vol. 11101, pp. 121–133. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99253-2_10
Mariot, L., Picek, S., Leporati, A., Jakobovic, D.: Cellular automata based s-boxes. Cryptogr. Commun. 11(1), 41–62 (2019)
Marsaglia, G.: The marsaglia random number CDROM including the diehard battery of tests of randomness (2008). http://www.stat.fsu.edu/pub/diehard/
Martin, B.: A Walsh exploration of elementary CA rules. J. Cell. Autom. 3(2), 145–156 (2008)
Meier, W., Staffelbach, O.: Analysis of pseudo random sequences generated by cellular automata. In: Davies, D.W. (ed.) EUROCRYPT 1991. LNCS, vol. 547, pp. 186–199. Springer, Heidelberg (1991). https://doi.org/10.1007/3-540-46416-6_17
Millan, W., Burnett, L., Carter, G., Clark, A., Dawson, E.: Evolutionary heuristics for finding cryptographically strong S-boxes. In: Varadharajan, V., Mu, Y. (eds.) ICICS 1999. LNCS, vol. 1726, pp. 263–274. Springer, Heidelberg (1999). https://doi.org/10.1007/978-3-540-47942-0_22
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
Millan, W., Clark, A., 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). https://doi.org/10.1007/BFb0054148
Picek, S., Carlet, C., Jakobovic, D., Miller, J.F., Batina, L.: Correlation immunity of boolean functions: an evolutionary algorithms perspective. In: Proceedings of GECCO 2015, pp. 1095–1102 (2015)
Picek, S., Cupic, M., Rotim, L.: A new cost function for evolution of S-boxes. Evol. Comput. 24(4), 695–718 (2016)
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
Picek, S., Jakobovic, D.: Evolving algebraic constructions for designing bent boolean functions. In: Friedrich, T., Neumann, F., Sutton, A.M. (eds.) Proceedings of GECCO 2016, pp. 781–788. ACM (2016)
Picek, S., Jakobovic, D., Golub, M.: Evolving cryptographically sound boolean functions. In: Blum, C., Alba, E. (eds.) Companion Proceedings of GECCO 2013, pp. 191–192. ACM (2013)
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)
Picek, S., Knezevic, K., Jakobovic, D., Derek, A.: C\({}^{\text{3}}\)po: cipher construction with cartesian genetic programming. In: López-Ibáñez, M., Auger, A., Stützle, T. (eds.) Companion Proceedings of GECCO 2019, pp. 1625–1633. ACM (2019)
Picek, S., Knezevic, K., Mariot, L., Jakobovic, D., Leporati, A.: Evolving bent quaternary functions. In: 2018 IEEE Congress on Evolutionary Computation, CEC 2018, Rio de Janeiro, Brazil, 8–13 July 2018, pp. 1–8. IEEE (2018)
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
Picek, S., Mariot, L., Leporati, A., Jakobovic, D.: Evolving S-boxes based on cellular automata with genetic programming. In: Bosman, P.A.N. (ed.) Companion Proceedings of GECCO 2017, pp. 251–252. ACM (2017)
Picek, S., Mariot, L., Yang, B., Jakobovic, D., Mentens, N.: Design of S-boxes defined with cellular automata rules. In: Proceedings of CF 2017, pp. 409–414. ACM (2017)
Picek, S., Miller, J.F., Jakobovic, D., Batina, L.: Cartesian genetic programming approach for generating substitution boxes of different sizes. In: Companion Proceedings of GECCO 2015, pp. 1457–1458 (2015)
Picek, S., Sisejkovic, D., Rozic, V., Yang, B., Jakobovic, D., Mentens, N.: Evolving cryptographic pseudorandom number generators. In: Handl, J., Hart, E., Lewis, P.R., López-Ibáñez, M., Ochoa, G., Paechter, B. (eds.) PPSN 2016. LNCS, vol. 9921, pp. 613–622. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-45823-6_57
Picek, S., et al.: PRNGs for masking applications and their map** to evolvable hardware. In: Lemke-Rust, K., Tunstall, M. (eds.) CARDIS 2016. LNCS, vol. 10146, pp. 209–227. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-54669-8_13
Saber, Z., Uddin, M.F., Youssef, A.M.: On the existence of (9, 3, 5, 240) resilient functions. IEEE Trans. Inf. Theory 52(5), 2269–2270 (2006)
Seredynski, F., Bouvry, P., Zomaya, A.Y.: Cellular automata computations and secret key cryptography. Parallel Comput. 30(5–6), 753–766 (2004)
Shannon, C.E.: Communication theory of secrecy systems. Bell Syst. Tech. J. 28(4), 656–715 (1949)
Sipper, M., Tomassini, M.: Generating parallel random number generators by cellular programming. Int. J. Mod. Phys. C 7(02), 181–190 (1996)
Stinson, D.R., Paterson, M.: Cryptography: Theory and Practice. CRC Press, Boca Raton (2018)
Szaban, M., Seredynski, F.: Cryptographically strong S-boxes based on cellular automata. In: Umeo, H., Morishita, S., Nishinari, K., Komatsuzaki, T., Bandini, S. (eds.) ACRI 2008. LNCS, vol. 5191, pp. 478–485. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-79992-4_62
Tomassini, M., Perrenoud, M.: Cryptography with cellular automata. Appl. Soft Comput. 1(2), 151–160 (2001)
Wolfram, S.: Cryptography with cellular automata. In: Williams, H.C. (ed.) CRYPTO 1985. LNCS, vol. 218, pp. 429–432. Springer, Heidelberg (1986). https://doi.org/10.1007/3-540-39799-X_32
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Mariot, L., Jakobovic, D., Bäck, T., Hernandez-Castro, J. (2022). Artificial Intelligence for the Design of Symmetric Cryptographic Primitives. In: Batina, L., Bäck, T., Buhan, I., Picek, S. (eds) Security and Artificial Intelligence. Lecture Notes in Computer Science, vol 13049. Springer, Cham. https://doi.org/10.1007/978-3-030-98795-4_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-98795-4_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-98794-7
Online ISBN: 978-3-030-98795-4
eBook Packages: Computer ScienceComputer Science (R0)