J Glob Optim (2010) 47:597–613 DOI 10.1007/s10898-009-9481-4 A combined DCA: GA for constructing highly nonlinear balanced boolean functions in cryptography Hoai Minh Le · Hoai An Le Thi · Tao Pham Dinh · Pascal Bouvry Received: 6 April 2007 / Accepted: 22 October 2009 / Published online: 5 November 2009 © Springer Science+Business Media, LLC. 2009 Abstract Substitution boxes, aka S-boxes, are a key component of modern crypto-systems. Several studies and developments were carried out on the problem of building high-quality S-boxes in the last few years. Qualities of such boxes, such as nonlinearity and balance, steer the robustness of modern block ciphers. This work is concerned with the construction of highly nonlinear balanced Boolean functions. A deterministic optimization model which is the minimization of a polyhedral convex function on a convex polytope with 0–1 variables is introduced. A local deterministic optimization approach called DCA (Difference of Convex functions Algorithm) is investigated. For finding a good starting point of DCA we propose two versions of a combined DCA–GA (Genetic Algorithm) method. Numerical simulations prove that DCA is a promising approach for this problem. Moreover the combination of DCA–GA improves the efficiency of DCA and outperforms other standard approaches. Keywords Cryptography · Boolean function · Nonlinear balanced Boolean function · Nonlinearity · Genetic Algorithm · Hybrid Genetic · DC programming · DCA · Mixed 0–1 polyhedral convex program · Exact penalty H. M. Le · H. A. Le Thi (B ) Laboratory of Theoretical and Applied Computer Science (LITA EA 3097) UFR MIM, University of Paul Verlaine - Metz, Ile du Saulcy, Metz 57045, France e-mail: lethi@univ-metz.fr T. Pham Dinh Laboratory of Modelling, Optimization and Operations Research, National Institute for Applied Sciences - Rouen, BP 08, Place Emile Blondel, Mont Saint Aignan Cedex 76131, France P. Bouvry Computer Science Research Unit, University of Luxembourg, Campus Kirchberg, 6 Rue Richard Coudenhove-Kalergi, Luxembourg 1359, Luxembourg 123