1. Introduction
Cryptography helps individuals and organizations to protect their data. For this purpose, different symmetric and asymmetric ciphers have been designed. Symmetric ciphers possess simplicity and efficiency, and consume fewer computational resources as compared to asymmetric ciphers. Symmetric ciphers have two major categories as stream and block ciphers [
1]. A stream cipher encrypts the plaintext in bit-by-bit fashion. On the other hand, a block cipher encrypts a plaintext block of a fixed size consisting of many bits simultaneously. Mostly, block ciphers are used for internet communication whereas stream ciphers are used in situations where computational resources are limited or efficiency is not the main concern.
A block cipher is particularly useful to achieve data confidentiality, which is one of the cryptography goals. It is considered as one of the most widely used tools for the provision of data security [
2]. The most modern and popular symmetric ciphers, like AES, DES, Blowfish, RC2, RC5, and IDEA, are all block ciphers. Block ciphers are easily implemented, more general, and cryptographically stronger as compared to the stream ciphers [
3]. Most of the block ciphers use either the Feistel structure or the substitution and permutation operations. Block ciphers based on the Feistel structure divide the plaintext block into two or more parts and perform different operations on these parts. DES, Blowfish, Camellia, Kasumi, RC5, TEA, 3DES, RC6, etc. are some example block ciphers that use the Feistel structure. Another type of popular block cipher is termed the substitution-permutation network (SPN) [
4]. These ciphers convert plaintext blocks using sub-keys and different numbers of rounds into respective ciphertext blocks. In each round, along with other operations, substitutions and permutations are performed on the input bits. A substitution operation substitutes a block of bits with another block of bits using a substitution box (S-Box). A permutation operation changes the positions of the bits or bytes in the given input block. AES, SHARK, PRESENT, SQUARE, etc. are among the most popular block ciphers that use substitution and permutation operations. Among these, AES cipher is most widely used in real life applications and many researchers have proposed improvements and enhancements of it.
An S-Box is a crucial part of modern-day block ciphers and is used to create a muddled ciphertext from the given plaintext. An S-Box is one of the fundamental techniques used to provide candid confusion. Confusion is the complex relationship that must be established between the plaintext and the ciphertext [
5]. The strength of the cipher is directly proportional to the level of confusion produced in the ciphertext. As a result, the cryptographic strength of a block cipher using an S-Box is dependent on the cryptographic strength of that S-Box. Many scholars have investigated and explored ways to propose quality S-Boxes and analyzed their strength against some standard criteria and benchmarks, such as nonlinearity (NL), bijection, strict avalanche criterion (SAC), bit independence criterion (BIC), linear probability (LP), and differential probability (DP) etc.
In [
6], the authors proposed a mechanism to create repositories or a database of S-Boxes, which possess robust and resilient cryptographic topographies. These repositories can be of a great help to provide the security of data and information during the customization of the block ciphers. Mohamed et al. [
7] proposed 18 S-Box properties to be present to resist against different types of cryptanalytic attacks. The presence of a greater number of properties in an S-Box makes it more secure. SAC, nonlinearity, BIC, and resistance to linear cryptanalysis and differential cryptanalysis are a few of the most needed S-Box criteria [
8,
9].
Generally, a block cipher consists of many parts. An S-Box, being the lone non-linear part of a block cipher, is very useful for enhancing the security of the plaintext by creating confusion in the ciphertext. The non-linearity provided by an S-Box offers defense against linear cryptanalysis [
10]. Block ciphers use two types of S-Boxes: Static and dynamic. Ciphers employing static S-Boxes use the same S-Box in each round. This type of S-Box permits the attackers to investigate S-Box properties, find its weaknesses, and ultimately obtain the opportunity for cryptanalysis of the ciphertext [
7,
11,
12]. For example, DES uses static S-Boxes. To overcome the problems of static S-Boxes and provide more security against cryptanalysis, many researchers have investigated new and novel ways to design S-Boxes, which are random, dynamic, and key-dependent. Dynamic S-Box generation based on the key ensures improvements in the strength of the cipher. For example, Blowfish cipher uses dynamic S-Boxes.
AES is one of the popular block ciphers which use S-Boxes in the encryption and decryption processes. Sahmoud et al. [
13] proposed an enhancement to the security offered by AES. It uses multiple sub-keys for the encryption of different plaintext blocks. However, the new cipher is more complex and slow as compared to AES. Moh’d et al. [
14] introduced AES-512, which is an enhancement to the original AES-128. It uses a plaintext block and a key of the size of 512-bits each. It has an increase of more than 200% in the throughput compared to the original AES-128. In [
15], the authors proposed key based dynamic S-Boxes and increased the number of steps performed in each round of AES. The authors in [
16,
17] rectified and improved the AES cipher by optimizing the S-boxes. These optimized S-Boxes are more efficient than the traditional AES S-Box. Niemiec et al. [
18] introduced a symmetric block cipher that uses key-dependent generic S-boxes. The authors described the way to generate a huge number of S-Boxes, which all exhibit good security landscapes. Kazlauskas et al. [
19] proposed four algorithms to generate key-dependent S-Boxes and evaluated the worth of these boxes using distance metrics. Results demonstrate that the generated S-Boxes are of a high quality.
The Feistel structure has been used as the main construct in many of the symmetric ciphers, like DES, GOST, RC5, etc. DES and GOST each uses eight S-Boxes with sizes 6 × 4 and 4 × 4, respectively. The authors in [
10] used the Feistel structure to choose a dynamic S-Box depending upon the plaintext/ciphertext. One of the 16 S-Boxes of the 4 × 4 size was chosen using 8-bits plaintext/ciphertext. The right 4-bits choose the S-Box and the left 4-bits act as the input to the S-Box. The authors also suggested a variation by dividing the 8-bits of the plaintext/ciphertext in two non-equal size parts and accordingly the size of the S-box and number of S-Boxes could be determined. This design of dynamic S-Box achieves the non-linear confusion and hence the cryptanalysis of the ciphertext becomes very difficult. Similarly, LiCi is a lightweight block cipher that uses the Feistel structure and active S-Boxes and is suitable for both software and hardware platforms, especially when energy is the main constraint [
20]. It shows good resistance against many cryptanalytic attacks.
One of the desirable properties of modern block ciphers is the avalanche effect [
21]. This property requires that a 1-bit change in key or the plaintext should produce substantial changes in the ciphertext. If the value of the avalanche effect is very small (at least 50% of the ciphertext bits are not changed), the block cipher is weak and cryptanalysis of the ciphertext becomes easy. The proposed cipher in [
22] using a dynamic S-Box shows a good avalanche effect compared to the standard AES when a single bit is changed in the plaintext or the key. Shi et al. [
23] analyzed in detail the avalanche effect of the AES S-Box and concluded that both S-Boxes of AES have a good avalanche effect. The authors in [
21] analyzed five symmetric ciphers and concluded that AES has the highest avalanche effect. Mahmoud et al. [
24] proposed a modification to generate an S-Box to be used for AES having a 128-bits key. The authors compared the correlation factor, avalanche effect, and time efficiency of the standard AES and the proposed one. The value of the correlation factor was between −0.3 and 0.3, which shows that the standard AES and proposed cipher have no dependence. The avalanche effect of the S-Box proposed in [
24] has values between 0.41 and 0.61, which makes it resistant against linear and differential cryptanalysis. However, the standard AES is more efficient. Mar et al. [
25] proposed three methods to evaluate and analyze the SAC of a given S-Box. These methods are very simple and check whether the given S-Box has an avalanche effect, possesses completeness, and is strong enough against cryptanalysis. Adams et al. [
26] described an efficient process to generate S-Boxes, which possess the cryptographic properties of bijection, SAC, BIC, NL, etc. The authors also proved that a small change in the input guarantees nonlinearity and the inverse S-Boxes also fulfill the evaluation criteria. The generated S-Boxes are prospective contenders for SPN block ciphers.
Chaotic cryptography is among the most interesting areas in the field of information security in the recent era as the chaotic systems possess the property of randomness [
27]. Many researchers have used chaos to design ciphers with good cryptographic strength. Garg et al. [
28] analyzed different techniques to design an S-Box and concluded that S-Boxes designed using a chaotic approach demonstrate good cryptographic strength. The authors in [
29] proposed some chaotic map-based block ciphers using a different approach and then showed that the proposed ciphers were resilient to different attacks. Ahmad et al. [
30] designed an efficient S-Box using the chaos and travelling salesman problem and analyzed its performance against cryptographic standards. The results indicate that the proposed S-Box is more effective when compared to its counterparts. The authors in [
31,
32,
33,
34,
35] proposed strong S-Boxes based on the combination of chaotic maps and other different algorithms. The evaluation of the cryptographic performance of these S-Boxes against NL, SAC, BIC, etc. revealed that hyperchaotic systems are stronger than chaotic ones. Peng et al. [
36] and Solami et al. [
37] devised methods to generate an S-Box using a hyperchaotic system. The resultant S-Boxes demonstrate a good response to cryptographic properties, like BIC, SAC, DP, etc. The suggested methods have the capability to generate a huge number of S-Boxes.
Another popular area in cryptography is DNA computing, which is being considered as a possible solution to the design of resilient ciphers. Kadhim et al. [
38] and Al-Wattar et al. [
39] proposed efficient S-Boxes using DNA computing, analyzed the security of the proposed ciphers using different criteria, and showed that the ciphers passed the test criteria. Many other researchers have used DNA computing to design and propose block ciphers, such as [
40,
41,
42,
43].
Ciphers using S-Boxes highly depend on the security of the S-Boxes. Thus, the identification of a tool to evaluate and find an S-Box with high security that can also assist in the design of efficient S-Boxes is considered critical. Wang et al. [
44] developed a software tool to analyze and test the performance of S-boxes. The software tool supports the design of good block ciphers. Albermany et al. [
45] suggested random block cipher (RBC). It uses a master key of a length of 128 bits and 64 bits plaintext. Eight sub-keys are generated from the master key. The size of each sub-key is 16 bits. A bijective function, a new S-box, and binary operations are employed in this cipher. Thirty-two S-boxes are used and the length of the ciphertext is 128 bits. It is able to encrypt a large amount of plaintext data very efficiently. Many other authors have contributed to the design of various S-Boxes using different techniques. Tran et al. [
46] proposed an S-Box using graph isomorphism and showed that their S-Box exhibits the desired cryptographic properties. Coset diagrams are a special type of graph that has real life applications. Razzaq et al. [
47] used the coset diagram to propose a new S-Box, evaluated its strength against cryptanalysis, and showed that the results were promising. Novel techniques of cryptanalysis reveal that there are still some scarcities in the existing ciphers [
48]. To provide better security, the complexity of a cipher is increased and as a result the efficiency of the respective cipher decreases. The authors proposed an efficient and more secure block cipher, which uses operations, like linear and non-linear mixing, by employing S-Box, capsulation, etc. for confusion and diffusion effects.
Linear fractional transformation (LFT) is another area which helps in the generation of better S-Boxes. Farwa et al. [
49] proposed a modest and proficient algorithm to generate an S-Box based on LFT. The authors analyzed the strength of their S-Box against cryptographic properties, like SAC, BIC, NL, LP, DP, etc. The authors in [
50,
51,
52] proposed efficient algorithms to design good S-Boxes based on LFT and the projective general linear group on Galois field, respectively. The proposed S-Boxes showed good performances when compared with other existing S-Boxes. Many researchers have exposed the cellular automata field to propose S-Boxes [
53,
54]. Authors have shown that their S-Boxes have good strength when critically analyzed.
The techniques and methods for the generation of S-Boxes presented in the literature are either suitable for the creation of static S-boxes or are very complicated and time-consuming. Static S-Boxes have their own limitations and weaknesses. These S-Boxes may help attackers in the cryptanalysis of the captured ciphertext and hence they may reach the original plaintext. On the other hand, the methods presented in the literature that generate dynamic and key-dependent S-boxes are very complex and less efficient. Thus, the need for a simple and efficient method to generate dynamic S-Boxes exists.
In this paper, a novel design method for the construction of efficient S-Boxes for block ciphers is proposed. The following considerations were kept in mind while designing the proposed S-Box:
An S-box that helps in the security enhancement of the block cipher and resists cryptanalysis;
An S-Box that is simple to construct;
An S-Box that is generated dynamically using sub-keys;
An S-Box that fulfills the most needed S-Box criteria, like NL, SAC, BIC, LP, DP, etc.
The method proposed in this paper for the construction of an S-Box is an innovative one and is quite different from the approaches presented in the literature. A cubic fractional transformation is proposed for the construction of strong S-Boxes. After the S-Box was designed, a performance analysis was performed to show its strength. The proposed S-Box demonstrated a very good cryptographic strength when compared with other recently designed S-Boxes. The results indicated that the proposed S-Box is a good choice for block ciphers.
The structure of the rest of the paper is as follows.
Section 2 of this paper presents the design architecture of the proposed S-Box. The performance evaluation of the proposed S-Box against its cryptographic properties is discussed in
Section 3 and a comparison is made with some S-boxes.
Section 4 concludes the research paper.
2. Proposed Substitution Box
Modern block ciphers employ byte substitution to replace a complete byte (one element) of a matrix with another complete byte using the substitution box (S-Box). Generally, the design of an S-Box involves nonlinear mapping, which results in bijection. Many researchers have designed S-Boxes that are cryptographically strong using such mappings. One such mapping is linear fractional transformation (LFT), which was exhaustively explored for the construction of the S-boxes [
49,
50,
51,
52]. However, the process of generating these S-Boxes using LFT is very complicated and time consuming.
In this paper, we extend the idea of LFT and construct our new transformation to generate an S-Box using another nonlinear mapping method in a simple and efficient way. We call this extended transformation cubic fractional transformation (CFT). A cubic fractional transformation is a function of the form:
where,
Z = {0, 1, ……, 2
n − 1}, both
α and
β are not 0 at the same time, and
α(
z)
3 +
β ≠ 0 is used to construct the
n ×
n S-box. The nonlinear nature of CFT stimulates its usage in byte substitution. The procedure to generate the proposed S-Box for
n = 8 is illustrated in
Figure 1.
To elaborate the construction of the proposed S-Box using Equation (1), let us have a specific type of cubic fractional transformation as given in Equation (2). Let
Z = {0, 1, …, 2
n − 1} = {0, 1, …, 2
8 − 1} = {0, 1, 2, …, 254, 255} for
n = 8. Any values can be chosen for
α and
β (
α,
β ∈
Z) that gratify the condition of
α(
z)
3 +
β ≠ 0. For the sake of the calculations here, we have chosen
α = 95 and
β = 15. The CFT function,
C(
z), given in Equation (2) generates values of
Z – {0, 106} when
z ∈
Z – {176, 184}. When
z = 176,
C(
z) evaluates to 256 ∉
Z. When
z = 184, the denominator of Equation (2) evaluates to 0. To keep the function,
C(
z), bijective, we explicitly define
C(
z) for
z ∈ {176, 184} as conditioned in Equation (2). An example S-Box of a size of 8 × 8 is generated using a CFT function,
c:
, given as:
This particular cubic fractional transformation of Equation (2) generates the elements of our proposed S-Box, which are organized in a 16 × 16 matrix as shown in
Table 1.
As mentioned above, any values for α and β (α, β ∈ Z) can be used in Equation (1) to generate an S-Box. One can choose sub-keys as the values for α and β to generate dynamic and key-dependent S-boxes.