Abstract

This paper proposes a novel method of constructing strong substitution-boxes (S-boxes) of order n (4 ≤ n ≤ 8) based on a recent optimization algorithm known as sine-cosine algorithm (SCA). The paper also proposes a new 1D chaotic map, which owns enhanced dynamics compared to conventional chaotic map, for generating initial population of S-boxes and facilitating the optimization mechanism of SCA. The proposed method applies the SCA with enhanced chaotic map to explore and exploit the search space for obtaining optimized S-boxes on the basis of maximization of nonlinearity as fitness function. The S-box construction involves three phases such as initialization of population, optimization, and adjustment. The simulation and performance analyses are done using standard measures of nonlinearity, strict avalanche criterion, bits independence criterion, differential uniformity, linear approximation probability, and autocorrelation function. The obtained experimental results are compared with some immediate optimization-based and other S-boxes to show the strength of proposed method for constructing bijective S-boxes of salient cryptographic features.

1. Introduction

Due to recent technological advancements, the transfer of sensitive data ranging from text to images and video has made it exigent to employ effective cryptographic systems for their security. In the sphere of cryptographic systems, the properties of confusion and diffusion are the two significant aspects for a strong secure cipher [1]. The property of confusion enables cipher to make the connection between the encryption key and the encrypted message as complicated as could be, while diffusion aims to diminish the reliance between the plain message and the comparing encrypted message as much as possible. The process of substitution (a plain message supplanted by another) has been distinguished as an efficient way for fundamental confusion property. On the other hand, transposition (disturbing securely the order of message symbols) is a procedure meant for diffusion [2]. Further, the product cipher utilizes substitution and transposition processes alternatively to accomplish both confusion and diffusion for strong security of the system. The property of confusion is achieved through nonlinear vectorial Boolean functions termed as substitution-box (S-box). An S-box is an integral component of the cryptographic systems which performs substitution.

Fundamentally, a bijective n×n substitution-box is a mathematical one-to-one mapping S from to , where n is its order denoting the inputs and outputs sizes. It is also regarding multi-input and multioutput Boolean function as , where fi (0 ≤ i n-1) is component n-variable function defined as fi: [3]. In bijective S-box of order n, the number of preimages of each output is only one and can be represented through permutation of . S-boxes are essential components of symmetric ciphers which are inherently used in block ciphers based on substitution-permutation networks (SPN) and Feistel architecture [4, 5]. The security of these cryptosystems majorly relies on the potency of nonlinear mapping of S-boxes transforming plaintext to ciphertext. Eventually, the power of symmetric cryptosystems heavily depends on the cryptographic strengths of substitution-boxes employed, which in turn weigh on their design methodology. Hence, designing strong S-boxes is really essential for good symmetric cryptosystems. The design methods and criteria required to engineer S-boxes include characteristics of simplicity, primarily large nonlinearity, and good balance of other performance criteria. The methods based on algebraic techniques are studied as they show strong properties such as high nonlinearity and resiliency to differential/linear cryptanalyses [6, 7]. But, recent algebraic cryptanalysis has uncovered that they are imperfect to algebraic attacks [8, 9]. Therefore, instead of targeting new S-boxes using formal algebraic approaches, we need to explore some alternative S-boxes design methods. As an option, a number of alternative methods are being investigated in recent past to yield S-boxes using various optimization techniques [1025] and chaotic systems [2632]. Theoretically, a strong S-box possesses the features like balancedness, high nonlinearity, small differential uniformity and linear probability, strict avalanche effect close to 0.5, output bits independence, low autocorrelation, etc. [27, 33].

1.1. Related Work

There have been a number of proposals investigated in literature which are based on metaheuristic techniques for evolving strong S-boxes. The reviews of recent optimization-based 8×8 S-box proposals are as follows: Wang et al. and Guesmi et al. in [1012] explored the features genetic algorithm (GA) for evolving 8×8 S-box. The chaotic logistic map and tent map are adopted in [10, 11] for initialization of starting populations and parameters of GA. Wang et al. did an improvisation in the adjustment phase of same approach to construct more potent S-box in [11]. However, Guesmi et al. made use of logistic map for initial S-box design and a differential chaotic Lorenz system for performing the operations of crossover and mutation during GA optimization process in [12]. Ahmad et al. explored the metaheuristics Ant Colony Optimization (ACO) to optimize single initial S-box in [13]. Here, a combination of chaotic tent map and logistic map is put on to get initial S-box. The optimized S-box was exacted to have respectable cryptographic features compared to some S-boxes. In [14], the Artificial Bee Colony (ABC) algorithm and hyperchaotic map are sought to yield effective 8×8 S-box, wherein a 6D hyperchaos was applied for initial population of S-boxes. The same author engaged Bacteria Foraging Optimization (BFO) with intertwining logistic map with similar approach for S-box optimization in [15]. In [16], the well-known traveling salesman problem is attempted for generating a strong S-box. The weights of edges of subgraphs extracted from initial S-box are randomly decided by skew tent map. Farah et al. presented a chaotic map and Teaching-Learning Based Optimization (TLBO) based method for efficient S-box design in [17]. The TLBO is applied to find the optimized keys that ensued into an S-box which satisfied the given conditions as fitness function. Hussam et al. practiced the firefly algorithm (FA) for optimizing an initial S-box from a discrete-space chaotic map in [18]. Zhang et al. implemented the I-Ching Operators (ICO) evolved from Chinese I-Ching philosophy inventively for getting optimized 8×8 S-boxes in [19]. Recently, Alzaidi et al. investigated a β-hill climbing technique which is an individual-based optimization algorithm for generating an 8×8 S-box in [20], where the initial individual candidate S-box and parameters of improved hill climbing technique are rendered using a new discrete-chaotic map. Moreover, Ye et al. operated an O-shaped path shuffling mechanism to obtain a strong configuration S-box in [26], where the starting S-box is derived from chaotic sequences of 6D fractional Lorenz-Duffing system.

The optimization-based proposals which reported generic method to construct bijective S-boxes of order n for 5 ≤ n ≤ 8 are reviewed as follows: Millan gave a design strategy based on hill climbing (HC) approach for evolving highly nonlinear S-boxes in 1998 [21]. In [22], a tweaking based heuristic technique was presented to generate optimized power mapping-based S-boxes by mutation operations. In [23], both the Particle Swarm Optimization (PSO) and Differential Evolution (DE) techniques are applied to construct many n×n S-boxes. Tesar suggested a particular genetic algorithm and total tree search to optimize smaller S-boxes in [24]. Picek et al. investigated an improvised cost function for getting better S-boxes using GA, GA with the feature of tree search (GaT), and Local Search Algorithm (LSA) in [25]. Recently, Solami et al. in [27] executed a random Heuristic Search (HS) approach using hyperchaotic system for synthesis bijective S-boxes.

1.2. Our Contribution

We explore a recent optimization mechanism of sine-cosine algorithm which is based on mathematical sine and cosine functions for synthesis of strong bijective S-boxes. The initialization of input parameters of proposed method is executed through 1D chaotic map. The improved chaotic map has enhanced dynamics compared to some widely used 1D chaotic maps. The contributions of our paper are as follows:(i)A generic method capable of constructing strong bijective S-boxes of order n (4 ≤ n ≤ 8) is proposed using sine-cosine algorithm (SCA) and chaos. The maximization of nonlinearity of S-box is considered as the fitness function during optimization phase.(ii)An improved discrete 1D chaotic map is proposed which is found to have considerably better chaotic dynamics and performance with respect to Lyapunov exponent, bifurcation, uniform distribution, chaotic range, approximate entropy, and randomness.(iii)The parameters of SCA and initial population of bijective S-boxes are generated chaotically though our improved chaotic map.(iv)We performed experiments to know the effectiveness of proposed generic method for constructing strong S-boxes using standard performance criteria.(v)We compared the obtained results with most of the optimization-based S-box design works and other recent S-boxes works to justify the superlative performance of our method over most of the existing ones.

The remaining portion of this paper is developed as follows. The mathematical model and dynamics of new chaotic map are discussed in Section 2. A brief review and working of sine-cosine algorithm are introduced in Section 3. The proposed method of constructing bijective S-boxes based on SCA and new chaotic map is provided in Section 4. Section 5 is devoted to experimentation, performance evaluation, and comparison with recent S-box proposals. Section 6 provides the conclusion of works done in paper.

2. Proposed Chaotic Map and Its Dynamics

In this section, the enhanced dynamics and improved chaotic performance of proposed 1D chaotic map are discussed. It is quite known that most of the 1D chaotic maps are found to have either of the following limitations as far as their chaotic phenomenon is concerned.(i)They have limited chaotic range for control parameter.(ii)They have only one control parameter.(iii)They have low value of largest Lyapunov exponent.(iv)They exhibit nonuniform distribution in their own bounded region.(v)Their return map shows nonuniform coverage of attractor in phase space.

The 1D chaotic maps which suffer from one or more of these demerits are the well-known logistic map, sine map, Chebyshev map, cubic map, tent map, etc. [3638]. Therefore, a considerable research is devoted to designing improved chaotic maps which do not exhibit the above-mentioned problems [3841]. In this paper, we modify the chaotic sine map to present a new chaotic map which is found to have enhanced dynamics and chaotic performance compared to conventional chaotic sine map. The chaotic sine map is given as

Here, is its control parameter and is the chaotic variable for all n ≥ 0. The diagrams representing Lyapunov exponent, bifurcation, and attractors plot are shown in Figure 1 for x0 = 0.1234567, a =1. The proposed chaotic map governs the following equation.

Here, c and r are two control parameters of map (2); xn is its chaotic sequence variable which is bounded within . We analyze the dynamics of our proposed 1D chaotic map (2) using Lyapunov exponent, bifurcation, chaotic attractor’ phase space, approximate entropy, and randomness behaviors as follows.

2.1. Lyapunov Exponent

The Lyapunov exponent (LE) of a dynamical map characterises the velocity of separation between two close trajectories. It is computed using the following mathematical formula.

It indicates the degree of chaotic behavior of a function and a positive value indicates higher orbital divergence and existence of chaos. It means that function shows high dependence on initial condition, which is one of the characteristics of a chaotic map. A higher value of positive LE indicates more complicated dynamics showing stronger dependence on initial conditions and better divergence in phase space and [42]. By default, x0 = 0.1234567, c=10, r=10 are taken as initial values for new map (2). The Lyapunov exponent diagrams of proposed map versus the two control parameters c and r are shown in Figures 2(a)2(c). The diagram shows that map (2) exhibits chaotic phenomenon as the LEs are satisfactorily positive in all three diagrams except for the value of c near 5 as evident from Figure 2(b). Therefore, a value of c ≥ 6 is recommended for obtaining good chaotic dynamics of our map. We further analyze the LE for higher values of r and c, and it has been noted that LE is about 4.6 for any r > 0 and increases with increase in c ≥ 6. Another LE diagram is provided in Figure 2(c) for to demonstrate the exponent’s increasing behavior based on parameter c. The LE values for two maps are compared in Table 1. The maximum values of largest LE proposed chaotic map for different parameter values are significantly higher than maximum LE of chaotic sine map. The LEs further show that the proposed chaotic map has got sufficiently extended chaotic range for wider range of control parameters. Hence, the proposed chaotic map provides better chaotic behavior and sensitivity to initial conditions.

2.2. Bifurcation

In chaos theory, the bifurcation diagram of a dynamical system shows the way its values approached asymptotically as a function of bifurcation parameters. It represents the qualitative changes of the system as a map of parameters. The bifurcation behavior of proposed map is analyzed and representative diagrams are shown in Figures 2(d)2(f) for two parameters r and c. The diagrams show that output values of map have uniform distribution over the complete range of and it has been found that such uniformity persists even for larger values of control parameters. Hence, the proposed map offers good bifurcation behavior for both the control parameters.

2.3. Chaotic Attractor’s Phase Diagram

For the dynamical map xn+1 = F(xn, parameters), the plot of xn+1 versus xn denotes the attractor’s behavior in phase space; it is also referred to as the return map. It demonstrates the way the attractor visits its phase space. The phase diagram of proposed map is evaluated and provided in Figure 2(g). It is clear that chaotic attractor of our map visits the whole phase space and dispersed uniformly unlike the attractor of chaotic sine map, thereby, showing the enhanced dynamics of proposed chaotic map.

2.4. Approximate Entropy

Approximate entropy (ApEn) is a statistic that was introduced by Steve Pincus [43] in 1991 to quantify the irregularity in time series. It is one of the most exploited, nonlinear entropy measures that deal with the amount of complexity content in time series data. A small ApEn indicates that the time series is deterministic, whereas its higher value indicates randomness and complexity. This means a time series with lesser repeated patterns has a high ApEn and, thus, will be less predictable. ApEn is a model independent measure of sequence irregularity that is very less affected by noise, which makes it useful in distinguishing correlated stochastic processes and composite deterministic processes. Due to these properties, it is used to characterise complexity content in chaotic behavior of dynamical maps. The ApEn of sequences of floating-point values of size 10000 from two chaotic maps under analysis are computed and listed in Table 2. The calculated ApEn score for chaotic sine map (a = 1) is 0.60017, whereas the value of 1.31088 is obtained for proposed chaotic map (c=10, r=10). The higher ApEn score for proposed map verifies that the sequences from proposed chaotic map (2) have higher complexity, unpredictability, and irregularity compared to classical chaotic sine map.

2.5. Randomness

NIST SP800-22 statistical test suite is standard and most complete random test suite. It is used to gain confidence that the anticipated scheme is potent to generate sequences of high randomness. NIST defines a statistical package for testing randomness of sequences. The suite consists of 15 different statistical tests [44]. In each test, a p_value is computed from input sequence of length N. The p_value should be greater than significant level to pass a test and if the sequence passes all tests it is considered random with confidence of 1- . Otherwise, it is deemed to be nonrandom sequence. By default is taken to be 0.01, which means that one would expect 1 sequence in 100 to be rejected. It is better for length of input sequences to be at least 106. In order to perform NIST randomness tests, the proposed chaotic map (2) is executed for 106 times and each chaotic value is transformed to binary for having a binary sequence of length 106. The obtained binary sequence is tested for randomness using NIST test suite whose results are listed in Table 3. All the p_values for 15 different tests are quite higher than = 0.01 to show that the generated sequence passed all the tests. Hence, the proposed chaotic map has capability to generate sequences of high randomness.

We found that the proposed chaotic map does not suffer from the limitations discussed earlier as the new map has (1) extremely wider chaotic range for both control parameters, (2) two control parameters which augment the key space of security primitive based on this map, (3) high magnitude of largest Lyapunov exponent, (4) more uniform distribution of chaotic values over the whole range of , and (5) high randomness in generated sequences. Hence, the dynamics of proposed chaotic map are better than some existing 1D chaotic maps and appropriate for utilization in any secure cryptographic primitive design.

3. Sine-Cosine Algorithm (SCA)

Sine-cosine algorithm is an effective population-based optimization algorithm which capitalizes the cyclic patterns of mathematical sine and cosine functions to figure out optimization problems. It is recently proposed by Seyedali Mirjalili and proved to have a considerably faster convergence than PSO, GA, FA, Gravitational Search Algorithm (GSA), Bat Algorithm (BA), and Flower Pollination Algorithm (FPA) [45]. Being a population-based technique, it begins with initial generation of random solutions Xi (search agents) in search space which get improved on iterations. An effective optimization technique should have a good balance of two phases: exploration and exploitation [46]. The feature of exploration is meant to explore the promising regions of search space that are not yet examined with high rate of randomness. In exploitation, incremental changes in random solutions are incorporated to look for neighbouring solutions. In SCA, several parameters are integrated to emphasize equally exploration and exploitation aspects of search space to avoid problem of local optima. Sine-cosine algorithm uses the following equation to update the position of search agent Xi according to parameter r4.

Here, denotes the position of current solution at iteration and dimension; Pi indicates the best solution obtained so far in dimension. It involves four parameters r1, r2, r3, and r4. The parameter r1 guides the direction of next solution movement; r2 controls the amount of random displacement of movement; parameter offers random weight for best solution (so far) to emphasize (r3 > 1) or deemphasize (r3 < 1) its effect; the random parameter helps to switch uniformly between the sine and cosine functions. This cyclic effect of sine and cosine functions enables a solution to reposition around another solution which ensures the exploitation of search space. However, the exploration is achieved by varying the range of two functions through random fixing of parameter r2 in . This way, both exploration and exploitation are guaranteed in during SCA iterations. To balance these two features for effective space search mechanism, it is recommended to update the range of sine and cosine adaptively using equation in [45].

Here, t is current iteration number, T is maximum allowed iterations, and s is a constant. The primary steps of SCA operation are as follows:

(1) initialize a set of search agents (solutions)

(2) set maximum number of iterations Max_iterations

(3) repeat

(4)  Evaluate each agent Xi by fitness function

(5)  Update the best solution achieved so far ()

(5)  Update r1 using equation (5)

(6)  for each search agent Xi

(7)   Update r2, r3, and r4

(8)   Update Xi using equation (4)

(9) while (current_iteration < Max_iterations)

(10) return the best solution P

4. Proposed Bijective S-Box Construction

This section presents the proposed bijective S-boxes construction method using sine-cosine algorithm. For bijective S-boxes of sizes 4×4, 5×5, 6×6, 7×7, and 8×8, the respective dimensions are 16, 32, 64, 128, and 256 which correspond to approximated volume of search spaces as high as 1013, 1035, 1089, 10215, and 10506, respectively. We can see that the total search space for S-box search method is quite vast. Practicing a total random (or chaos-based) search does not guarantee a strong S-box [25]. Therefore, it is persuasive to apply a systematic or metaheuristic search technique that can cogently explore and exploit the search space [18].

To begin, a number of random S-boxes of order n are generated using new chaotic map (2) by initialization( ) procedure. The steps of sine-cosine algorithm are followed to update all S-box candidates around best S-box obtained so far (termed as dest_sbox_g). The updating of S-boxes may violate the bijectivity property. Therefore, a modified adjustment() procedure suggested in [11] is executed to remove the duplicate entries and add the missing S-box elements so as to lessen the decrease in nonlinearity. The adjustment is done by scanning the S-box for redundant and missing values. For each redundant entry, the decrease in nonlinearity (d) is calculated corresponding to each missing value. The redundant entry is replaced by the missing value for which d is minimum. After the replacement of all redundant values, the bijectivity of S-box is restored. The select_best( ) procedure is intended to return an S-box of order n having highest nonlinearity score among all input S-boxes; i.e., it provides local best S-box for the current iteration. This local best is adjudged against the best S-box achieved so far for reconsideration of global best S-box revision. The fitness of an S-box is determined by computing its nonlinearity performance metric. It is to be noted that most perfect affine and linear approximation attacks reported in [47, 48] have justified the significance of synthesizing S-boxes with high nonlinearity scores. Consequently, the nonlinearity measure, in particular, has given much priority in most of the S-box works available in literature [49]. Therefore, the S-box having higher nonlinearity is preferred over the other S-box during local best selection and global best revision in the optimization iteration of proposed method. The nonlinearity measure of an S-box is discussed in Section 5. A highly nonlinear configuration of n×n S-box is obtained when maximum allowable iterations are reached. The steps of proposed S-box construction method are as follows:

SCA-Optimization ( )

(1) Input order of S-box as n (4 ≤ n ≤ 8), pop_count, Max_itreration, len = 2n

(2) Generate initial population of n×n S-boxes Xi and store them in 3D matrix X = X1, X2, …, Xpop_count

(3)  

(4) Determine local best S-box Xi among X1, X2, …, Xpop_count having larger nonlinearity

(5)  

(6)

(7)

(8) while ()

(9) Update r1

(10)  for i = 1 to pop_count

(11)   for j = 1 to len

(12)    Update r2, r3 and r4

(13)    Update each element of X according to r4 as

(14)     if (r4 < 0.5)

(15)      

(16)     else

(17)      

(18)     endif

(19)   endfor

(20)  endfor

(21)  for t = 1 to pop_count

(22)   

(23)  endfor

(24)  

(26)  

(26)  if(Fitness_p Fitness_g)

(27)   Update Fitness_g and dest_sbox_g with best solution

(28)  endif

(29)  

(30) endwhile

(31) return dest_sbox_g

Initialization (pop_count, n)

(1) Initialize x0, c, r, T, , , ,

(2) Take an empty matrix sbox[i][j]

(3) Execute chaotic map (2) for β times and dispose the values, except the last

(4) t = 1

(5) while ()

(6) j = 1

(7) while (j < len)

(8)    Further execute map (2) once and collect output x

(9)    

(10)    if ( ))

(11)      append q to

(12)      

(13)    endif

(14) endwhile

(15)

(16) endwhile

(17) return sbox

Adjustment (S)

(1) Set len = length(S), and

(2) Scan S to find all missing elements and store them in array M whose length is k

(3) for i = 1 to len

(4)  Find first repeated value w in S, break if no repeated value exists

(5)  Calculate nonlinearities of S as N1, N2, N3,..., Nn

(6)  for j = 1 to k

(7)   Replace w by M(j) in S and Sj is resulted

(8)   Calculate nonlinearities of Sj as

(9)   Calculate the decrease of nonlinearities as

(10)  endfor

(11)  Denote Snew as the S-box having decrease of nonlinearities not smaller than the other S-boxes.

(12) S = Snew

(13) endfor

5. Performance Results

The experimental setting for performing experiment and simulation analysis includes order of S-box , x0 = 0.1234567, c = 10, r = 10, β = 100, Max_iteration = 500, pop_count = 3, and s = 3. Here, the SCA parameters r2, r3, and r4 are randomly calculated every time they needed within their specified ranges using chaotic variable obtained by further iterating chaotic map (2). The parameter r1 is adaptively updated using s as per (5). The five optimized n×n S-boxes (for 4 ≤ n ≤ 8) shown in Tables 48 are obtained using proposed method. All floating-point operations are done according to IEEE-754 floating-point standard. All five proposed bijective S-boxes are assessed cryptographically against standard performance benchmarks metrics including nonlinearity, strict avalanche criterion, bit-independent criterion, differential uniformity, LAP, and autocorrelation function. The proposed S-boxes are bijective as the number of preimages of each S-box output is only one and all 2n elements of proposed n×n S-box are distinct and lie in . The S-boxes of size 8×8 are particularly emphasized in literature. Therefore, the detailed performance outcomes and corresponding metric tables are provided exclusively for our 8×8 S-box. The performance results of all five bijective S-boxes are also compared with recent S-boxes which are majorly based on optimization techniques.

5.1. Nonlinearity

The S-boxes are typically vectorial Boolean functions; as a result their nonlinearity score is determined by finding the nonlinearity of its component Boolean functions. The measure of nonlinearity of S-boxes used in block ciphers is crucial as it puts restraint on the linear attacks. A higher nonlinearity provides a bad approximation by linear functions and makes the linear cryptanalysis difficult for attacker [12]. It is the sole purpose of S-boxes to offer highly nonlinear transformation from input data to the encoded data. Practically, the nonlinearity for any n-bit Boolean function f(x) is figured out via Walsh spectrum as [49, 50].

Here Wf(z) is the Walsh spectrum of Boolean function f(x), which is defined as

Here, x.z is the bitwise dot product and . We calculated the nonlinearity of component n Boolean functions of our proposed n×n S-boxes which are put together in Table 9. High nonlinearity of our all S-boxes proved the effectiveness of proposed S-box method in terms of generating highly nonlinear S-boxes. Specifically, the respective scores for proposed 8×8 S-box in Table 4 are 110, 110, 110, 110, 110, 108, 110, and 108, indicating that all nonlinearities are greater than or equal to 108 with a remarkable average of 109.5. Thus, the proposed method is able to offer high nonlinearity, strong confusion, and good defiance to approximation assaults.

5.2. Strict Avalanche Criterion

Webster and Tavares generalized the idea of avalanche effect and introduced its formal version which was named as the strict avalanche criterion (SAC). If f is a Boolean function such that it satisfies SAC, it entails that if we one alters any one of the input data bits, then all of the output bits should be modified with an ideal probability of 1/2. In order to verify SAC for S-boxes, the dependency matrix using an approach given in [51] is determined. Each value of the dependency matrix should be close to the ideal value of 0.5, whose average is identified as the SAC value. An ideal SAC is crucial to shrink the chances of correlation among all input/output combination and information leakage to attackers. To illustrate this, the estimated dependency matrix for proposed 8×8 S-box is shown in Table 10, whose average is 0.4985 which is reasonably close to 0.5. The average of dependency matrices for other proposed S-boxes is also obtained and their respective averages are listed in Table 11 to demonstrate the satisfactory performance of our S-boxes with respect to stated avalanche criterion.

5.3. Bits Independent Criterion

Another performance measure for S-boxes referred to as bits independent criterion (BIC) has been apprised by Adams and Tavares [52]. It entails that when any input bit is inverted the output bits should change independently for all pairs of avalanche vectors. This means that the output bits should be pairwise independent. Let f1, f2, …., fn be the component n Boolean functions of a bijective S-box of order n, it is said to accomplish the criterion provided that the function fk fj (k j, 0 ≤ k, j n-1) is highly nonlinear and also satisfies the SAC. The BIC results for all possible functions fk fjof proposed 8×8 S-box are calculated and shown in Tables 12 and 13 for both nonlinearity and SAC measures. The average value of BIC-nonlinearity matrix is 104.07, which is a pretty high and the average of BIC-SAC matrix is 0.5020, which is also close to 0.5. These two averages are also computed for other proposed S-boxes and listed in Table 14. The obtained BIC results designate that proposed S-boxes are quite proficient in fulfilling the BIC performance criterion.

5.4. Differential Uniformity

Measure of differential uniformity (DU) is associated with the change in the differential output detected for a change in input . It is observed to quantify robustness of S-box to differential cryptanalysis practiced by Biham and Shamir [53]. DU denotes the upper limit of likelihoods of yielding an output differential ∆b =bibj when the input differential is ∆a = aiaj. For computation, the exclusive-OR distributions between the inputs and outputs of anticipated S-box are recorded using the following expression.

Adopting the procedure explained in [53], the I/O exclusive-OR distribution for proposed 8×8 S-box is figured out and presented in Table 15. We can see that its largest entry is 10 which is the obtained differential uniformity of our S-box. The DU scores of our other S-boxes are provided in Table 16. The proposed S-boxes are found to have low differential uniformities and hence able to resist differential cryptanalysis.

5.5. Linear Approximation Probability

The notion of linear approximation probability to assess robustness of an S-box is introduced by Matsui [48]. It denotes the likelihood of getting a linear approximation of anticipated S-box. The LAP of an S-box relies on the concurrence of input bits with output bits. To compute LP, for two chosen masks ma and mb, the mask of all possible values of input a is evaluated. Similarly, the masks of all output values b = S(a) for given S-box S are determined. The highest occurrence of the results is considered as LAP. Accordingly, this probability is computed mathematically as

Here, ma and mb denoted mask values of inputs and outputs and there are 2n possible inputs a for bijective n×n S-box. An S-box with high LAP score may lead to break under Matsui’s linear cryptanalysis. We followed the procedure given in [48] to calculate the LAP for our proposed S-boxes; the obtained probabilities are provided in Table 16. In particular, the LAP score for proposed 8×8 S-box comes out as 0.1328 which is fairly low compared to several contemporary S-boxes.

5.6. Autocorrelation Function

Mathematically, the autocorrelation function of any Boolean function f is determined as [54]

Here, r(d) = 2n (when d = 0) for all Boolean functions, and for other possible inputs r(d) lies in . The highest value of ACF is designated as the absolute indicator of function f which ascertains good diffusion property as cryptographic quality of function [55]. It is expressed as

The ACF quality metric of Boolean functions is broadened to gauge an S-box S: by taking all 2n -1 nonzero linear combinations F of all its n component functions. For an S-box, it is obtained using the following expression [56].

For a cryptographically strong S-box, the score of ACF of S-box should be kept as low as possible. The largest of ACF score for our 8×8 S-box comes out as 96. The ACF scores for all proposed bijective S-boxes are shown in Table 16.

5.7. Comparison

The performance outcomes of proposed S-boxes obtained in previous sections are compared with optimization-based and other S-boxes recently suggested in literature. For cryptographic strength, the S-boxes, having larger nonlinearity, SAC closer to 0.5, maximum nonlinearity, and satisfaction of SAC while examining bits independent criterion, lower differential uniformity, LAP, and autocorrelation, are appreciated. Specifically, the performance comparison of proposed 8×8 S-box is done in Table 17; the following remarks are recognized:

(a) The proposed S-box is proficient to supply highest nonlinearity compared to all S-boxes investigated in Table 17. The statistics of minimum (108) is equal to S-boxes in [10, 11, 19], maximum (110) is similar to S-boxes in [1117, 19], and these statistics are better than rest of the S-boxes of Table 17. It shows that proposed method can construct highly nonlinear S-boxes than most of the recent S-boxes.

(b) The SAC score of proposed 8×8 S-box is 0.4985 which indicates that S-box can satisfy the avalanche criterion quite well similar to other recent S-boxes and it is found slightly better than most of the listed S-boxes.

(c) The bits independent criterion for nonlinearity and SAC comes out as 104.07 and 0.5020 for proposed S-box. Our BIC-NL results are fairly higher than S-boxes investigated in [10, 12, 15, 16, 19, 26, 2831, 34] and BIC-SAC satisfies the avalanche criterion with negligible margin like other S-boxes. Hence, satisfaction of bits independence criterion is consistent and better than most of the 8×8 S-boxes.

(d) The worst differential uniformity of 54 is exhibited by S-box investigated in [31]. Our differential uniformity is considerably improved compared with DU scores found in [28, 3032, 34] and it is consistent with rest of S-boxes. This shows that our S-box can offer a decent resistance to Biham’s cryptanalysis.

(e) The lowest linear approximation probability of 0.1172 is offered by Farah’s S-box investigated in [18] among all 8×8 S-boxes of Table 17. We found a LAP value of 0.13281 and can deliver more resistance to linear cryptanalysis than S-boxes investigated in [10, 11, 1316, 2831, 34].

(f) In [55], it has been pointed out that measure of autocorrelation function relates to the cryptographic diffusion characteristics that an S-box can offer as a part of a cryptosystem. The calculated ACF for proposed 8×8 S-box is 96 and better than ACF scores of many S-boxes synthesized in [11, 16, 19, 2832, 34, 35] and it is comparable with other S-boxes of the table. This means that our S-box can provide better ACF property and diffusion when incorporated in a cryptographic system.

We compared the nonlinear performance of other proposed bijective S-boxes with similar proposals available in literature in Table 18. The nonlinear measure of bijective S-boxes is consistently reported in all these proposals. It is worth noting that the best nonlinearity results are reported in Table 18 for all proposals. From the comparison of Table 18, it is easy to acknowledge that the proposed S-boxes can offer larger and better nonlinearity than the rest of the other contemporary S-boxes. Hence, the proposed S-box method is well competent for the construction of highly nonlinear bijective S-boxes.

6. Conclusion

Constructing cryptographically strong substitution-boxes is a problem which has been addressed with much attention. Due to vast search space of S-boxes, it is not advisable to follow a random search approach as it does not guarantee a quality S-box. On the other hand, metaheuristic techniques have been investigated to design a systematic search mechanism for synthesis of strong S-boxes. To generate more nonlinearly better bijective S-boxes, a recent sine-cosine algorithm as an optimization technique is applied in this paper. To augment the effective searching of SCA, an improved 1D chaotic map is proposed which owns some enhanced dynamics compared to conventional chaotic sine map. The good balance of exploration and exploitation of search space in SCA enables the generation of strong S-boxes with proposed method. In proposed SCA based S-box method, the initial population of S-boxes is generated randomly using new chaotic map. The same chaotic map is further utilized in continuation to assign fresh values to SCA parameters. During optimization mechanism of proposed method, the nonlinearity is taken as fitness function to obtain the optimized S-box. Example bijective S-boxes obtained from proposed method are provided and detailed performance outcomes for proposed 8×8 S-box are presented. The results demonstrate that the proposed S-boxes not only offer high nonlinearity but also fulfil other performance criteria pretty well. Moreover, the comparison analysis revealed that the proposed method outperforms many optimization-based S-boxes and is suitable for cryptographic applications.

Data Availability

The data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.