Applications of Evolutionary Computation to Cryptology : :international dual doctorate - Picek, Stjepan 1984 (IPA dissertation series, 2015)
SUMMARY: In this dissertation we work on several applications of evolutionary computation to difficult problems in cryptology. After the introduction, first chapter deals with the evolution of Boolean functions that can be used in cryptography. Next chapter deals with the evolution of S-boxes with the goal of increasing their DPA resistance. Next application is optimization of combinatorial circuits in order to increase the throughput. Final application is the evolution of search space parameters that can lead to successful fault injection. Besides these applications, we developed a framework for evolution, evaluation and transformation of nonlinear elements. Scientific contributions: Development of a framework for generation, evaluation and affine transformation of Boolean functions and S-boxes. First applications of GP, CGP and ES when evolving Boolean functions for cryptographic usage. Extensive statistical comparison between different EAs when evolving cryptographically suitable Boolean functions. First application of GA when evolving S-boxes that have DPA-improved properties. Experimental results that show DPA-related properties are not affine invariant. First practical results for the modified transparency order and the confusion coefficient properties. Finding upper and lower bounds for the modified transparency order and the confusion coefficient properties for a 4x4 S-box size. Finding S-boxes of size 4x4 with the optimal values of the transparency order, the modified transparency order and the confusion coefficient properties. First application of EAs to the problem of increasing throughput of combinatorial circuits by adding a number of flip-flops. Development and deployment of a custom GA for finding search space parameters that cause faults in smart cards. Development of a custom MA for finding search space parameters that cause faults in smart cards and rapid characterization of the search space.