Next Article in Journal
Unifying Models of Trophic Exploitation: A Mathematical Framework for Understanding the Paradox of Enrichment
Previous Article in Journal
Feature Paper Collection of Mathematical and Computational Applications—2025
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Review

Understanding S-Box Security Assessment: A Practical Guide

by
David Carcaño Ventura
1,*,
Lil María Xibai Rodríguez-Henríquez
1,2 and
Saúl E. Pomares Hernández
1
1
Instituto Nacional de Astrofísica Óptica y Electrónica (INAOE), Tonantzintla, Puebla 72840, Mexico
2
Secretaría de Ciencia, Humanidades, Tecnología e Innovación, Ciudad de México 03940, Mexico
*
Author to whom correspondence should be addressed.
Math. Comput. Appl. 2026, 31(1), 27; https://doi.org/10.3390/mca31010027
Submission received: 3 December 2025 / Revised: 4 January 2026 / Accepted: 14 January 2026 / Published: 13 February 2026
(This article belongs to the Section Engineering)

Abstract

S-boxes are the core nonlinear components of ciphers, providing confusion and diffusion. As a result, cryptanalysts focus on analyzing these components to identify distinguishers and ultimately recover the secret key of the cipher. Although many constructions exist, the search for new S-boxes remains vital as advances in cryptanalysis expose new weaknesses. Evaluating their security is challenging, and the current literature often prioritizes technical depth over clarity for a broader audience. This raises questions that are not always clear, such as how the S-box and its construction affect a cipher’s resilience, how to assess the security of this nonlinear component, and what factors influence its robustness. In this paper, we address these concerns by providing a friendly introduction to the basic principles of S-box security evaluation, structured around four key aspects. First, the importance of the S-box in ensuring block cipher security is discussed. Second, the advantages and disadvantages of three classical S-box construction approaches are outlined. Third, the evaluation of S-boxes through the formal definition of their properties and their associated security implications is presented. Fourth, four S-box evaluation toolkits proposed in the literature are introduced. Finally, open research challenges in S-box design are highlighted.

1. Introduction

A substitution box (S-box) is a nonlinear component used in ciphers to provide the principles of confusion and diffusion. Confusion breaks the relationship between the secret key and the ciphertext, while diffusion disguises patterns from the plaintext within the ciphertext. Shannon proposed these principles to construct a cipher that ensures confidentiality [1].
Various shortcut attacks, including differential [2], linear [3], boomerang [4], and algebraic [5], aim to compromise the cipher by analyzing its main component: the S-box. If the security of this component is weak, the probability of recovering secret key bits or plaintext increases significantly. Thus, in the literature, S-boxes are often considered the “heart” of the cipher.
The first known S-box was introduced in the Lucifer cipher [6]; however, the S-boxes used in the DES cipher [7] popularized their use by demonstrating strong resistance to different attacks. In [8], E. Biham and A. Shamir show that although the DES cipher can be broken by differential attacks, its S-boxes offer high resistance to such attacks. Since then, many ciphers, including AES [8], TWINE [9], SERPENT [10], PRESENT [11], RECTANGLE [12], and SAND [13], have incorporated S-boxes into their designs.
Although many S-box constructions have been proposed, advances in shortcut attacks continue to expose new vulnerabilities in classical designs. This highlights the need for new S-boxes that can address emerging threats while also considering existing trade-offs between security and implementation. However, strengthening resistance against one type of attack may weaken it against another or increase implementation costs. For instance, several works indicate that improving resistance to a specific attack often requires compromising security against another [14,15,16].
Considering the previous examples, it is evident that the search for new components will remain a critical aspect of future cipher design. In trying to resolve earlier conflicts and meet updated security goals, new designs may introduce additional challenges. Taken together, these factors make S-box design a complex and nontrivial task, and the technical depth of the topic often makes it difficult for non-specialists to grasp the principles of S-box construction and evaluation. Therefore, this paper aims to introduce the fundamentals of S-box assessment and explain the basic evaluation principles, presented in a tutorial-style review, as this challenging process is a key step in the development of new components. The contributions of this work focus on answering the following questions:
1.
What is an S-box, and why is it a key component in the security of a cipher? This work presents the functionality of the S-box in a cipher and describes three approaches for constructing this component. It also explains how the structure and construction of the S-box impact the security of the cipher.
2.
How is the security level of an S-box determined, and what is its relationship with the principles of confusion and diffusion? The security level of an S-box is determined by various cryptographic properties, whose values are derived from mathematical formulas. Although these values are typically calculated using computer programs, differences in the notation of these formulas across different works can make it challenging to understand the fundamental concepts involved in evaluating S-boxes. Thus, this paper focuses on these variations and discusses their relationships in the context of S-box evaluation. Moreover, through specific examples, it shows how these formulas reveal the capacity of an S-box to contribute to the principles of confusion and diffusion.
3.
What conflicts influence the robustness of an S-box? This paper aims to explain the internal conflicts within the evaluation of an S-box’s security level. While it is not possible to design a perfect S-box, a high level of security can be achieved by carefully balancing various design trade-offs.
The rest of the paper presents the related work and addresses the previously stated questions. It is organized as follows: Section 2 establishes the differences between this work and others that introduce S-box evaluation. Section 3 and Section 4 correspond to the first question by introducing the concept and functionality of the S-box within a cipher, emphasizing its importance for security, and presenting three classical construction approaches. Section 5 is related to the second question and constitutes the most important part of the paper, as it describes the well-known properties used to evaluate the security of an S-box, provides illustrative examples, and explains how specific property values contribute to achieving confusion and diffusion. Section 6 focuses on the third question by discussing the conflicts that arise among these properties during the construction process and how they impact efforts to enhance the security level of the component. Section 7 introduces four toolkits for evaluating S-boxes. Section 8 offers an overview of the challenges in designing and finding new S-boxes. Finally, Section 9 presents the conclusions.

2. Related Work

S-boxes are essential for both cipher designers and adversaries: while designers must construct them to maximize security and protect the secret key, adversaries analyze them to uncover weaknesses and ultimately attempt to recover it. The literature has examined this component extensively, addressing diverse aspects such as S-box design for block ciphers [17,18,19], efficient implementation strategies [20,21,22], the introduction of new S-box properties [23,24,25], and the study of relationships among existing properties [14,15,26,27,28,29]. However, the majority of these works target specialist readers, assuming prior knowledge of S-box attacks, security properties, and design criteria. Moreover, the abundance of information can make it difficult to identify the fundamental concepts underlying S-box evaluation and design.
Considering these challenges, only a few works provide introductory material on this topic, and Table 1 lists these works. It evaluates five aspects of these studies, including their target audience, the S-box properties covered, the construction approaches discussed, and whether they address conflicts among properties. The key distinction appears in the second column, which shows that only two of these references are intended for non-specialist readers, as they aim to explain fundamental principles and motivate further exploration in the area. In contrast, the remaining works are oriented toward specialist audiences and attempt to condense the available information on S-boxes into a general overview.
The works in the first category are those by Boura [30] and Easttom [31]. Boura addresses the question of how to assess the security of these components by explaining different S-box representations and how to evaluate the properties related to differential, linear, and algebraic attacks. However, this work does not examine the most recent properties that consider cipher-specific features, such as boomerang-related properties, nor does it discuss how S-box properties contribute to confusion and diffusion. In [31], Easttom’s work focuses on explaining what an S-box is, how it can be constructed, and how its security level can be assessed by discussing diffusion-oriented properties, presenting three S-box construction approaches, and illustrating their application in DES and AES. Nevertheless, it does not analyze how construction choices affect security, nor does it address confusion-oriented properties or potential conflicts among properties that influence the design of this component.
Regarding the second category of works, which focus on compiling knowledge about S-boxes for specialist readers, the following observations can be made. Bao et al. [32] present a SoK article that explains how to assess the security level of the S-box by discussing confusion-oriented properties and implementation aspects (a topic not covered by the previously mentioned works). However, they do not explicitly analyze diffusion-related properties, the role of the S-box within the overall block cipher, or design conflicts among properties. Waheed et al. [33] survey several construction approaches, highlighting their strengths and listing desirable properties for S-box design. Still, their analysis remains largely descriptive and does not relate these strengths to a formal security framework. Canteaut’s lecture notes [34] and Perrin’s thesis [35] summarize the main S-box representations and define differential, linear, and algebraic properties. Perrin’s thesis additionally examines different construction methods and their motivations. Nonetheless, neither of these papers explains in detail how such properties support the diffusion and confusion principles, nor do they address the third research question concerning conflicts among properties.
In contrast, our work is intended for non-specialist readers and provides a unified perspective that integrates the motivation for S-box design with the fundamental principles of S-box construction and evaluation. This work addresses three fundamental questions: how the S-box and its construction affect a cipher’s resilience, how to assess the security of this nonlinear component, and which factors influence its robustness. Although related works attempt to answer the first two questions, they do not consider several key aspects, such as the importance of construction approaches in determining the security level, the appropriate selection of S-box properties based on cipher-specific requirements (including boomerang-related properties), the effect of confusion and diffusion properties on S-box design, and the conflicts among S-box properties and their implications for design. Finally, this work also identifies open research challenges related to S-box design and discusses four S-box evaluation toolkits from the literature.
Table 1. Discussion of related work on the basic principles of S-boxes. ✓ indicates that the corresponding properties/topics are explicitly addressed in the referenced work.
Table 1. Discussion of related work on the basic principles of S-boxes. ✓ indicates that the corresponding properties/topics are explicitly addressed in the referenced work.
Tutorials/SoK/
Notes/Chapter
Target AudienceProperties Related to:Construction
Approaches
Conflicts Among
S-Box Properties
DAs LAs AAs BAs Diffusion
Bao et al. [32]Specialist
Waheed et al. [33]Specialist
Easttom [31]Non-specialist
Boura [30]Non-specialist
Canteaut [34]Specialist
Perrin [35]Specialist
This workNon-specialist

3. The Functionality of the S-Box

This section addresses part of the first question raised in the introduction, specifically regarding the role of the S-box in a cipher and its importance in providing resilience against cryptographic attacks.
The confidentiality service enables two or more entities to securely exchange sensitive data over a public channel. Although an adversary can intercept the transmitted messages, it cannot understand them because the data are encrypted. In general, a cipher encrypts sensitive information using a secret key. To generate the ciphertext, the cipher applies nonlinear and linear layers over multiple rounds. S-boxes are used in the nonlinear layer to implement the principle of confusion, while bit permutations or matrices are commonly used in the linear layer to achieve diffusion [36]. However, as explained in Section 5.3, S-boxes also contribute to diffusion.
An n × m S-box is a vectorial Boolean function that maps n input bits to m output bits. If m = 1 , the S-box reduces to a Boolean function mapping n input bits to { 0 , 1 } . A formal definition is provided based on [22,37,38]:
Definition 1.
Substitution Box (S-box): An n × m S-box is defined as a vectorial boolean function that maps an n-dimension vector to an m-dimension vector, and is denoted as:
S : F 2 n F 2 m ,
where n and m are positive integers. It can be seen that F 2 is the finite field with two elements and F 2 n ( n 2 ) is the vector space of dimensions n on F 2 .
In a cipher, the S-box is a function that replaces n bits for m bits, sometimes n = m .

The S-Box Resistance Against Attacks

There are many ways to break the security of a cipher. In this work, we focus on two main objectives: distinguishing the cipher from a pseudorandom function, and recovering bits of the secret key. In the first case, the ciphertexts produced by the cipher should appear random; otherwise, an adversary may detect patterns that allow partial recovery of the plaintext. In the second case, the most basic method to recover the secret key (though extremely inefficient) is a brute-force search over all 2 l s k possible keys, where l s k is the key length. However, there exists a class of attacks known as shortcuts [39], which can compromise the cipher more efficiently in both scenarios. These include several attacks, but in this work, we focus specifically on differential, linear, boomerang, and algebraic attacks.
In general, these types of attacks are divided into two phases:
  • In the first phase, the attacker analyzes the nonlinear component (typically the S-box) to identify characteristics or patterns that enable the construction of distinguishers. These distinguishers allow the adversary to differentiate the cipher from a pseudorandom function.
  • In the second phase, by using the distinguishers along with suitable pairs of plaintexts and ciphertexts, the adversary can recover some or all bits of the secret key.
It is noticeable that the S-box plays a fundamental role in ensuring the security of the cipher. If this component is weak, the probability of finding distinguishers increases significantly, which reduces the work factor required to recover the secret key [40]. Therefore, to assess whether an S-box offers a high level of security, several measurable properties are considered. The values of these properties determine the strength of the S-box. Section 5 explains this in detail; but first, we first present three approaches for constructing an S-box.

4. The Construction of an S-Box

This section complements the answer to the first question from Section 1 by introducing three approaches to constructing an S-box and how each can influence the security level of this component.
The search for an S-box is not a trivial task, as there exists a vast space of possible vectorial Boolean functions. Specifically, there are 2 m 2 n possible options, where n is the input size and m is the output size of the S-box. As the size of the S-box increases, the search space grows exponentially, making it more challenging to find a suitable one. For this reason, many S-boxes are constructed using different approaches, including algebraic, heuristic, and random searching.
The algebraic approach analyzes common Boolean functions (including vectorial Boolean functions) against cryptographic attacks and selects the most suitable option. The most well-known example of this approach is the construction of the AES S-box (explained in Appendix A), proposed by Daemen and Rijmen [41]. They based this nonlinear component on a function known as Inverse X 1 , which was studied by Nyberg in [42]. This function achieves the highest known security levels (even as n increases) provided that n = m . When n = m = 4 , the S-box can achieve optimal values in various security properties, and for n = m = 8 , it attains the best-known values for the same properties (see Section 5.4 for details). As a result, many designers choose to either reuse the AES S-box or apply this method to construct S-boxes for other ciphers [9,43,44].
Despite the significant impact of this construction approach on S-box security, it presents two main drawbacks: vulnerability to algebraic attacks and limited diversity in the resulting S-boxes. In [5], Courtois demonstrates that S-boxes constructed using the inverse function can be vulnerable to algebraic attacks such as XL and XSL, as their algebraic structure is relatively simple [45]. It is well known that the resilience of S-boxes against various attacks remains unchanged under affine transformations. However, this invariance implies a limitation in diversity. Specifically, in [15], Leander and Poschmann show that all 4 × 4 S-boxes constructed using this approach fall into a single equivalence class with the same security level, making it impossible to generate multiple distinct S-boxes using affine transformations alone. For these reasons, alternative construction approaches aim to mitigate these drawbacks and improve upon the algebraic approach.
The main purpose of the heuristic approach is to discover secure S-boxes through specific rules, utilizing various techniques such as chaotic maps [46], genetic algorithms [47], cellular automata [48], among others. The advantage of this approach is its ability to generate different S-boxes (that is, S-boxes which are not equivalent under transformations such as affine equivalence [15]) while simultaneously considering multiple cryptographic properties. Although this approach can be a viable option for constructing secure S-boxes with high nonlinearity, it faces several challenges that limit its competitiveness compared to the algebraic approach. One such challenge is that these S-boxes do not always achieve optimal values for the desired properties [47]. Another challenge is that, given the recently introduced properties and the size constraints, generating S-boxes using this approach is difficult [49]. Furthermore, these techniques are constrained by factors such as the selection of appropriate fitness/cost functions [50].
The random searching approach is often regarded as the simplest method, as it relies on the generation of random or pseudorandom numbers. Whereas this can result in high randomness, it typically falls short in achieving high levels of security [44,51]. An example of this approach is the construction of the Serpent S-boxes, which are resilient to differential and linear attacks. However, many of them are similar (i.e., affine equivalent) and are vulnerable to algebraic attacks [15,44].
Table 2 summarizes this section by comparing the different approaches. The second column shows their main purpose: the algebraic and heuristic approaches aim to create secure S-boxes, whereas the main goal of random search is to generate S-boxes in a simple way. The third and fourth columns present the advantages and disadvantages of each method. As previously mentioned, the algebraic-inverse approach offers the highest known security against cryptographic attacks; however, it is vulnerable to algebraic attacks and struggles to produce diverse S-boxes. In contrast, other approaches may be more competitive in aspects such as implementation, diversity of S-boxes generated, and randomness. At this point, we have not yet explained how these non-linear components are evaluated. Therefore, the following section introduces the fundamental concepts and criteria used to assess the security of S-boxes by analyzing their properties.

5. S-Box Properties

This section addresses the second question presented in Section 1: how to determine the security level of the S-box. It is also the most important part of this work, as it introduces differential, linear, boomerang, and algebraic attacks to highlight the relevance of S-box properties. It then presents the classical properties used to measure resistance against these attacks, explores the relationships between their formulas, and provides examples for computing the corresponding values.
Both adversaries and designers employ S-box properties to assess the resistance of this component against cryptographic attacks. Usually, property classifications relate S-box properties to robustness against specific sets of attacks, but they do not indicate how these properties contribute to confusion or diffusion [30,32,34,35]. Hence, it is important to understand which properties are relevant to specific attacks and how they contribute to enhancing the security of the cipher. For example, differential uniformity (DU) and CarD1 measure the resistance of an S-box to differential attacks. However, DU is primarily associated with preventing information leakage about the secret key (confusion), whereas CarD1 helps break down message patterns that differ by one bit (diffusion). In addition, it is important to consider properties related to the S-box structure, as they can influence the security level of the nonlinear component.
Based on this distinction, we propose classifying S-box properties into three categories: confusion, diffusion, and structural. This classification helps clarify how different properties influence the security level of the S-box. Furthermore, we highlight the importance of structural properties (those related to the shape of the S-box) as they can impact the values of other properties (confusion and diffusion), and thereby affect the overall robustness of the cipher.
Figure 1 presents our classification, along with the properties discussed in the following subsections. Whereas the literature describes a wide range of S-box properties, we focus only on those shown in the figure. These were selected since they are considered classical and typically serve as the basis for many recently proposed ones. Moreover, presenting these properties helps build an understanding of the basic concepts behind the formulas, notations, and the notion of security level.
To illustrate how to obtain the values of S-box properties, we use the S-box from TWINE. This S-box is considered lightweight due to its 4-bit input and output, and it offers a high level of security as it was designed using the algebraic approach with the inverse function. In addition, its small size allows us to present compact equations and tables in this paper. Table 3 shows the values of the TWINE S-box. It is important to mention that this representation is known as a look up table (LUT). The LUT of an S-box is the table (or vector) that lists the output S ( x ) for every input.

5.1. Structural Properties

Although these properties have been widely studied, no prior work (based on our review of the literature) has proposed their classification in the manner presented here. Nevertheless, as previously mentioned, they are fundamental to the construction of this component due to their impact on both the security level and implementation aspects (the reader may refer to Section 6 for a discussion of S-box conflicts). As a result, we include these properties in the S-box evaluation and describe them as follows:
1.
Size: This property presents the number of inputs n and outputs m of the S-box. The size of the S-box could be n = m or n m . The values of this variables is determined by the features of the cipher. For instance, lightweight S-boxes must satisfy 3 n , m 8 [19,22,52].
2.
Type of function: The S-box can be bijective and non-bijective. If n = m and the output the S-box must be a permutation, then the S-box is bijective and balanced [15,53]. Bijective S-boxes are typically used in ciphers that require inversion for decryption, such as those based on Substitution Permutation Networks (SPNs) [12,41]. In contrast, Feistel network-based ciphers can use either bijective or non-bijective S-boxes, as they do not rely on inversion [7,13,54].
3.
Output: This property specifies the type of output produced by the S-box. The classical approach uses a static output, meaning that the same S-box is applied in every round. In contrast, a dynamic output is a more recent trend, where the S-box varies based on the key of the cipher [55,56]. In this case, a different S-box is used in each round, which can enhance security. However, in this work, we focus on evaluating the security of static S-boxes.

5.2. Confusion Properties: Resistance to Differential, Linear, Algebraic, and Boomerang Attacks

This section provides an overview of several properties related to confusion. It introduces properties associated with differential, linear, boomerang, and algebraic attacks. These attacks are among the most well-established and serve as the foundation for the development of new threats, as noted by Jim et al. in [38]. Differential and linear attacks are considered the most effective in breaking the security of a cipher. The boomerang attacks are an extension of the differential, but their characteristics make them specific to block ciphers; in addition, different S-box properties may apply depending on the cipher’s design. Finally, algebraic attacks are particularly important, as they can compromise the cipher regardless of the number of rounds.

5.2.1. Resistance to Differential Attacks

Differential attacks (DAs) aim to identify patterns by analyzing the nonuniform distribution of output differences when inputs are chosen to satisfy a fixed difference [2]. Figure 2 illustrates these attacks in a general form in three steps:
(a)
The adversary selects two messages or plaintexts ( M 1 , M 2 ) and obtains their corresponding ciphertexts ( E 1 , E 2 ).
(b)
The adversary computes the input difference, which is defined as Δ M = M 1 M 2 , and the output difference, given by Δ E = E 1 E 2 .
(c)
The adversary attempts to exploit these differences to find a high probability of P ( Δ E | Δ M ) .
As discussed in Section The S-Box Resistance Against Attacks, a requirement for cipher security is that the primitive behaves like a pseudorandom permutation. This condition holds if the probability that a particular output difference Δ E appears given a specific input difference Δ M is 1 2 μ , where μ is the length of the message M i in bits. Thus, if the adversary finds a high probability for this scenario, the attack is considered successful.
These attacks exploit differences in the nonlinear layers, such as S-boxes [39,57]. Then, DU and balance are two properties that a designer should consider to be resistant against these kinds of attacks. DU was proposed by Nyberg [42] and is obtained by using a tool called Differential Distribution Table [2]:
Definition 2.
Distribution Differential Table (DDT): Let S be an S-box, where a F 2 n and b F 2 m . The DDT of S is a 2 n × 2 m table where every cell contains the number of pairs ( a , b ) that meet the following equation:
D D T S ( a , b ) = # { x F 2 n : S ( x ) S ( x a ) = b } ,
where # symbol indicates the number of pairs that satisfy the equation.
Then, the DU property is defined as follows:
Definition 3.
Differential uniformity (DU): The DU of an S-box S is the maximum value of DDT:
D U ( S ) = m a x a 0 ( D D T S ( a , b ) )
Smaller values in this property mean better resistance to DAs. In addition, there is a measure used to determine the probability of obtaining an output difference b given an input difference a, defined as [32]:
Definition 4.
Maximum differential probability (MDP): The MDP of an S-box S is the division of
D U ( S ) 2 n
This measure (also known as the propagation ratio for a differential [58]) helps compare the security of S-boxes with different sizes (the reader can refer to Section Evaluation of Different S-Boxes to observe an example of this comparison using MDP). Then, to illustrate how get the DDT, DU, and MDP, Algorithm 1 outlines the steps to compute these values. As mentioned, each cell in the DDT represents the number of equations that satisfy condition (2). The algorithm iterates through all values of a, b, and x, increasing the counter i by 1 whenever the condition is met.
Algorithm 1 Differential Uniformity Computation
Require: int n, m, S-box S
Ensure: int D U , double M D P
1:
Initialize ( D D T [ 2 n ] [ 2 m ] )
2:
for  a = 0 to 2 n 1  do
3:
    for  b = 0 to 2 m 1  do
4:
         for  x = 0 to 2 n 1  do
5:
              if  S ( x ) S ( x a ) = b  then
6:
                   D D T [ a ] [ b ] + +
7:
              end if
8:
          end for
9:
     end for
10:
end for
11:
D U max a 0 D D T [ a ] [ b ]
12:
M D P D U 2 n
As we can observe, this algorithm has an order of O ( 2 3 n ) (when n = m ). However, the implementation can be made more efficient if the algorithm does not explicitly compare S ( x ) S ( x a ) = b . If the program simply increments the corresponding cell when the condition is satisfied, the complexity can be reduced to O ( 2 2 n ) [59]. Algorithm 2 only iterates over the values of a and x. When the condition is satisfied, the value of the corresponding cell is incremented as follows: D D T [ a ] [ S ( x ) S ( x a ) ] + + .
Algorithm 2 More Efficient Differential Uniformity Computation
Require: int n, m, S-box S
Ensure: int D U , double M D P
1:
Initialize ( D D T [ 2 n ] [ 2 m ] )
2:
for  a = 0 to 2 n 1  do
3:
   for  x = 0 to 2 n 1  do
4:
        D D T [ a ] [ S ( x ) S ( x a ) ] + +
5:
   end for
6:
end for
7:
D U max a 0 D D T [ a ] [ b ]
8:
M D P D U 2 n
Another property related to DAs is balance, which Carlet defines as follows [60]:
Definition 5.
Balance (B): An S-box S is said to be balanced if its outputs are uniformly distributed; in other words, it takes every value of F 2 m the same number ( 2 n m ) of times.
If an S-box is evaluated based on this property, it can be either balanced or unbalanced. A balanced S-box is desirable for resistance to DAs [61,62]. Additionally, this property enhances resistance to statistical attacks [37].
In this section, we obtain the DU and the B values of the TWINE S-box using its LUT presented in Table 3. To compute the DU, we first derive the DDT, where a , b , x F 2 4 given that the S-box size is n = m = 4 . Table 4 presents the DDT of TWINE, which has dimensions 2 4 × 2 4 = 16 × 16 . The highest entry in the table is 16; however, since DU is determined for a 0 , the highest relevant value in the DDT is 4. Moreover, its MDP is 4 2 4 = 0.25 .
The TWINE S-box is a permutation of the elements in F 2 4 , meaning it is balanced. However, by computing the equation presented in Definition 5, we observe that each value LUT of TWINE appears exactly 2 n m = 2 4 4 = 2 0 = 1 time.

5.2.2. Resistance to Linear Attacks

Linear attacks exploit linear approximations of a cipher by forming linear combinations of the plaintext, ciphertext, secret key, and linear masks ( a , b , k ) at the bit level [39,57]. Figure 3 illustrates how an adversary attempts to establish these approximations by constructing an equation with the variables mentioned. In the second phase, the adversary tries to determine the probability that evaluating certain combinations results in 0. If this probability is 0.5 , the cipher C appears to behave like a pseudorandom permutation. However, if the probability deviates significantly from 0.5 , the adversary can distinguish the function as a cipher. To achieve this, the adversary identifies linear distinguishers by combining linear approximations of individual components. Since such approximations are easily derived from linear components, the adversary focuses on the nonlinear elements of the cipher, particularly the S-boxes. These components are essential for resisting such approximations and, consequently, for preventing the success of linear distinguishers.
As previously mentioned, the S-box is a nonlinear component and its nonlinearity plays a central role in determining its resistance to linear attacks. To evaluate how well this component resists such attacks, two key properties are considered: nonlinearity and linearity. These properties may be presented separately or jointly in the literature, but they are inherently related. The following part explains how to compute them by introducing essential concepts such as the Linear Approximations Table (LAT), the Walsh–Hadamard transform, and bias. These concepts are essential for understanding the relationships between the properties and for interpreting their corresponding values correctly. For example, the LAT generated by the PEIGEN software (version 1.0, PEIGEN developers, online, Singapore/Japan) [32] differs in format from that produced by SageMath (version 10.8, SageMath Inc., online, USA) [63], although they represent the same information (see Table 5 and Table 6 for a comparison). Thus, this tool is defined as [3]:
Definition 6.
Linear Approximations Table (LAT): Let S be an S-box, and let a F 2 n and b F 2 m be linear masks. The LAT of S is a 2 n × 2 m table where every cell contains the number of pairs ( a , b ) that meet the following equation:
L A T S ( a , b ) = # { x F 2 n : a · x = b · S ( x ) } ,
where the · operation is the inner product.
This table shows how many equations reach a linear approximation of the S-box using two masks ( a , b ). The bias of a linear approximation is then [32]:
Definition 7.
Bias of the linear approximations: This table is obtained using the LAT:
ϵ ( a , b ) = L A T S ( a , b ) 2 n 1 2
The smaller the values of the LAT and bias, the stronger the resistance to linear attacks.
We proceed to define concepts related to nonlinearity (NL). The NL of the S-box is measured using the Walsh-Hadamard transform of a vector Boolean function [64] that is defined as:
Definition 8.
Walsh-Hadamard transform: Let S be an S-box, a F 2 n , and b F 2 m ; then, this transform is defined as
W s ( a , b ) = x F 2 n ( 1 ) b · S ( x ) a · x
This transform allows us to know the relation between the inputs and outputs of the S-box by using linear approximations ( a , b ). Then, NL is defined as:
Definition 9.
Nonlinearity (NL): The NL of an S-box S is calculated using the maximum value of the Walsh-Hadamard transform of a vector boolean function. The value of this property means the minimum Hamming distance between the set of its nontrivial components and the set of all affine functions.
N L ( S ) = 2 n 1 1 2 m a x W s ( a , b )
The higher the NL value, the greater the resistance to linear attacks. In [65], Nyberg proved the relation between Linearity (L) and NL properties:
N L ( S ) = 2 n 1 1 2 L ( S )
Thus, the L property is defined as [65]:
Definition 10.
Linearity (L): The linearity of an S-box S is the maximum relation (maximum linearity) between its inputs and its outputs:
L ( S ) = m a x a F 2 n , 0 b F 2 m | ( W S ( a , b ) ) |
In consequence, the probability of this linear approximation (LAP) is:
L A P ( S ) = L ( S ) 2 n + 1
In [32], Bao et al., introduce a relation between the Walsh transform and the bias:
W S ( a , b ) = 2 n + 1 · ϵ ( a , b )
This relationship allows the authors to obtain the LAT using the coefficients of W S , rather than relying on the formal definition of the LAT. In their software (PEIGEN), L is defined as follows:
Definition 11.
Linearity in PEIGEN: The linearity of an S-box S computed in this tool is the maximum value of the LAT:
L ( S ) = m a x a , b 0 ( L A T S ( a , b ) )
The reader should not forget that in this case the maximum value is obtained using the table W S ( a , b ) .
We can observe that the steps to compute L, NL, and even the LAT are similar to those used for determining the DU in Algorithm 1, as they all involve computing an equation (or evaluating a condition, in the case of the LAT) across all values of the variables a F 2 n and b F 2 m . Therefore, the key is to modify the core of Algorithm 1 (specifically line 6) and adjust it to obtain the L (or NL).
To illustrate the values of the properties against linear attacks, we present the L and NL values of the TWINE S-box. The LAT of the S-box is presented in Table 5 (using PEIGEN). Observing that a , b 0 , we find that the maximum value of the LAT (L) is 8 (utilizing the Definition 11). Using (8), we can obtain the NL of this S-box, which is N L ( S ) = 2 4 1 1 2 · 8 = 2 3 4 = 8 4 = 4 .
Table 6 shows the LAT values computed using SageMath. Although the two LAT tables (Table 5 and Table 6) display different values, they follow the relation:
L A T S _ P E I G E N ( a , b ) = 2 | L A T S _ S a g e M a t h ( a , b ) |
Appendix B provides a detailed explanation of this relationship.

5.2.3. Resistance to Boomerang Attacks

Boomerang attacks (BAs) are considered an extension of DAs, as their main goal is to find differential characteristics by splitting the cipher (these attacks can be only applied to block ciphers) [4]. Figure 4 illustrates the general structure of these attacks in three steps:
(a)
The adversary generates a message M 1 and derives a second message M 2 using a difference a. Then both messages are encrypted.
(b)
Using the encrypted outputs of Step 1 and a new difference b, the adversary constructs messages E 3 and E 4 . Then, he gets M 3 and M 4 by using D (the inverse of C).
(c)
Finally, the adversary analyzes the resulting differences, aiming to find a high probability of the event P [ M 3 M 4 = a ] .
BAs analyze the interaction of differential characteristics between the encryption and decryption processes. This is the reason why these attacks divide the cipher into three parts. Figure 5 illustrates this division, where the C m part represents an S-box layer. This layer plays an important role, as the adversary must determine the probability of differential characteristic interactions (Boomerang Switch) using BCT [23] or FBCT [24] tools. These tools are defined as follows:
Definition 12.
Boomerang Connectivity Table: Let S be an S-box, where S : { 0 , 1 } n { 0 , 1 } n and a , b F 2 n . Then every cell of BCT contains the number of pairs that meet the following equation:
B C T S ( a , b ) = # x F 2 n : S 1 ( S ( x ) b ) S 1 ( S ( x a ) b ) = a .
Definition 13.
Feistel Boomerang Connectivity Table: Let S be an S-box, where S : { 0 , 1 } n { 0 , 1 } m and a , b F 2 n . Then every cell of FBCT contains the number of pairs that meet the following equation:
F B C T S ( a , b ) = # x F 2 n : S ( x ) S ( x a ) S ( x b ) S ( x a b ) = 0 .
The lowest values in these tables indicate greater resistance to BAs. However, from a design perspective, the choice between BCT and FBCT is not optional but dictated by the cipher structure. Specifically, if the cipher requires the inverse of the S-box for decryption, the BCT tool must be used. Otherwise, if the same S-box is used for both encryption and decryption, the FBCT table should be applied.
Similar to the DDT, we can determine the maximum value of these tables (uniformity), which should be low. The uniformity of BCT and FBCT is defined as follows [23,24]:
Definition 14.
Boomerang uniformity (BU): The BU of an S-box S is the highest value of BCT without considering the row and the column of index 0:
B U ( S ) = m a x a b 0 ( B C T S ( a , b ) ) .
Definition 15.
Feistel boomerang uniformity (FBU): The FBU of an S-box S is the maximum value of FBCT excluding entries where the row or column index is 0, or where the row and column indices are equal.
F B U ( S ) = m a x a b ( a + b ) 0 ( F B C T S ( a , b ) ) .
In addition, similar to MDP, we can determine the probability of the boomerang effect [24]:
Definition 16.
Probability of the boomerang switch over a round (PBSR): The PBSR of an S-box S is the division of:
U n ( S ) 2 n ,
where U n is B U ( S ) or F B U ( S ) , as appropriate.
The Algorithm 1 can also be used to describe the steps to compute the BU and FBU of an S-box. The steps for computing these properties and DU are similar, differing only in the equation (or condition) used in line 6 and in the considerations for obtaining the maximum value of the table.
Table 7 and Table 8 show the BCT and FBCT values for the S-box of TWINE. The BU and FBU values of this S-box are 6 and 4. It is important to note that the FBU property and the FBCT tool are the appropriate elements to evaluate the TWINE S-box, as this cipher does not require the inverse of the S-box. If the designer does not take this into account, it may lead to a misunderstanding regarding the security level, as the probability of a boomerang switch over a round differs in both cases. For instance, computing this probability using BU gives P B S R ( S ) = B U ( S ) 2 n = 6 16 , whereas using FBU results in P B S R ( S ) = F B U ( S ) 2 n = 4 16 .

5.2.4. Resistance to Algebraic Attacks

Algebraic attacks (AAs) aim to recover the secret key by exploiting the algebraic properties of the cipher [5]. Figure 6 illustrates the general form of these attacks:
(a)
The adversary attempts to describe the cipher using a system of simple equations ( f C ) based on the plaintext (M), ciphertext (E), and secret key ( s k ).
(b)
The adversary tries to solve this system to extract the secret key, using known plaintext/ciphertext pairs ( M i , E i ).
Since the S-box S is a nonlinear function used to describe the system f c , the algebraic degree of S should be high to enhance security, as this forces the adversary to solve a system of equations of the same degree.
It is well known that an S-box S can be represented as a polynomial using the algebraic normal form (ANF) [60], which is defined as:
Definition 17.
Algebraic normal form (ANF): It is a representation of an S-box S by an n-variable polynomial:
A N F ( S ) = i F 2 n a i j = 0 n 1 x j i j
Then, the algebraic degree is obtained by using the ANF of an S-box.
Definition 18.
Algebraic degree (AD): The AD of S is the global degree of its ANF and is defined as:
A D ( S ) = m a x { H W ( i ) | i F 2 n , 0 a i F 2 m in A N F ( S ) } ,
where HW is the Hamming Weight.
Deriving the ANF and AD of the TWINE S-Box
In this section, a procedure for obtaining the ANF of the TWINE S-box is introduced by using the Möbius matrix. The process is summarized in Algorithm 3.
The ANF expresses a Boolean function as a sum (using XOR, denoted by ⊕) of products (ANDs) of input variables. In other words, it represents the function as a combination such as:
1 x 1 x 2 . . . x n x 1 x 2 . . . x 1 x n . . . x 1 x 2 . . . x n
However, to know what addends will be in the ANF, each addend is multiplied by a coefficient a i . For a vectorial Boolean function, the coefficient is a vector a i F 2 m , whereas for a Boolean function the coefficient is a bit a i { 1 , 0 } . The procedure begins with the introduction of the following definition [66]:
Definition 19.
Möbious Matrix: It is a 2 n × 2 n Matrix, denoted by T n and is recursively defined as: T n = [ T n 1 T n 1 0 T n 1 ] where T 0 = [ 1 ] .
To obtain the coefficients of a 4 × 4 S-box, the T 4 Möbius transform is required. This is referenced in Algorithm 3 as Step 1.
T 4 = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Also, the values of the S-box are converted into a bit-slice matrix, where each output bit of the S-box is placed in a separate column of the matrix (Step 2 of Algorithm 3).
B S b o x = 0 0 1 0 0 1 1 1 0 1 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 1 1 0 1 1 1 1 0 1 1 0 1 1 0 1 0 1 0 0 1 0 0
Then, we multiply B S b o x × T 4 , and the result is:
B A N F = 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 0
Each column of B A N F is a coefficient a i , thus the ANF of the TWINE S-box is:
( 0011 ) 1 ( 0011 ) x 0 ( 1100 ) x 1 ( 1001 ) x 0 x 1 ( 0111 ) x 2 ) ( 1010 ) x 0 x 2 ( 0001 ) x 1 x 2 ( 0011 ) x 0 x 1 x 2 ( 0010 ) x 3 ( 1110 ) x 0 x 3 ( 0110 ) x 1 x 3 ( 0001 ) x 0 x 1 x 3 ( 1110 ) x 2 x 3 ( 1000 ) x 0 x 2 x 3 ( 0101 ) x 1 x 2 x 3 ( 0000 ) x 0 x 1 x 2 x 3
Following the Definition 18, the AD is the maximum HW of i F 2 4 for which a i 0 . In this case, the maximum degree is determined by the term ( 0101 ) x 1 x 2 x 3 which is 3. Moreover, using this ANF, we can determine the m = 4 coordinates of this S-box by multiplying the corresponding bit of the a i coefficients with each term. For example, for the coordinate y 0 , the leftmost bit of each coefficient is multiplied by every term in the ANF. Therefore, we get the coordinates y 0 , y 1 , y 2 and y 3 :
y 0 = x 1 x 0 x 1 x 0 x 2 x 0 x 3 x 2 x 3 x 0 x 2 x 3
y 1 = x 1 x 2 x 0 x 3 x 1 x 3 x 2 x 3 x 1 x 2 x 3
y 2 = 1 x 0 x 2 x 0 x 2 x 0 x 1 x 2 x 3 x 0 x 3 x 1 x 3 x 2 x 3
y 3 = 1 x 0 x 0 x 1 x 2 x 1 x 2 x 0 x 1 x 2 x 0 x 1 x 3 x 1 x 2 x 3
Algorithm 3 Algebraic Degree Computation
Require: int n , m , Sbox S
Ensure: int A D
1:
I n i t i a l i z e ( T n )
2:
B S = C o n v e r t _ B i t _ S l i c e ( S )
3:
B A N F = B S × T n
4:
A N F = G e t _ A N F ( B A N F )
5:
A D = g e t _ M a x 0 a i F 2 m ( A N F )
Other properties related to this type of attack evaluate the algebraic immunity of an S-box. Algebraic immunity measures an S-box’s resistance to AAs through transformations, even if the S-box exhibits high AD values [53]. Generally, the objective of these transformations is to find a function g with a degree lower than A D ( S ) such that g ( S ) = 0 . If there is a function g with these features, finding a solution for g ( S ) = 0 would be easier than solving S = 0 , and this solution could also be a valid solution for S.
Different properties can measure this resistance; however, they are specific to certain cryptographic primitives. Algebraic immunity (AI) is exclusive to S-boxes used in stream ciphers [67], whereas graph algebraic immunity (GAI) [68] and degree-rank 2 (Dr2) [22] are specific to S-boxes used in block ciphers.
Among the properties related to AAs, the AD is fundamental, as it reflects the complexity of solving the system S = 0 . A low AD makes easier to solve the system, while a high AD increases computational difficulty. However, AD alone does not guarantee resistance, since transformations can reduce the degree of the nonlinear function. Properties such as AI, GAI, and Dr2 capture this aspect: AI and GAI assess the resistance of S-boxes by considering the degree of transformed functions, while Dr2 measures the number of linearly independent in the transformed system g ( S ) = 0 , revealing potential vulnerabilities even when AD is high.

5.2.5. Highlights on Confusion Properties

In summary, the main highlights of this subsection are that these attacks can identify patterns to produce distinguishers and potentially recover the secret key. The attacks exploit the S-box in different ways: DAs propagate differential patterns through the S-box; BAs propagate these patterns through the S-boxes of both the encryption and decryption processes; LAs approximate the S-box as a linear component; and AAs model the S-box as a system of equations to solve it. Therefore, it is essential to assess the security level of this nonlinear component to mitigate these vulnerabilities. This security level is determined by the values of various properties related to confusion. Section Relation Among Attacks, Property and Optimal Values summarizes the values that an S-box should achieve to be considered secure against these attacks.
Additionally, this subsection presents algorithms to compute the S-box properties for analysis and evaluation purposes rather than for large-scale deployment. For clarity, the DDT computation can be implemented more efficiently with complexity O ( 2 2 n ) , while the other tables (e.g., LAT, BCT, FBCT) follow similar patterns to the naive DDT implementation (Algorithm 1) and still grow exponentially with n ( O ( 2 3 n ) ). These algorithms are practical for small S-boxes (e.g., n 8 ), while larger dimensions require substantially more computational time and memory, highlighting scalability limitations.

5.3. Diffusion Properties: Resistance to Differential and Linear Attacks

The idea behind these properties is to enhance security when an adversary complements a single bit, that is, inverts its value (e.g., changing a 1 to 0 or vice versa), between two otherwise similar messages. In such cases, the cipher should produce two distinct ciphertexts. However, this goal cannot be achieved using only the S-box. Figure 7 illustrates the limited diffusion provided by an S-box when encrypting two 16-bit messages ( M 1 and M 2 ) that differ by just one bit (the least significant bit). We assume that the cipher applies a layer of four identical S-boxes, each corresponding to the TWINE S-box and computed in parallel. After this operation, the substituted bits remain the same in both cases, except for the last four bits (where the input difference occurred). This example shows that the diffusion achieved by the S-box alone is limited and must be reinforced by linear layers, such as bit permutation, to attain full diffusion.
Despite the limited diffusion that an S-box can provide, some designs propose specific properties for this component in relation to the diffusion layer, such as SAC [69], CarD1 [25], and CarL1 [70]. This subsection explains these properties.

5.3.1. Strict Avalanche Criterion (SAC)

This property establishes two main conditions. First, if an input bit of an S-box is complemented, then, on average, half of the output bits should change (the avalanche effect). Second, each output bit of the S-box must depend on all of the input bits (completeness principle). Thus, the strict avalanche criterion (SAC) [69] is defined as:
Definition 20.
Strict avalanche criterion(SAC): An S-box S : F 2 n F 2 m satisfies SAC if, when a single input bit is complemented, each output bit changes with a probability of 0.5 . Moreover, for all i ( 1 i n ) the following equation holds:
x F 2 n S ( x ) S ( x C i n ) = ( 2 n 1 , 2 n 1 , . . . , 2 n 1 ) ,
where C i n is an n dimensional vector with HW equal to 1 at the i t h position, and the summation (∑) of the vectors is performed component-wise over the integers ( Z m ).
It can be observed that this definition counts the number of output bits that change when a single input bit is complemented. This behavior is captured in the expression S ( x ) S ( x C i n ) , which compares the S-box output for input x with the output for a modified input where only the i-th bit of x has been flipped. The result of this XOR operation is a vector in F 2 m indicating which output bits differ. These vectors are then summed over all x F 2 n , using component-wise addition over the integers. The sum accumulates the number of times each output bit changes in response to flipping the i-th input bit. Finally, the resulting vector is compared to ( 2 n 1 , 2 n 1 , . . . , 2 n 1 ) (a vector of dimension m). If this equality holds for every input bit position i, the S-box satisfies the SAC. The Algorithm 4 summarizes the procedure described above.
Different works, such as that of Tong et al. [22], only report whether the S-box satisfies the SAC or not. Others attempt to introduce a quantitative measure that indicates how close the S-box is to satisfying SAC [20]. In the latter case, the optimal value is 0.5 , which can be obtained by averaging the result vector from (31) and dividing by n 2 n . We define this value as:
Definition 21.
Quantitative Measure of SAC Compliance ( S A C Q M ):
S A C Q M ( S ) = a v g ( S ( x ) S ( x C i n ) ) n 2 n ,
where a v g is the average of the result vector.
Algorithm 4 Strict Avalanche Criterion
Require: int n , m , Sbox S
Ensure: double S A C Q M
1:
I n i t i a l i z e ( c o n t [ m ] )
2:
for  x 0 to 2 n 1  do
3:
    for  c 0 to 2 n 1  do
4:
       if  H W ( c ) = = 1  then
5:
           c o n t = c o n t + S ( x ) S ( x c )
6:
     end if
7:
   end for
8:
end for
9:
S A C Q M = a v g ( c o n t ) n 2 n

5.3.2. CarD1 and CarL1

Block ciphers can achieve the diffusion principle by employing linear layers. One of the simplest approaches is the use of a bit permutation layer [36]:
Definition 22.
Bit permutation layer: This layer permutes every bit of the cipher state. For instance, bit i is moved to position P ( i ) .
This kind of layer is efficient for hardware implementation [10,36]; however, it may introduce vulnerabilities to differential and linear attacks. Figure 8 illustrates a potential problem when an adversary encrypts two messages ( M 1 and M 2 ) that differ by a single bit (the least significant bit). The adversary’s goal is to identify distinguishers by detecting patterns in the S-box and the bit permutation. To do this, the adversary attempts to trace a difference through the cipher using M 1 , M 2 , and the DDT of the S-box. As in the previous example, we use four identical S-boxes, each corresponding to those used in the TWINE cipher. However, in this example, we also employ a bit permutation layer, as described in Table 9.
When the adversary analyzes the DDT (see Table 4) of the S-box, it finds that two input values satisfy the one-bit difference condition for a = 1 and b = 2 (i.e., D D T S [ 1 , 2 ] = 2 ). It determines that this occurs when the S-box input is 10 = 1010 and 14 = 1110 . The adversary chooses x = 14 and constructs two messages, M 1 = 1100 1001 1111 1110 and M 2 = 1100 1001 1111 1111 , which differ by a single bit (Note that the last four bits of M 1 correspond to the number 14).
In Figure 8, B 1 , 2 shows the difference between the two messages as they pass through each component of the cipher. Initially, the two inputs differ in the last bit, B 1 , 2 = 0000 0000 0000 0001 . After processing through the S-boxes, the established difference of one bit remains unchanged B 1 , 2 = 0000 0000 0000 0010 . Note that the initial difference corresponds to a = 1 = 0001 , and the difference after the first layer of the S-boxes corresponds to b = 2 = 0010 . The adversary exploits this vulnerability found in the S-box DDT and attempts to preserve this difference through the subsequent components.
It can be observed that the difference persists even after applying the BPL. B 1 , 2 = 0000 0010 0000 0000 . However, after a second round of S-box processing, the difference expands to two bits B 1 , 2 = 0000 0011 0000 0000 . This indicates that the diffusion of differences relies primarily on the S-box. Since the adversary aims to preserve the same difference across multiple rounds, the BPL alone is insufficient (it cannot increase the number of differing bits) it merely repositions them. Therefore, it is the role of the S-box to disrupt the difference. In other words, the S-box must increase the number of active S-boxes (i.e., S-boxes receiving a nonzero input difference).
In the example shown in Figure 8, at least three out of four S-boxes remain inactive. One way to enhance the security of the cipher is to increase the number of difference bits using the S-box. Thus, the cells of the D D T ( a , b ) where both a and b have Hamming weight one should contain a zero. This means that the S-box should not allow one-bit differences to map to one-bit differences. Instead, it must produce at least a two-bit difference, which increases the likelihood of activating at least two S-boxes in the next round.
The CarD1 property evaluates the difference propagation of an S-box when the cipher includes a BPL, and is defined as follows [25]:
Definition 23.
CarD1: Let a F 2 n be a nonzero input difference and b F 2 n be a nonzero output difference (generally n = 4 ). Then, CarD1 denotes the number of nonzero entries in the DDT for which both a and b have Hamming weight equal to 1, as follows:
C a r D 1 ( S ) = # { D D T ( a , b ) | H W ( a ) = H W ( b ) = 1 a n d D D T ( a , b ) 0 } .
Smaller values of this property indicate greater resistance to differential attacks, and the optimal value is 0.
It is worth mentioning that the TWINE S-box was not designed for this type of cipher. Its value in C a r D 1 ( S ) is equal to 5. In contrast, the Serpent S-boxes [10] offer a more secure alternative against this kind of attack, as they achieve a CarD1 value of 0 (Serpent cipher uses a BPL). Table 10 shows the LUT of Serpent’s S-box S 0 , whereas Table 11 presents its DDT. It can be observed that when a = b and both are equal to 1, 2, 4, or 8 (i.e., when the HW of a is 1), the corresponding DDT entry D D T ( a , b ) is equal to 0.
Figure 9 presents the same attack scenario as in Figure 8, but using Serpent S 0 as the S-box. It is evident that, while the first case (Figure 8) maintains either the same or a small difference, the second case (Figure 9) exhibits an increasing difference with each round of S-box processing. Moreover, the BPL positions the 1-bits in a way that activates more S-boxes in the next round, enhancing diffusion.
Similar to CarD1, there is another property used to evaluate the resistance of an S-box in a cipher that includes a BPL, called CarL1. It is defined as follows [25]:
Definition 24.
CarL1: Let a and b be linear masks; then, CarL1 contains the cardinality of
C a r L 1 ( S ) = # { L A T S ( a , b ) | H W ( a ) = H W ( b ) = 1 a n d L A T S ( a , b ) 0 } .
Additionally, smaller values of this property indicate greater resistance to linear attacks, as they imply a lower probability of finding a linear approximation using only one input and one output bit. The optimal value is 0.

5.3.3. Highlights on Diffusion Properties

For this subsection, the main highlights are that, in certain cases (generally when the cipher uses a BPL), the S-box contributes to the diffusion principle. The examples in this subsection show that even if the S-box achieves a good SAC, it may produce only limited diffusion. However, when the cipher incorporates a BPL, it should reach low values in CarD1 and CarL1 to help dissipate differential characteristics.

5.4. Relation Among Attacks, Property and Optimal Values

The main purpose of this subsection is to provide an overview of the previous ones by establishing the relationship between the S-box properties and attacks, including the property values that enable an S-box to achieve a high level of security. To explain this relationship, it is necessary to introduce two important types of functions considered optimal for S-box design. The concepts related to the first type are defined as follows:
Definition 25.
Perfect Nonlinear (PN) S-boxes [71]: An S-box S : F 2 n F 2 m is perfect nonlinear if for every a F 2 n { 0 } and b F 2 m , the follow equation is satisfied D D T ( a , b ) = 2 n m .
However, PN S-boxes only exist when n 2 m , which implies that PN functions are not possible for permutation S-boxes (i.e., n = m ). This limitation leads to the use of another class of functions for permutation (balanced) S-boxes [72]:
Definition 26.
Almost Perfect Nonlinear (APN) S-boxes: An S-box S : F 2 n F 2 n is APN if its D U ( S ) is 2.
APN S-boxes exist when n is odd. When n is even, there are three relevant cases:
  • For n = 4 , there is no APN S-box [15].
  • For n = 6 , there are APN S-boxes [73].
  • For n = 8 , it is still unknown whether there is an APN S-box.
The concepts related to the second type of optimal function are defined as follows:
Definition 27.
Bent functions (BN) [74]: An S-box S : F 2 n F 2 m is called Bent if for all a F 2 n and b F 2 m { 0 } the number of equations in every cell of W S ( a , b ) is 2 n / 2 .
However, Bent functions are not balanced and only exist when the number of variables is even. As with the motivation behind APN functions (balanced S-boxes with low DU) an alternative known as almost bent functions was introduced. These functions aim to achieve near-optimal L while maintaining balance [26]:
Definition 28.
Almost Bent (AB) S-boxes: An S-box S : F 2 n F 2 n is called AB if L ( S ) 2 ( n + 1 ) / 2 and N L ( S ) 2 n 1 2 ( n + 1 ) / 2 1 .
AB functions exist only when n is odd; the corresponding AB S-boxes are also APN, and the converse also holds.
Table 12 provides an overview of the relationships among S-box properties, attacks, and the acceptable or optimal values that designers may consider when constructing a nonlinear component for a block cipher. The first column lists all the properties (and probabilities) reviewed in this paper, and the second column presents the tools (typically equations/tables) used to compute each specific property. The third column identifies the attacks that each property helps to evaluate. As shown, providing resistance against a particular type of attack may require satisfying multiple properties. Furthermore, some properties, such as CarL1 and CarD1, are specific to certain ciphers that use a BPL. The fourth column indicates the target value that a property should achieve to ensure a high level of security. Finally, the last three columns show the optimal values for three specific cases: n = 4 , n = 8 , and the AB functions (APN functions with odd n).
For n = 4 , there is no S box that achieves all optimal values simultaneously, but several offer high security by meeting many of the target values. These include the S-boxes used in TWINE, RECTANGLE, SERPENT, and PRESENT, as well as those proposed by Tong et al. [22] and Li et al. [20].
Since the existence of an 8 × 8 APN S-box remains an open problem, the fifth column lists the best-known achievable values for this size, many of which correspond to the AES S-box. However, if an APN function existed for n = 8 , the optimal values could be those shown in the seventh column.
While there is no strict order for selecting and computing security properties, it can be observed in the literature on S-boxes that designers often follow the following high-level guideline to structure the evaluation process:
1.
Determine the target S-box (structural properties) based on the cipher’s structure and application.
2.
Evaluate classical properties related to linear, differential, and algebraic attacks.
3.
Assess additional resistance against novel or cipher-specific attacks, such as boomerang or advanced algebraic attacks.
4.
Consider conflicts among properties, recognizing that improving one property may degrade another.
5.
Incorporate implementation constraints, including hardware or software costs and efficiency considerations.
This paper places particular emphasis on structural properties, which determine the achievable security level of an S-box. As mentioned in Section 5.2, classical properties form the basis for resisting various attacks and are essential not only for block ciphers but also for other cryptographic primitives.

Highlights on Relation Between Attacks and S-Box Properties

For this subsection, it is important to recap that an S-box is a vectorial Boolean function, and two types of functions provide the best resistance to cryptographic attacks: the PN and BF functions. However, the size restrictions of S-boxes prevent these functions from being implemented directly. For this reason, it is necessary to reduce the security level to produce practical S-boxes that are bijective and have an even number of input and output bits. Considering this, Table 12 shows the optimal values of the properties that an ideal bijective S-box should achieve. However, conflicts exist between these properties, making it difficult to reach optimal values for all of them. The following Section provides more details on these conflicts.

6. Conflicts Among S-Box Properties

This section discusses the conflicts that influence the robustness of the S-box, which corresponds to the third question presented in Section 1.
An ideal S-box would be a perfectly nonlinear component in which the property values achieve the optimal or best-known values. However, this is impossible because there are conflicts in reaching these values. These constraints affect aspects of security, cost, and performance. In the context of an S-box, achieving a high-security level means that the property values must be close to their optimal values; cost refers to the memory or energy required by the device to implement the nonlinear component; and performance relates to the speed and latency involved in computing the S-box.
Figure 10 illustrates several conflicts related to S-box properties and other design considerations. The first set of bullets (a–d) highlights trade-offs between S-box properties in the pursuit of strong security. These trade-offs typically arise when two properties aim for optimal values, but improving one tends to degrade the other. The second set of bullets (e–i) presents compromises that affect security, cost, and performance, particularly when structural and implementation aspects are taken into account. A detailed description of these conflicts is presented below:
(a)
Bijective vs. Non-bijective S-boxes: Bijective S-boxes are balanced and generally more secure than non-bijective ones [37]. Non-bijective S-boxes can only be used in ciphers that do not require the inverse of the component, such as Feistel constructions. However, non-bijective functions can achieve optimal NL values because they are not required to be balanced.
(b)
High NL vs. balance: This is a classic trade-off [16]. Balanced S-boxes cannot achieve perfect NL; therefore, some proposals prioritize achieving balance while slightly compromising NL [10,15,41].
(c)
CarL1 vs. DU: For a 4 × 4 S-box, the optimal DU value is 4, but in that case, CarL1 equals 2. If we aim for C a r L 1 ( S ) = 1 , then DU increases to 6. Furthermore, achieving C a r L 1 ( S ) = 0 results in D U ( S ) = 16 , which implies M D P ( S ) = 1 [70]. This trade-off extends one proposed by Zhang et al. in [25]. An optimal 4 × 4 S-box (S reaches balance, its D U is 4, and its L is 8 [15]) exhibits C a r L 1 ( S ) 2 .
(d)
APN for bijective S-boxes whenn is even: As previously mentioned, there is no APN S-box for n = 4 , and for n = 8 , the existence of such functions remains an open problem.
(e)
Large vs. Small S-boxes: Large S-boxes offer higher security but consume more device resources. This effect can be observed in Table 12, which shows the MDP of an S-box with n = 4 compared to the MDP of an S-box with n = 8 . Higher MDP values indicate a greater probability of finding differential distinguishers. However, storing LUT or computing a large S-box requires significantly more memory and computational resources than a smaller S-box. A common recommendation for implementing small nonlinear components in ciphers is to increase the number of rounds [52], although this results in higher latency when processing the ciphertext.
(f)
Dynamic vs. Static S-boxes: S-boxes with dynamic outputs offer improved security but require more resources, as a new S-box must be generated for each round [56]. This process may also introduce additional latency
(g)
CS S-boxes vs. Static S-boxes: Computed S-boxes (CS-boxes) do not require memory to store S-box values, whereas LUT-based S-boxes offer the best performance. Alternatively, hybrid solutions combine both approaches to achieve a good trade-off between cost and performance [75].
(h)
Small L and DU vs. Less circuit area: Achieving small L and DU values requires greater circuit area usage [21].
(i)
Single vs. Multiple S-boxes: Multiple S-boxes provide higher security levels by achieving greater diffusion within a round [76] and increased robustness against algebraic attacks [44]. However, implementing multiple S-boxes requires more device resources.
These are some of the conflicts a designer must consider when constructing an S-box. As more properties or implementation aspects are introduced, additional challenges arise, requiring the formulation of new trade-offs. This is another reason why the search for suitable S-boxes remains an important challenge.

7. Toolkits to Analyze S-Boxes

The reader has two options for evaluating an S-box. The first option is to implement its own algorithms to compute cryptographic properties. The second is to use existing toolkits available in the literature. This section presents three commonly used toolkits (PEIGEN [32], SageMath [63], and DLS [77]), together with an additional publicly available implementation, that is referenced as ABS (“Block Cipher Testing”, version 1.0, M. Abrar, GitHub repository; https://github.com/abrari/block-cipher-testing, accessed on 26 November 2025) that supports the evaluation of S-boxes according to well-known cryptographic properties. It is important to clarify that, in this article we use the term toolkit to refer to a software implementation of algorithms used to evaluate S-boxes. However, in the literature, this concept is sometimes referred to simply as a tool [32,59]. This can cause misunderstanding, as the term tool is also used in other works [24,77,78,79] (and in this paper) to describe the cryptographic properties or tables themselves.
PEIGEN(version 1.0, PEIGEN developers, online, Singapore/Japan) is a C++ platform (for Linux) designed to evaluate, search for, and generate nonlinear functions. SageMath (version 10.8, SageMath Inc., online, USA) for S-boxes is a Python-based framework that supports both the analysis and construction of S-boxes. DLS (version 2.0, FBU_FBDU_Sbox developers, online, Mexico) is a C++ (for Linux) toolkit aimed at evaluating S-boxes used in Feistel-based ciphers, with a focus on resistance to differential and boomerang attacks. Finally, ABS (version 1.0, M. Abrar, online, N/A) is a collection of C++ programs (cross-platform) for assessing properties such as the SAC and NL, among others.
Table 13 presents an analysis of the selected toolkits, showing both the sizes of S-boxes they support (column 2) and which properties, discussed in this article, they can evaluate (remaining columns). It can be observed that PEIGEN and ABS only accept S-boxes where n = m (with PEIGEN being exclusive to permutation S-boxes), whereas SageMath and DLS can evaluate S-boxes where n = m and n m . This distinction is important, as some toolkits are limited in their ability to assess the security of different types of S-boxes.
The main objective of this analysis is to demonstrate that these toolkits address different perspectives of S-box evaluation and that, when combined, they cover a broader range of cryptographic criteria. In addition, the reader should keep in mind that although these implementations support many S-box properties, they do not yet include more recent or advanced criteria such as GAI, Dr2, c-differential uniformity [80], c-boomerang uniformity [81], and Feistel boomerang extended uniformity [28], among others. Therefore, the development and extension of existing toolkits remain essential to support the evaluation of S-boxes against new and more sophisticated attacks.

Evaluation of Different S-Boxes

This subsection presents the assessment of various S-boxes using the toolkits reviewed in this section and the cryptographic properties discussed throughout this article. Table 14 shows the evaluation of widely studied S-boxes, including those from AES, DES ( S 1 ), TWINE, SERPENT ( S 0 ), RECTANGLE, PRESENT, and SAND, as well as others proposed by Tong et al. [22] and Li et al. [20], which are often regarded as highly secure S-boxes.
The main purpose of this table is to demonstrate the functionality of the toolkits in evaluating different S-boxes. Direct comparison between these S-boxes is not meaningful, as they are used in different contexts and their security levels vary due to structural differences, such as size and type of function. Columns two to four show that, collectively, these toolkits can evaluate both bijective and non-bijective S-boxes of various sizes, provided the output of the component is static. The remaining columns report the values of specific properties for each S-box. Each cell in these columns presents either a value (indicating the security level with respect to the corresponding property) or a special mark. For example, ✓ or ✗ marks indicate whether the S-box is balanced. The “n/a” mark represents that a property is not applicable due to the cipher’s structure. For instance, the BU property is only applicable to S-boxes whose cipher uses the inverse of the component. Lastly, the “—” mark denotes that none of the toolkits can evaluate the property. For example, no toolkit can compute the SAC value for DES S 1 or SAND, since the input and output sizes differ ( n m ).

8. Open Research Challenges

This section outlines several open challenges in the design of S-boxes. Although S-boxes have been extensively studied, fundamental questions remain unanswered: What is the optimal S-box when n = m = 8 ? How can new tools be developed to evaluate emerging S-box properties? Which S-box designs offer the highest security in contexts such as lightweight cryptography?
These questions highlight gaps related to three core aspects: construction, evaluation, and conflicts among properties (as introduced in Section 1). Accordingly, the open challenges presented here are organized as follows: the first three relate to construction, while the fourth concerns evaluation, and the fifth addresses trade-offs that affect robustness.
1.
Analysis of Boolean functions for S-box construction: Identifying and analyzing suitable Boolean functions remains an ongoing challenge in the development of stronger S-box designs. This open problem is related to the algebraic construction discussed in Section 4, which notes that the inverse function achieves optimal results for certain S-box sizes. However, the uncertainty about its optimality when n = 8 , combined with its known vulnerability to algebraic attacks, highlights the need to investigate alternative functions. For example, several functions from finite field theory, such as the Gold and Bracken-Leander functions, are actively studied as potential candidates that may offer improved resistance and better cryptographic properties [27,29,82,83,84].
2.
S-boxes for enhanced cryptanalytic attacks: As mentioned in Section 5.2, cryptographic attacks continue to evolve, such as BAs, extensions of DAs, or modifications of AAs through transformations of the S-box. Consequently, designing S-boxes that remain secure against these advanced threats is an ongoing and essential research challenge. This is evident in several studies that, using newly proposed S-box properties, have revealed vulnerabilities in existing implementations [15,22,25,77].
3.
S-box evaluation for cryptographic attacks: While classical DAs, LAs, and AAs, are well-studied, evaluating S-box security against attacks, such as higher-order differential [85] and integral [86], is difficult due to the lack of established analytical design methodologies [38,87]. Developing tools and methods to assess resistance against these advanced attacks is therefore essential for ensuring robust S-box constructions.
4.
Developing a new construction approach starting from cryptographic property tables: An extension of the previous challenge concerns enhancing the security of S-boxes, as adversaries can exploit vulnerabilities by analyzing the full structure of cryptographic property tables, not merely their maximum values [88]. To address this, several studies have proposed innovative approaches that operate directly on these tables [59,89,90,91]. These methods involve populating the tables based on specific design objectives and then searching for an S-box that satisfies the resulting constraints. Although this approach has been used to construct S-boxes from different tables (such as the DDT, LAT, and BCT) the existing proposals still rely on known tables (i.e., where the S-box is already given). This limitation opens multiple lines of inquiry, including how to characterize these tables to enable the generation of new S-boxes, or how to construct S-boxes by simultaneously using two or more property tables, rather than relying on a single one.
5.
Determine the security level of dynamic S-boxes: As mentioned earlier (Section 5), dynamic S-boxes are generally considered more resistant than static S-boxes. However, one of the open problems is how to accurately determine the security level of dynamic S-boxes with respect to different cryptographic properties. For example, as discussed in [55], there are methods to evaluate the security of these components against DAs and LAs. Nevertheless, it remains necessary to assess the resistance of dynamic S-boxes against more novel attacks, such as BAs.
6.
Development of new evaluation toolkits: As cryptographic requirements evolve and new S-box properties are introduced, the development of evaluation toolkits remains essential for supporting the analysis of these nonlinear components. Section 7 demonstrates that, although some toolkits provide broader functionality, none currently support several recently proposed properties.
7.
Design of lightweight S-boxes: Although numerous lightweight S-box designs have been proposed, identifying one that simultaneously achieves strong security and minimizes resource consumption remains a significant challenge. This difficulty arises from the need to balance multiple factors, including size, function type, area, energy efficiency, and overall performance, as discussed in Section 5.

9. Conclusions

This work arises from the need to provide a clear and accessible introduction to the fundamentals of S-box evaluation. While existing works provide valuable overviews of S-box properties and construction approaches, they are primarily oriented toward a specialist audience and place limited emphasis on design choices related to construction requirements, property conflicts, and S-box assessments. In contrast, our work aims to provide nonspecialist readers with a unified perspective that connects the motivation, construction, and evaluation of S-boxes.
This paper presents a practical guide for evaluating the security of S-boxes by addressing three research questions: how the structure and construction of the S-box affect the cipher’s resilience, how the evaluation of these nonlinear components determines their security levels, and which conflicts influence the robustness of the S-box. Regarding the first question, algebraic approaches for generating larger S-boxes provide the highest known levels of security; however, such S-boxes remain vulnerable to algebraic attacks. Concerning the second question, the core of this paper, a tutorial that explains how to determine the security level of this component is introduced. It also showed how these S-boxes contribute to achieving the principles of confusion and diffusion through illustrative examples. For the third question, this paper presented an analysis of the conflicts and trade-offs among S-box properties while taking into account factors such as implementation costs and performance, as well as how these factors influence S-box robustness. In addition, this paper reviewed the PEIGEN, SageMath, DLS, and ABS toolkits, showing that they collectively cover a broad range of cryptographic properties by addressing different perspectives of S-box evaluation.
Finally, several open research challenges were discussed, including the design of new S-boxes to withstand increasingly sophisticated cryptographic attacks, support lightweight applications, or offer alternatives that outperform those created through algebraic approaches. Addressing these challenges may help answer open questions, such as what is the optimal S-box when n = m = 8 .

Author Contributions

D.C.V. and L.M.X.R.-H. conceived the idea. D.C.V., L.M.X.R.-H. and S.E.P.H. designed the research. D.C.V. and L.M.X.R.-H. conducted the investigation. All authors analyzed the concepts and examples and contributed to the writing of the manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially supported by the Secretaría de Ciencia, Humanidades, Tecnología e Innovación (SECIHTI) through a scholarship awarded to the corresponding author (CVU: 1008806).

Data Availability Statement

No new data were created in this study. Data sharing is not applicable to this article.

Conflicts of Interest

The authors declare no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
S-box, SSubstitution box
nInput size of the S-box
mOutput size of the S-box
F 2 Finite field with two elements
F 2 n A n-dimension vector space over F 2
XA set of input bits
YA set of output bits
C , D Cipher; Inverse of the cipher (Decipher)
n s Number of sets
s k Secret key
l s k Length of the secret key
LUTLook up table
kKey mask
DUDifferential uniformity
SPNSubstitution Permutation Networks
MPlaintext
ECiphertext
μ The length in bits of a message M
DAsDifferential attacks
DDTDistribution Differential Table
#Number of pair that meets a condition
MDPMaximum differential probability
BBalance
LATLinear Approximation Table
ϵ Bias of the LAT
WWalsh-Hadamard transform
x Absolute Value of x
NLNonlinearity
LLinearity
LAPLinear Approximation Probability
BAsBoomerang attacks
CCipher
BCTBoomerang Connectivity Table
FBCTFeistel Boomerang Connectivity Table
BUBoomerang Uniformity
FBUFeistel Boomerang Uniformity
PBSRProbability of of the boomerang switch over a round
AAsAlgebraic attacks
ANFAlgebraic Normal Form
ADAlgebraic degree
HWHamming Weight
AIAlgebraic immunity
GAIGraph algebraic immunity
Dr2Degree Rank 2
B 1 , 2 The difference between M 1 and M 2 at a certain step

Appendix A. The Design of the AES S-Box

As previously mentioned, the AES S-box is based on the algebraic approach using the inverse function X 1 . The designers of AES chose this function because Nyberg demonstrated that it can achieve high levels of security against differential and linear attacks [42]. After that, they applied an affine transformation to enhance the resistance of the S-box to algebraic attacks. Finally, they introduced a constant to ensure that the input and output of the S-box are not the same or directly related. In other words, the constant is applied to prevent no fixed points and no opposite fixed points [41]. Then, the 8 × 8 S-box of AES, can be represented as follows:
S ( X ) = ( x 6 + x 5 + x + 1 ) + ( X 1 mod x 8 + x 4 + x 3 + x + 1 ) · ( x 7 + x 6 + x 5 + x 4 + 1 ) mod ( x 8 + 1 ) ,
where X conforms the eight input bits, x 8 + x 4 + x 3 + x + 1 is the irreducible polynomial, ( x 7 + x 6 + x 5 + x 4 + 1 ) mod ( x 8 + 1 ) is the affine transformation, and x 6 + x 5 + x + 1 is the constant.
It is important to mention that there are functions other than the inverse such as the Gold [92] or Bracken–Leander functions [93].

Appendix B. Comparison Between the LAT of PEIGEN and the LAT of SageMath

Equation (13) defines the LAT of an S-box S in PEIGEN, whereas the LAT of an S-box S in SageMath (by default) is defined as 2 m · ϵ ( a , b ) . If n = m , then these tables are related by (14). Note that in SageMath, the bias of a linear approximation is defined as
ϵ ( a , b ) = L A T S ( a , b ) 2 n 1 2

References

  1. Shannon, C.E. Communication theory of secrecy systems. Bell Syst. Tech. J. 1949, 28, 656–715. [Google Scholar] [CrossRef]
  2. Biham, E.; Shamir, A. Differential cryptanalysis of DES-like cryptosystems. J. Cryptol. 1991, 4, 3–72. [Google Scholar] [CrossRef]
  3. Matsui, M. Linear Cryptanalysis Method for DES Cipher. In Advances in Cryptology—EUROCRYPT ’93, Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Lofthus, Norway, 23–27 May 1993; Helleseth, T., Ed.; Springer: Berlin/Heidelberg, Germany, 1994; pp. 386–397. [Google Scholar] [CrossRef]
  4. Wagner, D. The Boomerang Attack. In Fast Software Encryption, Proceedings of the 6th International Workshop, FSE’99, Rome, Italy, 24–26 March 1999; Knudsen, L., Ed.; Springer: Berlin/Heidelberg, Germany, 1999; pp. 156–170. [Google Scholar] [CrossRef]
  5. Courtois, N.T.; Pieprzyk, J. Cryptanalysis of Block Ciphers with Overdefined Systems of Equations. In Advances in Cryptology—ASIACRYPT 2002, Proceedings of the 8th International Conference on the Theory and Application of Cryptology and Information Security, Queenstown, New Zealand, 1–5 December 2002; Zheng, Y., Ed.; Springer: Berlin/Heidelberg, Germany, 2002; pp. 267–287. [Google Scholar] [CrossRef]
  6. Sorkin, A. Lucifer, A Cryptographic Algorithm. Cryptologia 1984, 8, 22–42. [Google Scholar] [CrossRef]
  7. National Bureau of Standards. Data Encryption Standard (DES); Federal Information Processing Standards Publication 46; U.S. Department of Commerce: Washington, DC, USA, 1977.
  8. Biham, E.; Shamir, A. Differential Cryptanalysis of the Data Encryption Standard, 1st ed.; Springer: New York, NY, USA, 1993; p. 188. [Google Scholar] [CrossRef]
  9. Suzaki, T.; Minematsu, K.; Morioka, S.; Kobayashi, E. TWINE: A Lightweight Block Cipher for Multiple Platforms. In Selected Areas in Cryptography, Proceedings of the 19th International Conference, SAC 2012, Windsor, ON, Canada, 15–16 August 2012; Knudsen, L.R., Wu, H., Eds.; Springer: Berlin/Heidelberg, Germany, 2013; pp. 339–354. [Google Scholar] [CrossRef]
  10. Biham, E.; Anderson, R.; Knudsen, L. Serpent: A New Block Cipher Proposal. In Fast Software Encryption, Proceedings of the 5th International Workshop, Proceedings of the FSE ’98, Paris, France, 23–25 March 1998; Vaudenay, S., Ed.; Springer: Berlin/Heidelberg, Germany, 1998; pp. 222–238. [Google Scholar] [CrossRef]
  11. Bogdanov, A.; Knudsen, L.R.; Leander, G.; Paar, C.; Poschmann, A.; Robshaw, M.J.B.; Seurin, Y.; Vikkelsoe, C. PRESENT: An Ultra-Lightweight Block Cipher. In Cryptographic Hardware and Embedded Systems—CHES 2007, Proceedings of the 9th International Workshop, Vienna, Austria, 10–13 September 2007; Paillier, P., Verbauwhede, I., Eds.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 450–466. [Google Scholar] [CrossRef]
  12. Zhang, W.; Bao, Z.; Lin, D.; Rijmen, V.; Yang, B.; Verbauwhede, I. RECTANGLE: A bit-slice lightweight block cipher suitable for multiple platforms. Sci. China Inf. Sci. 2015, 58, 1–15. [Google Scholar] [CrossRef]
  13. Chen, S.; Fan, Y.; Sun, L.; Fu, Y.; Zhou, H.; Li, Y.; Wang, M.; Wang, W.; Guo, C. SAND: An AND-RX Feistel lightweight block cipher supporting S-box-based security evaluations. Des. Codes Cryptogr. 2022, 90, 155–198. [Google Scholar] [CrossRef]
  14. Kim, S.; Hong, D.; Sung, J.; Hong, S. Classification of 4-bit S-Boxes for BOGI Permutation. IEEE Access 2020, 8, 210935–210949. [Google Scholar] [CrossRef]
  15. Leander, G.; Poschmann, A. On the Classification of 4 Bit S-Boxes. In Arithmetic of Finite Fields, Proceedings of the First International Workshop, WAIFI 2007, Madrid, Spain, 21–22 June 2007; Carlet, C., Sunar, B., Eds.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 159–176. [Google Scholar] [CrossRef]
  16. Meier, W.; Staffelbach, O. Nonlinearity Criteria for Cryptographic Functions. In Advances in Cryptology—EUROCRYPT ’89, Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Houthalen, Belgium, 10–13 April 1989; Quisquater, J.J., Vandewalle, J., Eds.; Springer: Berlin/Heidelberg, Germany, 1990; pp. 549–562. [Google Scholar] [CrossRef]
  17. Rashidi, B. Compact and efficient structure of 8-bit S-box for lightweight cryptography. Integration 2021, 76, 172–182. [Google Scholar] [CrossRef]
  18. Rana, M.; Mamun, Q.; Islam, R. An S-box Design Using Irreducible Polynomial with Affine Transformation for Lightweight Cipher. In Quality, Reliability, Security and Robustness in Heterogeneous Systems, Proceedings of the 17th EAI International Conference, QShine 2021, Virtual Event, 29–30 November 2021; Yuan, X., Bao, W., Yi, X., Tran, N.H., Eds.; Springer: Cham, Switzerland, 2021; pp. 214–227. [Google Scholar] [CrossRef]
  19. Thakor, V.A.; Razzaque, M.A.; Darji, A.D.; Patel, A.R. A novel 5-bit S-box design for lightweight cryptography algorithms. J. Inf. Secur. Appl. 2023, 73, 103444. [Google Scholar] [CrossRef]
  20. Li, L.; Liu, J.; Guo, Y.; Liu, B. A new S-box construction method meeting strict avalanche criterion. J. Inf. Secur. Appl. 2022, 66, 103135. [Google Scholar] [CrossRef]
  21. Jeon, Y.; Baek, S.; Kim, H.; Kim, G.; Kim, J. Differential uniformity and linearity of S-boxes by multiplicative complexity. Cryptogr. Commun. 2022, 14, 849–874. [Google Scholar] [CrossRef]
  22. Tong, Y.; Xu, S.; Huang, J.; Wang, B.; Ren, Z. A new analysis of small S-boxes based on a new notion of algebraic immunity. J. Inf. Secur. Appl. 2023, 77, 103574. [Google Scholar] [CrossRef]
  23. Cid, C.; Huang, T.; Peyrin, T.; Sasaki, Y.; Song, L. Boomerang Connectivity Table: A New Cryptanalysis Tool. In Advances in Cryptology—EUROCRYPT 2018, Proceedings of the37th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Tel Aviv, Israel, 29 April–3 May 2018; Nielsen, J.B., Rijmen, V., Eds.; Springer: Cham, Switzerland, 2018; pp. 683–714. [Google Scholar] [CrossRef]
  24. Boukerrou, H.; Huynh, P.; Lallemand, V.; Mandal, B.; Minier, M. On the Feistel Counterpart of the Boomerang Connectivity Table. IACR Trans. Symmetric Cryptol. 2020, 2020, 331–362. [Google Scholar] [CrossRef]
  25. Zhang, W.; Bao, Z.; Rijmen, V.; Liu, M. A New Classification of 4-bit Optimal S-boxes and Its Application to PRESENT, RECTANGLE and SPONGENT. In Fast Software Encryption, Proceedings of the 22nd International Workshop, FSE 2015, Istanbul, Turkey, 8–11 March 2015; Leander, G., Ed.; Springer: Berlin/Heidelberg, Germany, 2015; pp. 494–515. [Google Scholar] [CrossRef]
  26. Chabaud, F.; Vaudenay, S. Links between differential and linear cryptanalysis. In Advances in Cryptology—EUROCRYPT’94, Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Perugia, Italy, 9–12 May 1994; De Santis, A., Ed.; Springer: Berlin/Heidelberg, Germany, 1995; pp. 356–365. [Google Scholar] [CrossRef]
  27. Eddahmani, S.; Mesnager, S. Explicit values of the DDT, the BCT, the FBCT, and the FBDT of the inverse, the gold, and the Bracken-Leander S-boxes. Cryptogr. Commun. 2022, 14, 1301–1344. [Google Scholar] [CrossRef]
  28. Man, Y.; Mesnager, S.; Li, N.; Zeng, X.; Tang, X. In-depth analysis of S-boxes over binary finite fields concerning their differential and Feistel boomerang differential uniformities. Discret. Math. 2024, 347, 114185. [Google Scholar] [CrossRef]
  29. Hu, Z.; Li, N.; Xu, L.; Zeng, X.; Tang, X. The differential spectrum and boomerang spectrum of a class of locally-APN functions. Des. Codes Cryptogr. 2023, 91, 1695–1711. [Google Scholar] [CrossRef]
  30. Boura, C. S-boxes. In Symmetric Cryptography 1: Design and Security Proofs; Boura, C., Naya-Plasencia, M., Eds.; John Wiley & Sons, Ltd.: Hoboken, NJ, USA, 2024; Chapter 8; pp. 111–121. [Google Scholar] [CrossRef]
  31. Easttom, C. (Ed.) s-box Design. In Modern Cryptography: Applied Mathematics and Implementation; Springer International Publishing: Cham, Switzerland, 2022; Chapter 8; pp. 193–212. [Google Scholar] [CrossRef]
  32. Bao, Z.; Guo, J.; Ling, S.; Sasaki, Y. PEIGEN—A Platform for Evaluation, Implementation, and Generation of S-boxes. IACR Trans. Symmetric Cryptol. 2019, 2019, 330–394. [Google Scholar] [CrossRef]
  33. Waheed, A.; Subhan, F.; Suud, M.M.; Alam, M.; Ahmad, S. An analytical review of current S-box design methodologies, performance evaluation criteria, and major challenges. Multimed. Tools Appl. 2023, 82, 29689–29712. [Google Scholar] [CrossRef]
  34. Canteaut, A. Lecture Notes on Cryptographic Boolean Functions. 2016. Available online: https://www.rocq.inria.fr/secret/Anne.Canteaut/poly.pdf (accessed on 10 October 2025).
  35. Perrin, L.P. Cryptanalysis, Reverse-Engineering and Design of Symmetric Cryptographic Algorithms. Ph.D. Thesis, University of Luxembourg, Luxembourg, 25 April 2017. [Google Scholar]
  36. Pehlivanoğlu, M.K.; Akleylek, S.; Sakallı, M.T.; Duru, N. On the design strategies of diffusion layers and key schedule in lightweight block ciphers. In Proceedings of the 2017 International Conference on Computer Science and Engineering (UBMK), Antalya, Turkey, 5–8 October 2017; pp. 456–461. [Google Scholar] [CrossRef]
  37. Piret, G.; Roche, T.; Carlet, C. PICARO—A Block Cipher Allowing Efficient Higher-Order Side-Channel Resistance. In Applied Cryptography and Network Security, Proceedings of the 10th International Conference, ACNS 2012, Singapore, 26–29, June 2012; Bao, F., Samarati, P., Zhou, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; pp. 311–328. [Google Scholar] [CrossRef]
  38. Lim, J.; Ng, D.; Ng, R. SoK: Security Evaluation of SBox-Based Block Ciphers. Cryptology ePrint Archive, Paper 2022/1098. 2022. Available online: https://eprint.iacr.org/2022/1098 (accessed on 26 November 2025).
  39. de Canniere, C.; Biryukov, A.; Preneel, B. An introduction to Block Cipher Cryptanalysis. Proc. IEEE 2006, 94, 346–356. [Google Scholar] [CrossRef]
  40. Stamp, M.; Low, R.M. Block Ciphers. In Applied Cryptanalysis: Breaking Ciphers in the Real World; John Wiley & Sons, Ltd.: Hoboken, NJ, USA, 2007; Chapter 4; pp. 127–191. [Google Scholar] [CrossRef]
  41. Daemen, J.; Rijmen, V. The Design of Rijndael; Springer: Berlin/Heidelberg, Germany, 2002; Volume 2. [Google Scholar] [CrossRef]
  42. Nyberg, K. Differentially uniform mappings for cryptography. In Advances in Cryptology—EUROCRYPT ’93, Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Lofthus, Norway, 23–27 May 1993; Helleseth, T., Ed.; Springer: Berlin/Heidelberg, Germany, 1994; pp. 55–64. [Google Scholar] [CrossRef]
  43. Wu, H.; Preneel, B. AEGIS: A Fast Authenticated Encryption Algorithm. In Selected Areas in Cryptography—SAC 2013, Proceedings of the 20th International Conference, Burnaby, BC, Canada, 14–16 August 2013; Lange, T., Lauter, K., Lisoněk, P., Eds.; Springer: Berlin/Heidelberg, Germany, 2014; pp. 185–201. [Google Scholar] [CrossRef]
  44. Shirai, T.; Shibutani, K.; Akishita, T.; Moriai, S.; Iwata, T. The 128-bit blockcipher CLEFIA. In Proceedings of the 14th International Conference on Fast Software Encryption, Luxembourg, 26–28 March 2007; FSE’07; Springer: Berlin/Heidelberg, Germany, 2007; pp. 181–195. [Google Scholar] [CrossRef]
  45. Rijmen, V.; Daemen, J.; Preneel, B.; Bosselaers, A.; De Win, E. The cipher SHARK. In Fast Software Encryption, Proceedings of the Third International Workshop, Cambridge, UK, 21–23 February 1996; Gollmann, D., Ed.; Springer: Berlin/Heidelberg, Germany, 1996; pp. 99–111. [Google Scholar] [CrossRef]
  46. Özkaynak, F. Construction of robust substitution boxes based on chaotic systems. Neural Comput. Appl. 2019, 31, 3317–3326. [Google Scholar] [CrossRef]
  47. Behera, P.K.; Gangopadhyay, S. Evolving bijective S-Boxes using hybrid adaptive genetic algorithm with optimal cryptographic properties. J. Ambient. Intell. Humaniz. Comput. 2023, 14, 1713–1730. [Google Scholar] [CrossRef]
  48. Mariot, L.; Picek, S.; Leporati, A.; Jakobovic, D. Cellular automata based S-boxes. Cryptogr. Commun. 2019, 11, 41–62. [Google Scholar] [CrossRef]
  49. Durasevic, M.; Jakobovic, D.; Mariot, L.; Mesnager, S.; Picek, S. On the Evolution of Boomerang Uniformity in Cryptographic S-boxes. In Applications of Evolutionary Computation, Proceedings of the 26th European Conference, EvoApplications 2023, Held as Part of EvoStar 2023, Brno, Czech Republic, 12–14 April 2023; Correia, J., Smith, S., Qaddoura, R., Eds.; Springer: Cham, Switzerland, 2023; pp. 237–252. [Google Scholar] [CrossRef]
  50. Djurasevic, M.; Jakobovic, D.; Picek, S. One property to rule them all?: On the limits of trade-offs for S-boxes. In Proceedings of the 2020 Genetic and Evolutionary Computation Conference, Cancún, Mexico, 8–12 July 2020; GECCO ’20; Association for Computing Machinery: New York, NY, USA, 2020; pp. 1064–1072. [Google Scholar] [CrossRef]
  51. Isa, H.; Jamil, N.; Z’aba, M.R. S-box construction from non-permutation power functions. In Proceedings of the 6th International Conference on Security of Information and Networks, Aksaray, Turkey, 26–28 November 2013; SIN ’13; Association for Computing Machinery: New York, NY, USA, 2013; pp. 46–53. [Google Scholar] [CrossRef]
  52. Hatzivasilis, G.; Fysarakis, K.; Papaefstathiou, I.; Manifavas, C. A review of lightweight block ciphers. J. Cryptogr. Eng. 2018, 8, 141–184. [Google Scholar] [CrossRef]
  53. Wu, C.K.; Feng, D. Boolean Functions and Their Applications in Cryptography; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar] [CrossRef]
  54. Feng, J.; Li, L. SCENERY: A lightweight block cipher based on Feistel structure. Front. Comput. Sci. 2021, 16, 163813. [Google Scholar] [CrossRef]
  55. Yan, L.; Li, L.; Guo, Y. DBST: A lightweight block cipher based on dynamic S-box. Front. Comput. Sci. 2022, 17, 173805. [Google Scholar] [CrossRef]
  56. Dhanalakshmi, K.S.; Padmavathi, R.A. A Survey on VLSI Implementation of AES Algorithm with Dynamic S-Box. J. Appl. Secur. Res. 2022, 17, 241–256. [Google Scholar] [CrossRef]
  57. Heys, H.M. A tutorial on linear and differential cryptanalysis. Cryptologia 2002, 26, 189–221. [Google Scholar] [CrossRef]
  58. Stinson, D.R.; Paterson, M.B. Cryptography: Theory and Practice, 4th ed.; CRC Press/Taylor & Francis Group: Boca Raton, FL, USA, 2018. [Google Scholar]
  59. Dunkelman, O.; Huang, S. Reconstructing an S-box from its Difference Distribution Table. IACR Trans. Symmetric Cryptol. 2019, 2019, 193–217. [Google Scholar] [CrossRef]
  60. Carlet, C. Boolean Functions for Cryptography and Coding Theory; Cambridge University Press: Cambridge, UK, 2021. [Google Scholar] [CrossRef]
  61. Youssef, A.; Tavares, S. Resistance of balanced s-boxes to linear and differential cryptanalysis. Inf. Process. Lett. 1995, 56, 249–252. [Google Scholar] [CrossRef]
  62. Adams, C.M. On immunity against Biham and Shamir’s “differential cryptanalysis”. Inf. Process. Lett. 1992, 41, 77–80. [Google Scholar] [CrossRef]
  63. Makarim, R.H.; Laigle-Chapuy, Y.; Albrecht, M.R. SAGE: S-Boxes and Their Algebraic Representations; The Sage Development Team: USA online, 2008; Available online: https://doc.sagemath.org/html/en/reference/cryptography/sage/crypto/sbox.html (accessed on 26 June 2025).
  64. Carlet, C. Vectorial Boolean Functions for Cryptography. In Boolean Models and Methods in Mathematics, Computer Science, and Engineering; Crama, Y., Hammer, P.L., Eds.; Encyclopedia of Mathematics and its Applications; Cambridge University Press: Cambridge, UK, 2010; Chapter 8; pp. 398–469. [Google Scholar] [CrossRef]
  65. Nyberg, K. S-boxes and round functions with controllable linearity and differential uniformity. In Fast Software Encryption, Proceedings of the Second International Workshop, Leuven, Belgium, 14–16 December 1994; Preneel, B., Ed.; Springer: Berlin/Heidelberg, Germany, 1995; pp. 111–130. [Google Scholar] [CrossRef]
  66. Pieprzyk, J.; Wang, H.; Zhang, X.M. Möbius transforms, coincident Boolean functions and non-coincidence property of Boolean functions. Int. J. Comput. Math. 2011, 88, 1398–1416. [Google Scholar] [CrossRef]
  67. Meier, W.; Pasalic, E.; Carlet, C. Algebraic Attacks and Decomposition of Boolean Functions. In Advances in Cryptology—EUROCRYPT 2004, Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Cachin, C., Camenisch, J.L., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; pp. 474–491. [Google Scholar] [CrossRef]
  68. Armknecht, F.; Krause, M. Constructing Single- and Multi-output Boolean Functions with Maximal Algebraic Immunity. In Automata, Languages and Programming, Proceedings of the 33rd International Colloquium, ICALP 2006, Venice, Italy, 10–14 July 2006; Bugliesi, M., Preneel, B., Sassone, V., Wegener, I., Eds.; Springer: Berlin/Heidelberg, Germany, 2006; pp. 180–191. [Google Scholar] [CrossRef]
  69. Webster, A.F.; Tavares, S.E. On the Design of S-Boxes. In Proceedings of the Advances in Cryptology—CRYPTO ’85 Proceedings, Santa Barbara, CA, USA, 18–22 August 1985; Williams, H.C., Ed.; Springer: Berlin/Heidelberg, Germany, 1986; pp. 523–534. [Google Scholar] [CrossRef]
  70. Cheng, L.; Zhang, W.; Xiang, Z. A New Cryptographic Analysis of 4-bit S-Boxes. In Information Security and Cryptology, Proceedings of the 11th International Conference, Inscrypt 2015, Beijing, China, 1–3 November 2015; Lin, D., Wang, X., Yung, M., Eds.; Springer: Cham, Switzerland, 2016; pp. 144–164. [Google Scholar] [CrossRef]
  71. Nyberg, K. Perfect nonlinear S-boxes. In Advances in Cryptology—EUROCRYPT ’91, Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Brighton, UK, 8–11 April 1991; Davies, D.W., Ed.; Springer: Berlin/Heidelberg, Germany, 1991; pp. 378–386. [Google Scholar] [CrossRef]
  72. Nyberg, K.; Knudsen, L.R. Provable Security Against Differential Cryptanalysis. In Advances in Cryptology—CRYPTO’ 92, Proceedings of the 12th Annual International Cryptology Conference, Santa Barbara, CA, USA, 16–20 August 1992; Brickell, E.F., Ed.; Springer: Berlin/Heidelberg, Germany, 1993; pp. 566–574. [Google Scholar] [CrossRef]
  73. Browning, K.A.; Dillon, J.F.; McQuistan, M.T.; Wolfe, A.J. An APN Permutation in Dimension Six. In Finite Fields: Theory and Applications; McGuire, G., Mullen, G.L., Panario, D., Shparlinski, I.E., Eds.; American Mathematical Society: Providence, RI, USA, 2010; Volume 518 Contemporary Mathematics, pp. 33–42. [Google Scholar] [CrossRef]
  74. Rothaus, O. On “bent” functions. J. Comb. Theory Ser. A 1976, 20, 300–305. [Google Scholar] [CrossRef]
  75. Kumar, A.; Tejani, S. S-BOX Architecture. In Futuristic Trends in Network and Communication Technologies, Proceedings of the First International Conference, FTNCT 2018, Solan, India, 9–10 February 2018; Singh, P.K., Paprzycki, M., Bhargava, B., Chhabra, J.K., Kaushal, N.C., Kumar, Y., Eds.; Springer: Singapore, 2019; pp. 17–27. [Google Scholar] [CrossRef]
  76. Zakaria, A.A.; Azni, A.; Ridzuan, F.; Zakaria, N.H.; Daud, M. Systematic literature review: Trend analysis on the design of lightweight block cipher. J. King Saud Univ.-Comput. Inf. Sci. 2023, 35, 101550. [Google Scholar] [CrossRef]
  77. Ventura, D.C.; Henríquez, L.M.R.; Hernández, S.E.P. Requirements for Feistel-based Lightweight Block Cipher S-boxes to be Resilient to Boomerang Attacks. In Proceedings of the 2023 Mexican International Conference on Computer Science (ENC), Guanajuato, Guanajuato, Mexico, 11–13 September 2023; pp. 1–8. [Google Scholar] [CrossRef]
  78. Mesnager, S.; Mandal, B.; Msahli, M. Survey on recent trends towards generalized differential and boomerang uniformities. Cryptogr. Commun. 2022, 14, 691–735. [Google Scholar] [CrossRef]
  79. Canteaut, A.; Kölsch, L.; Li, C.; Li, C.; Li, K.; Qu, L.; Wiemer, F. Autocorrelations of Vectorial Boolean Functions. In Progress in Cryptology—LATINCRYPT 2021, Proceedings of the 7th International Conference on Cryptology and Information Security in Latin America, Bogotá, Colombia, 6–8 October 2021; Longa, P., Ràfols, C., Eds.; Springer: Cham, Switzerland, 2021; pp. 233–253. [Google Scholar] [CrossRef]
  80. Ellingsen, P.; Felke, P.; Riera, C.; Stănică, P.; Tkachenko, A. C-Differentials, Multiplicative Uniformity, and (Almost) Perfect c-Nonlinearity. IEEE Trans. Inf. Theory 2020, 66, 5781–5789. [Google Scholar] [CrossRef]
  81. Stănică, P. Investigations on c-boomerang uniformity and perfect nonlinearity. Discret. Appl. Math. 2021, 304, 297–314. [Google Scholar] [CrossRef]
  82. Calderini, M.; Villa, I. On the boomerang uniformity of some permutation polynomials. Cryptogr. Commun. 2020, 12, 1161–1178. [Google Scholar] [CrossRef]
  83. Calderini, M.; Sala, M.; Villa, I. A note on APN permutations in even dimension. Finite Fields Their Appl. 2017, 46, 1–16. [Google Scholar] [CrossRef]
  84. Hasan, S.U.; Pal, M.; Stănică, P. The binary Gold function and its c-boomerang connectivity table. Cryptogr. Commun. 2022, 14, 1257–1280. [Google Scholar] [CrossRef]
  85. Lai, X. Higher Order Derivatives and Differential Cryptanalysis. In Communications and Cryptography: Two Sides of One Tapestry; Blahut, R.E., Costello, D.J., Maurer, U., Mittelholzer, T., Eds.; Springer: Boston, MA, USA, 1994; pp. 227–233. [Google Scholar] [CrossRef]
  86. Knudsen, L.; Wagner, D. Integral Cryptanalysis. In Fast Software Encryption, Proceedings of the 9th International Workshop, FSE 2002, Leuven, Belgium, 4–6 February 2002; Daemen, J., Rijmen, V., Eds.; Springer: Berlin/Heidelberg, Germany, 2002; pp. 112–127. [Google Scholar]
  87. Carlet, C. A notion on S-boxes for a partial resistance to some integral attacks. Cryptol. ePrint Arch. 2024. Paper 2024/1693. [Google Scholar]
  88. Bar-On, A.; Biham, E.; Dunkelman, O.; Keller, N. Efficient Slide Attacks. J. Cryptol. 2018, 31, 641–670. [Google Scholar] [CrossRef]
  89. Rohit, R.; Sarkar, S. Reconstructing S-Boxes from Cryptographic Tables with Milp. IACR Trans. Symmetric Cryptol. 2024, 2024, 200–237. [Google Scholar] [CrossRef]
  90. Boura, C.; Canteaut, A.; Jean, J.; Suder, V. Two notions of differential equivalence on Sboxes. Des. Codes Cryptogr. 2019, 87, 185–202. [Google Scholar] [CrossRef]
  91. Tian, S.; Boura, C.; Perrin, L. Boomerang uniformity of popular S-box constructions. Des. Codes Cryptogr. 2020, 88, 1959–1989. [Google Scholar] [CrossRef]
  92. Gold, R. Maximal recursive sequences with 3-valued recursive cross-correlation functions (Corresp.). IEEE Trans. Inf. Theory 1968, 14, 154–156. [Google Scholar] [CrossRef]
  93. Dobbertin, H. One-to-One Highly Nonlinear Power Functions on GF(2n). Appl. Algebra Eng. Commun. Comput. 1998, 9, 139–152. [Google Scholar] [CrossRef]
Figure 1. Classification of the S-box properties considering the shape of the S-box and the impact in the security level.
Figure 1. Classification of the S-box properties considering the shape of the S-box and the impact in the security level.
Mca 31 00027 g001
Figure 2. General workflow of a DA. (a) Two plaintexts are selected and encrypted to obtain their ciphertexts. (b) The corresponding input and output differences, Δ M and Δ E , are computed. (c) The probability P ( Δ E Δ M ) is estimated; significantly higher values than the ideal uniform distribution indicate exploitable statistical patterns.
Figure 2. General workflow of a DA. (a) Two plaintexts are selected and encrypted to obtain their ciphertexts. (b) The corresponding input and output differences, Δ M and Δ E , are computed. (c) The probability P ( Δ E Δ M ) is estimated; significantly higher values than the ideal uniform distribution indicate exploitable statistical patterns.
Mca 31 00027 g002
Figure 3. General workflow of a LA. (a) A linear approximation is constructed using the plaintext M i , ciphertext E i , secret key s k , and linear masks a, b, and k. (b) The probability that the approximation evaluates to 0 is estimated; probabilities significantly different from 0.5 reveal nonrandom behavior and enable linear distinguishers.
Figure 3. General workflow of a LA. (a) A linear approximation is constructed using the plaintext M i , ciphertext E i , secret key s k , and linear masks a, b, and k. (b) The probability that the approximation evaluates to 0 is estimated; probabilities significantly different from 0.5 reveal nonrandom behavior and enable linear distinguishers.
Mca 31 00027 g003
Figure 4. General workflow of a BA. The cipher is conceptually divided into two subciphers to combine forward and backward differentials. (a) Plaintexts with a fixed input difference a are encrypted. (b) A second difference b is applied, and the inverse cipher is used to propagate differences backward. (c) A high probability of the event M 3 M 4 = a reveals nonrandom behavior and potential vulnerability to BAs.
Figure 4. General workflow of a BA. The cipher is conceptually divided into two subciphers to combine forward and backward differentials. (a) Plaintexts with a fixed input difference a are encrypted. (b) A second difference b is applied, and the inverse cipher is used to propagate differences backward. (c) A high probability of the event M 3 M 4 = a reveals nonrandom behavior and potential vulnerability to BAs.
Mca 31 00027 g004
Figure 5. Conceptual division of a block cipher into three parts for BAs. The cipher is decomposed into C 0 , C m , and C 1 to study the interaction of forward and backward differentials. The middle part C m , corresponding to the S-box layer, plays a central role in determining the boomerang switch probability, which is evaluated using BCT or FBCT.
Figure 5. Conceptual division of a block cipher into three parts for BAs. The cipher is decomposed into C 0 , C m , and C 1 to study the interaction of forward and backward differentials. The middle part C m , corresponding to the S-box layer, plays a central role in determining the boomerang switch probability, which is evaluated using BCT or FBCT.
Mca 31 00027 g005
Figure 6. General form of AAs. (a) The adversary describes the cipher using a system of equations. (b) The adversary attempts to solve this system to extract the secret key.
Figure 6. General form of AAs. (a) The adversary describes the cipher using a system of equations. (b) The adversary attempts to solve this system to extract the secret key.
Mca 31 00027 g006
Figure 7. Limited diffusion of the S-box in one round. Two 16-bit messages ( M 1 , M 2 ) differing in one bit are processed through four parallel TWINE S-boxes. Only the last four bits change, showing that the S-box alone provides limited diffusion.
Figure 7. Limited diffusion of the S-box in one round. Two 16-bit messages ( M 1 , M 2 ) differing in one bit are processed through four parallel TWINE S-boxes. Only the last four bits change, showing that the S-box alone provides limited diffusion.
Mca 31 00027 g007
Figure 8. Propagation of input differences through the cipher. Visualization of how a one-bit input difference evolves through the S-box and bit permutation layers, showing that most S-boxes remain inactive and diffusion depends mainly on the S-box.
Figure 8. Propagation of input differences through the cipher. Visualization of how a one-bit input difference evolves through the S-box and bit permutation layers, showing that most S-boxes remain inactive and diffusion depends mainly on the S-box.
Mca 31 00027 g008
Figure 9. Enhanced diffusion using the Serpent S-box. Same attack scenario as in Figure 8, but with the Serpent S 0 S-box, showing greater propagation of differences and activation of more S-boxes across rounds.
Figure 9. Enhanced diffusion using the Serpent S-box. Same attack scenario as in Figure 8, but with the Serpent S 0 S-box, showing greater propagation of differences and activation of more S-boxes across rounds.
Mca 31 00027 g009
Figure 10. Illustration of conflicts and trade-offs between cryptographic properties of S-boxes and implementation considerations such as cost and performance.
Figure 10. Illustration of conflicts and trade-offs between cryptographic properties of S-boxes and implementation considerations such as cost and performance.
Mca 31 00027 g010
Table 2. Advantages and disadvantages of algebraic, heuristic, and random construction approaches.
Table 2. Advantages and disadvantages of algebraic, heuristic, and random construction approaches.
ApproachMain PurposeAdvantagesDisadvantages
AlgebraicSecurity1. Optimal Values regardless of size
2. Produce the best S-boxes
1. Vulnerability to Algebraic attacks
2. Produce different S-boxes
HeuristicSecurity1. Produce different S-boxes
2. Consider multiple properties
1. S-boxes are less secure than algebraic approach
Random
Searching
Searching1. Simplest approach
2. High randomness
1. S-boxes are less secure than algebraic approach
Table 3. LUT of the TWINE S-box.
Table 3. LUT of the TWINE S-box.
X0123456789ABCDEF
S(X)C0FA2B9583D71E64
Table 4. DDT of the TWINE S-box.
Table 4. DDT of the TWINE S-box.
DDT0123456789ABCDEF
016000000000000000
10020020002224002
20002220200420020
30020022220000024
40002002002040222
50242002202200000
60200040202002220
70002222024002000
80224220000000202
90002000240202202
A0200200422020002
B0020202200022400
C0020200022200240
D0422000020022020
E0200402000202022
F0200024020220200
Table 5. LAT of the TWINE S-box using PEIGEN.
Table 5. LAT of the TWINE S-box using PEIGEN.
LAT0123456789ABCDEF
016000000000000000
10044004444884400
20404840404048404
30440044848044004
40008080044444444
50044804480440044
60484040440404048
70440044084408440
80000444444440808
90044440800444480
A0404404048400484
B0448408404404004
C0800444400804444
D0844440044080044
E0484404004044840
F0440488440040440
Table 6. LAT of the TWINE S-box using SageMath.
Table 6. LAT of the TWINE S-box using SageMath.
LAT0123456789ABCDEF
08000000000000000
1002−2002−2−22−4−42−200
202024−2020−20−2420−2
3022002−2−42−40−2−200−2
400040400−2−2−222−222
50022−40−22−402−200−2−2
602420−20220−20−20−24
702−200−220−4−2−20−4220
8000022−2−2−222−20404
900−22−2−20−400−2222−40
A0202−20−2024−20024−2
B02−2−4−20−420−2−202002
C0400−2−22−200402−222
D0−4−22−2−2002−20−40022
E0−24−2−20200−2022420
F0−2202−4−4−2−20020−220
Table 7. BCT of TWINE S-box.
Table 7. BCT of TWINE S-box.
BCT0123456789ABCDEF
016161616161616161616161616161616
116020060006224002
216002620200420060
316020022660000024
416002006002040622
516646002202200000
616200040206006220
716002262024006000
816664220000000202
916002000640202206
A16200200462020006
B16020206200062400
C16020600022600240
D16466000020022020
E16200402000602062
F16200024020260600
Table 8. FBCT of TWINE S-box.
Table 8. FBCT of TWINE S-box.
FBCT0123456789ABCDEF
016161616161616161616161616161616
1161600004400000000
2160160000000004040
3160016000004400000
4160001600000040004
5160000160040000400
6164000016400000000
7164000041600000000
8160000400160000400
9160040000016400000
A160040000041600000
B160004000000160004
C160400000000016040
D160000400400001600
E160400000000040160
F160004000000400016
Table 9. A BPL of 16 bits. Here, i represents the original position of a bit, and P ( i ) denotes its new position after the BPL is applied.
Table 9. A BPL of 16 bits. Here, i represents the original position of a bit, and P ( i ) denotes its new position after the BPL is applied.
i0123456789ABCDEF
P(i)A47F29D01B5E8C63
Table 10. LUT of the Serpent S 0 taken from [15].
Table 10. LUT of the Serpent S 0 taken from [15].
X0123456789ABCDEF
S(X)38F1A65BED42709C
Table 11. DDT of the Serpent S-box S 0 .
Table 11. DDT of the Serpent S-box S 0 .
DDT0123456789ABCDEF
016000000000000000
10002022200022040
20000000002204224
30222000204022000
40000000004400440
50020420020220020
60224022400000000
70020420022020200
80002022200022400
90220022002200220
A0222000200422000
B0220022000004004
C0200402022020200
D0004000440000004
E0200402020220020
F0220022040000004
Table 12. Summary of S-box properties, evaluation tools, related attacks, acceptable thresholds, and optimal values for n = 4 , n = 8 , and odd n. ✓ indicates that the property can be achieved in the respective case.
Table 12. Summary of S-box properties, evaluation tools, related attacks, acceptable thresholds, and optimal values for n = 4 , n = 8 , and odd n. ✓ indicates that the property can be achieved in the respective case.
Property/
Measure
ToolAttackAcceptable/
Value
Optimal Value
n = 4 n = 8 AB ( n Odd)
BDefinition 5Differential
DUDDTDifferentialSmall442
MDPDDTDifferentialSmall 0.25 0.015625 2 n 1
CarD1DDTDifferentialSmall000
LLATLinearSmall832 2 ( n + 1 ) / 2
LAPLATLinearSmall 0.25 0.0625 2 ( n + 1 ) / 2
CarL1LATLinearSmall000
NLWHLinearHigh4112 2 n 1 2 ( n + 1 ) / 2 1
BUBCTBoomerangSmall662
PBSRBCTBoomerangSmall 0.375 0.0234375 2 n 1
FBUFBCTBoomerangSmall440
PBSR (FBU)FBCTBoomerangSmall 0.25 0.015625 0
ADANFAlgebraicHigh37 n 1
SACRefer to (31)StatisticalNear to 0.5 0.5 0.5 0.5
Table 13. Analysis of four toolkits for evaluating S-boxes. The DLS toolkit supports CarD1 and CarL1 only when n = m = 4 . ✓ indicates that the corresponding property is implemented in the referenced toolkit.
Table 13. Analysis of four toolkits for evaluating S-boxes. The DLS toolkit supports CarD1 and CarL1 only when n = m = 4 . ✓ indicates that the corresponding property is implemented in the referenced toolkit.
ToolkitsStructuralConfusionDiffusion
Size DU B MDP L NL LAP BU PBSR (BU) FBU PBSR (FBU) AD SAC CarD1 CarL1
PEIGEN
(2019) [32]
n = m
SageMath
[63]
n = m
n m
DLS
(2023) [77]
n = m
n m
ABS n = m
Table 14. Evaluation of different S-boxes with respect to their cryptographic properties using the available toolkits.
Table 14. Evaluation of different S-boxes with respect to their cryptographic properties using the available toolkits.
S-BoxSizeFunctionOutputDUBMDPLNLLAPBUFBUPBSRADSACCarD1CarL1
AES 8 × 8 BijectiveStatic40.015625321120.06256n/an/a70.504883n/an/a
TWINE 4 × 4 BijectiveStatic40.25840.25n/a40.2530.57n/an/a
RECTANGLE 4 × 4 BijectiveStatic40.25840.2516n/an/a30.67122
SERPENT S 0 4 × 4 BijectiveStatic40.25840.2516n/an/a30.64008
PRESENT 4 × 4 BijectiveStatic40.25840.2516n/an/a30.62508
Tong et al. [22] 4 × 4 BijectiveStatic40.25840.25640.2530.5810
Li et al. [20] 4 × 4 BijectiveStatic40.25840.25640.2530.51010
SAND 4 × 8 Non-bijectiveStatic40.25840.25n/a80.53n/an/a
DES S 1 6 × 4 Non-bijectiveStatic160.2536140.28125n/a240.3755
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Ventura, D.C.; Rodríguez-Henríquez, L.M.X.; Hernández, S.E.P. Understanding S-Box Security Assessment: A Practical Guide. Math. Comput. Appl. 2026, 31, 27. https://doi.org/10.3390/mca31010027

AMA Style

Ventura DC, Rodríguez-Henríquez LMX, Hernández SEP. Understanding S-Box Security Assessment: A Practical Guide. Mathematical and Computational Applications. 2026; 31(1):27. https://doi.org/10.3390/mca31010027

Chicago/Turabian Style

Ventura, David Carcaño, Lil María Xibai Rodríguez-Henríquez, and Saúl E. Pomares Hernández. 2026. "Understanding S-Box Security Assessment: A Practical Guide" Mathematical and Computational Applications 31, no. 1: 27. https://doi.org/10.3390/mca31010027

APA Style

Ventura, D. C., Rodríguez-Henríquez, L. M. X., & Hernández, S. E. P. (2026). Understanding S-Box Security Assessment: A Practical Guide. Mathematical and Computational Applications, 31(1), 27. https://doi.org/10.3390/mca31010027

Article Metrics

Back to TopTop