A novel method to generate key-dependent s-boxes with identical algebraic properties. (February 2022) - Al-Dweik, Ahmad Y.; Hussain, Iqtadar; Saleh, Moutaz; Mustafa, M.T.
Abstract: The s-box plays the vital role of creating confusion between the ciphertext and secret key in any cryptosystem, and is the only nonlinear component in many block ciphers. Dynamic s-boxes, as compared to static, improve entropy of the system, hence leading to better resistance against linear and differential attacks. It was shown in Easttom (2018) that while incorporating dynamic s-boxes in cryptosystems is sufficiently secure, they do not keep non-linearity invariant. This work provides an algorithmic scheme to generate key-dependent dynamic n × n clone s-boxes having the same algebraic properties namely bijection, nonlinearity, the strict avalanche criterion (SAC), the output bits independence criterion (BIC) as of the initial seed s-box. The method is based on group action of symmetric group S n and a subgroup S 2 n respectively on columns and rows of Boolean functions ( G F ( 2 n ) → G F ( 2 ) ) of s-box. Invariance of the bijection, nonlinearity, SAC, and BIC for the generated clone copies is proved. As illustration, examples are provided for n = 8 and n = 4 along with comparison of the algebraic properties of the clone and initial seed s-box. The proposed method is an extension of Hussain et al. (2012); Hussain et al. (2012); Hussain et al. (2018); Anees and Chen (2020) which involved group action of S 8 only on columns of Boolean functions ( G F ( 2 8 ) → G F ( 2 ) ) of s-box. For n = 4, we have used an initial 4 × 4 s-box constructed by Carlisle Adams and Stafford Tavares (Adams and Tavares, 1990) to generated ( 4 ! ) 2 clone copies. For n = 8, it can be seen (Hussain et al. (2012); Hussain et al. (2012); Hussain et al. (2018); Anees and Chen (2020)) that the number of clone copies that can be constructed by permuting the columns is 8 ! . For each column permutation, the proposed method enables to generate 8 ! clone copies by permuting the rows.