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