ABSTRACT

This chapter defines S-boxes more formally as well as their desirable properties. It presents the multi-objective Nash equilibrium-based evolutionary algorithm, used to evolve resilient S-box coding and gives a brief description of the principles of evolvable hardware. The chapter describes the S-box encoding and gives the definition and implementation of the fitness evaluation of an S-box coding with respect to all three considered properties: regularity, non-linearity, and auto-correlation. It presents the methodology employed to evolve new compact, fast, and less demanding hardware for S-boxes and define the related fitness evaluation with respect to all three hardware characteristics: area, time, and power consumption. The chapter assess the quality of the evolved S-box codes together with the corresponding hardware. S-boxes play a basic and fundamental role in many modern block ciphers. In block ciphers, they are typically used to obscure the relationship between the plaintext and the ciphertext.