Next Article in Journal
On Block g-Circulant Matrices with Discrete Cosine and Sine Transforms for Transformer-Based Translation Machine
Next Article in Special Issue
Dynamic Credible Spectrum Sharing Based on Smart Contract in Vehicular Networks
Previous Article in Journal
An FTwNB Shield: A Credit Risk Assessment Model for Data Uncertainty and Privacy Protection
Previous Article in Special Issue
An Optimized and Scalable Blockchain-Based Distributed Learning Platform for Consumer IoT
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Integral Cryptanalysis of Reduced-Round IIoTBC-A and Full IIoTBC-B

1
Cyberspace Institute of Advanced Technology, Guangzhou University, Guangzhou 510006, China
2
Key Laboratory of Cyberspace Security Defense, Institute of Information Engineering, Chinese Academy of Sciences, Beijing 100085, China
3
School of Computer Science and Technology, Harbin Institute of Technology, Shenzhen 518055, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(11), 1696; https://doi.org/10.3390/math12111696
Submission received: 26 April 2024 / Revised: 20 May 2024 / Accepted: 27 May 2024 / Published: 29 May 2024
(This article belongs to the Special Issue Advances in Communication Systems, IoT and Blockchain)

Abstract

:
This paper delves into the realm of cryptographic analysis by employing mixed-integer linear programming (MILP), a powerful tool for automated cryptanalysis. Building on this foundation, we apply the division property method alongside MILP to conduct a comprehensive cryptanalysis of the IIoTBC (industrial Internet of Things block cipher) algorithm, a critical cipher in the security landscape of industrial IoT systems. Our investigation into IIoTBC System A has led to identifying a 14-round integral distinguisher, further extended to a 22-round key recovery. This significant finding underscores the cipher’s susceptibility to sophisticated cryptanalytic attacks and demonstrates the profound impact of combining the division property method with MILP in revealing hidden cipher weaknesses. In the case of IIoTBC System B, our innovative approach has uncovered a full-round distinguisher. We provide theoretical validation for this distinguisher and uncover a pivotal structural issue in the System B algorithm, specifically the non-diffusion of its third branch. This discovery sheds light on inherent security challenges within System B and points to areas for potential enhancement in its design. Our research, through its methodical examination and analysis of the IIoTBC algorithm, contributes substantially to the field of cryptographic security, especially concerning industrial IoT applications. By uncovering and analyzing the vulnerabilities within IIoTBC, we enhance the understanding of cipher robustness and pave the way for advancements in securing industrial IoT communications.

1. Introduction

1.1. Background

The rapid evolution of the industrial Internet of Things (IIoT) [1,2,3] heralds a new era in industrial automation and data exchange. This advancement, however, brings with it a heightened need for robust security solutions, particularly in cryptographic algorithms that can operate efficiently in resource-constrained environments. The industrial Internet of Things block cipher (IIoTBC) algorithm, specifically designed for IIoT applications [4,5,6,7,8], emerges as a pivotal innovation in this context. It strikes a crucial balance between computational efficiency and the stringent security requirements of industrial systems, ensuring data integrity and confidentiality in environments where traditional cryptographic solutions may prove infeasible.
IIoTBC [9] is primarily intended for securing industrial IoT environments, where it can be deployed at the sensor node level. It provides a first line of defense by allowing sensor data to circulate as ciphertext, thus enhancing privacy and security in industrial settings. Recognizing the rapid increase in industrial IoT users, IIoTBC is developed as a lightweight cipher to protect user privacy. It aims to fully realize its functions while minimizing the use of hardware devices. The round function of IIoTBC involves AddRoundkey, S-box permutation, and 1-bit left rotation. These operations are designed to be simple and consume fewer resources, making IIoTBC suitable for hardware implementation, particularly in resource-constrained environments. The IIoTBC algorithm is a strategically designed cipher that addresses the specific security requirements of the industrial IoT sector. Its lightweight design, flexible structure, and efficient hardware implementation make it an ideal solution for protecting data in resource-constrained IoT devices, especially in industrial settings where data security is paramount.
Despite its innovative design and promising applications, the security analysis of the IIoTBC algorithm remains incomplete. While IIoTBC is engineered to be lightweight and efficient, the robustness of its cryptographic mechanisms under various attack vectors has not been thoroughly evaluated. Conducting such an analysis is crucial for identifying potential vulnerabilities and validating the algorithm’s efficacy in providing secure data transmission within industrial IoT environments. By systematically investigating IIoTBC’s security properties, researchers can ensure that it meets the stringent security standards required for protecting sensitive industrial data.

1.2. Related Works

Integral cryptanalysis is a method of cryptanalysis that is used to attack symmetric key block ciphers [10,11,12,13]. This form of analysis is crucial for evaluating the strength of cryptographic algorithms against structured attacks. Integral cryptanalysis typically involves examining the behavior of algorithmic transformations over sets of plaintexts and observing specific patterns in the resulting ciphertexts. The discovery of these patterns, or distinguishers, can be instrumental in uncovering vulnerabilities within the cipher, thus providing valuable insights into its security profile [14,15,16].
The division property, introduced by Todo at EUROCRYPT 2015 [17] as a generalized integral property, is currently recognized as the most efficient and accurate method for detecting integral distinguishers. This property can effectively exploit algebraic degree information to identify balanced output bits, as evidenced by its successful application in breaking the full MISTY1 cipher. However, the initial version of the division property was word-oriented, focusing solely on the algebraic degree of nonlinear exponents and lacking the ability to utilize the internal structure of ciphers in a detailed manner.
Todo and Morii introduced the bit-based division property at FSE 2016 to address this limitation. This included both the conventional bit-based division property and the three-subset bit-based division property. Wang et al. later demonstrated that the three-subset bit-based division property could be used to recover the exact superpoly in cube attacks. This concept was further refined by Hao et al., leading to the three-subset bit-based division property without unknown subsets (3SDPwoU). Recently, Hebborn et al. pointed out that the 3SDPwoU, viewed from the perspective of the parity set actually determines the presence or absence of certain monomials in the polynomial representation of the cipher output [17,18,19].
At ASIACRYPT 2020, Hu et al. introduced the concept of monomial prediction, which reinterprets division properties directly from the polynomial viewpoint. By counting monomial trails, they could ascertain whether a monomial from the plaintext or initialization vector (IV) appears in the cipher output polynomial. It was subsequently demonstrated that monomial prediction and the 3SDPwoU are equivalent in their application [20,21,22,23,24,25,26].
Mixed-integer linear programming (MILP) has emerged as a groundbreaking tool in the realm of automated cryptanalysis. MILP’s ability to model complex cryptographic operations through linear inequalities offers a systematic and efficient approach to uncovering potential weaknesses in cipher algorithms [27,28,29,30,31]. By translating cryptographic structures into MILP models, researchers can leverage powerful computational techniques to analyze and break ciphers in ways that were previously unfeasible, making it an indispensable tool in modern cryptanalysis [32,33,34,35,36].
Despite the robustness of MILP in integral cryptanalysis, the design of the IIoTBC algorithm did not specifically account for resistance to such analysis. Therefore, assessing IIoTBC’s resilience against integral cryptanalysis using MILP is essential for ensuring its security in industrial IoT environments.

1.3. Our Contributions

Application of Division Property and MILP. We have innovatively applied the division property method and mixed-integer linear programming (MILP) to conduct a comprehensive automated cryptanalysis of the IIoTBC algorithm.
Discovery of Integral Distinguishers. Our analysis has unveiled a 14-round integral distinguisher for IIoTBC System A and a full-round distinguisher for System B, revealing crucial insights into the structural strengths and vulnerabilities of these systems.
Extended Cryptanalysis and Structural Insights. For System A, we extended our findings to a 22-round key recovery, demonstrating the practical impact of the discovered vulnerabilities. In System B, we identified a significant structural issue—the lack of diffusion in its third branch—which highlights a critical area for potential improvement.
Our work represents a significant stride in the automated cryptanalysis of IIoTBC, offering a deeper understanding of its security aspects and potential areas for improvement. By systematically exposing and scrutinizing the algorithm’s vulnerabilities, this research contributes significantly to the advancement of cryptographic security in industrial IoT applications, a domain that is becoming increasingly crucial in our digitally connected world.

1.4. Organization

In Section 2, we review the basics of the IIoTBC cipher, division property, and MILP-based cryptanalysis. In Section 3, we present the details of constructing the MILP automatic search model and the distinguisher for IIoTBC. The process of key recovery for IIoTBC-A is detailed in Section 4, which is followed by a theoretical elucidation of the distinguisher for IIoTBC-B in Section 5. Finally, Section 6 provides a concise conclusion of our findings.

2. Preliminaries

2.1. Notations

In this subsection, we present the notations used throughout this paper. Let F 2 = { 0 , 1 } and denote F 2 n as the n-bit string over F 2 . Let Z denote the integer ring and Z n denote the set of all n-dimensional vectors with coordinates over Z . For easier expression, we give the description of notations used in this paper in Table 1.
For any a F 2 n , we define a [ i ] as the i-th bit of a, and the Hamming weight w t ( a ) is calculated by w t ( a ) = i = 0 n 1 a [ i ] . Furthermore, for any a = ( a 0 , a 1 , , a m 1 ) F 2 0 × F 2 1 × × F 2 m 1 , the vectorial Hamming weight of a is defined as W t ( a ) = ( w t ( a 0 ) , w t ( a 1 ) , , w t ( a m 1 ) ) .
For any k Z m and k Z m , we define k k if k i k i for all i. Otherwise, k ⪰̸ k . For an integral distinguisher, A s denotes s successive active bits, C s denotes s successive constant bits, B s denotes s successive balanced bits, and U s denotes s successive unknown bits.
Definition 1 
(Bit Product Function). Let π u ( x ) be a function from F 2 n to F 2 . For any u F 2 n and x F 2 n , the bit product function π u ( x ) is defined as
π u ( x ) = i = 0 n 1 x [ i ] u [ i ] .
Let π u ( x ) be a function from ( F 2 0 × F 2 1 × × F 2 m 1 ) to F 2 . For any u = ( u 0 , u 1 , , u m 1 ) ( F 2 0 × F 2 1 × × F 2 m 1 ) , x = ( x 0 , x 1 , , x m 1 ) ( F 2 0 × F 2 1 × × F 2 m 1 ) , the bit product function π u ( x ) is defined as
π u ( x ) = i = 0 m 1 π u [ i ] ( x [ i ] ) .

2.2. IIoTBC Block Cipher

The IIoTBC algorithm [9] is a lightweight block cipher designed for the security of industrial IoT (IIoT). It features a variable system structure that adapts to different security requirements and is particularly suited for environments with limited hardware resources, such as sensor nodes in IIoT. IIoTBC works with 128-bit keys and has a block size of 64 bits. It offers two system structures, System A and System B, catering to different microcontroller unit (MCU) capabilities.

2.2.1. System A Structure (IIoTBC-A)

IIoTBC-A is optimized for 8-bit MCUs, which are commonly used in industrial IoT settings. It is based on an eight-branch generalized Feistel structure, as shown in Figure 1.
Each branch undergoes a transformation that involves the use of a function f 1 , which incorporates steps like AddRoundkey, S-box permutation, and a 1-bit left rotation, as shown in Figure 2. The S-box is as follows.
x0123456789ABCDEF
S(x)5D9463F1B8E072CA
Functions PA1 and PA2 are utilized for the exchange of branch data positions. This is crucial in ensuring data diffusion across the branches.
The algorithm executes these steps for 32 rounds, enhancing the security with each iteration.

2.2.2. System B Structure (IIoTBC-B)

IIoTBC-B is designed for 16-bit MCUs, which offer better data processing capabilities and more memory compared to 8-bit MCUs. Unlike IIoTBC-A, IIoTBC-B uses a four-branch generalized Feistel structure, as shown in Figure 3. This reflects a more complex and secure approach, suitable for the enhanced capabilities of 16-bit MCUs.
A notable feature is its reliance on bit-slice technology. Each of the four branches in IIoTBC-B is represented as a 4 × 4 matrix. The 64-bit input data are transformed into four slices, setting the stage for branch-specific processing. PB1 is to rearrange the 64-bit data and convert them to the input of four branches.
The function f 2 is applied to each branch, with its operation process adding to the cipher’s complexity and security, as shown in Figure 4. Different permutation functions (PB2 and PB3) are used for processing in odd and even rounds, individually. These operation processes of PB1, PB2, and PB3 are shown in Figure 5.

2.3. Bit-Based Division Property

The division property, as introduced in [17], represents an advanced form of the integral property. Its primary function is to leverage the underlying relationships between traditional integral properties like ALL and BALANCE, thereby serving as a potent tool for developing enhanced integral distinguishers. In this subsection, we aim to succinctly revisit the concepts of the division property and outline the key propagation rules associated with the bit-based division property.
Definition 2 
(Division Property). Let X be a multiset whose elements take values from F 2 0 × F 2 1 × × F 2 m 1 and let K denote a set of m-dimensional vectors whose i-th element takes a value between 0 and i ; this fulfills the following conditions:
x X π u ( x ) = u n k n o w n if there is k K s . t . u k , 0 o t h e r w i s e .
If two vectors k 1 and k 2 in K satisfy that k 1 k 2 , then k 1 is redundant and will be removed from K . It is worth noting that, for the bit-based division property, 0 , 1 , , m 1 are restricted to 1.

Propagation Rules of Bit-Based Division Property

For the bit-based division property, the rules governing operations such as COPY, XOR, AND, and Rotation are described as follows [37].
Proposition 1 
(COPY [38]). Let F be a COPY function, where the input is x F 2 and the output is calculated as ( y 0 , y 1 ) = ( x , x ) . Let X and Y be the input multiset and output multiset, respectively. Assuming that the multiset X has the division property D k 1 , then the multiset Y has the division property D K 1 , 1 , where K is computed as
K = { ( 0 , 0 ) } , if k = 0 K = { ( 0 , 1 ) , ( 1 , 0 ) } , if k = 1 .
Proposition 2 
(XOR [38]). Let F be an XOR function, where the input is ( x 0 , x 1 ) F 2 × F 2 and the output is calculated as y = x 0 x 1 . Let X and Y be the input multiset and output multiset, respectively. Assuming that the multiset X has the division property D k 1 , 1 , then the multiset Y has the division property D K 1 , where K is computed as
K = { ( 0 ) } , if k = ( 0 , 0 ) K = { ( 1 ) } , if k = ( 0 , 1 ) or ( 1 , 0 ) K = , if k = ( 1 , 1 ) .
Proposition 3 
(AND [38]). Let F be an AND function, where the input is ( x 0 , x 1 ) F 2 × F 2 and the output is calculated as y = x 0 x 1 . Let X and Y be the input multiset and output multiset, respectively. Assuming that the multiset X has the division property D k 1 , 1 , then the multiset Y has the division property D K 1 , where K is computed as
K = { ( 0 ) } , if k = ( 0 , 0 ) K = { ( 1 ) } , o t h e r w i s e .
Proposition 4 
(Rotation). Let F be a Left Rotation function, where the input is ( x 0 , x 1 , , x m 1 ) F 2 m and the output is calculated as ( x t , , x m 1 , x 0 , , x t 1 ) . Let X and Y be the input multiset and output multiset, respectively. Assuming that the multiset X has the division property D k 1 , 1 , then the multiset Y has the division property D K 1 , where K is computed as
K = ( k t , , k m 1 , k 0 , , k t 1 ) , from all k = ( k 0 , k 1 , , k m 1 ) K . .
Todo, in [39], posited that analyzing the propagation of the division property through a block cipher essentially involves the transition of vectors. Let f r represent the round function of a block cipher and D k n , m denote a given initial division property. Following the rules detailed in [39], the initial division property D k n , m propagates through the round function f r to yield the division property D K n , m , where K comprises a set of vectors in Z m . Therefore, the process of division property propagation through f r fundamentally constitutes a transition from k to the vectors within K .
Definition 3 
(Division Trail). Let f r denote the round function of an iterated block cipher. Assume that the input multiset to the block cipher has initial division property D k n , m , and denote the division property after i-round propagation through f r by D K i n , m . Thus, we have the following chain of division property propagations:
{ k } = d e f K 0 f r K 1 f r K 2 f r
Moreover, for any vector k i * in K i ( i 1 ), there must exist a vector k i 1 * in K i 1 such that k i 1 * can propagate to k i * by division property propagation rules. Furthermore, for ( k 0 , k 1 , , k r ) K 0 × K 1 × × K r , if k i 1 * can propagate to k i * for all i { 1 , 2 , , r } , we call ( k 0 , k 1 , , k r ) an r-round division trail.

2.4. MILP Automatic Cryptanalysis

MILP automates the process of identifying weak points in cryptographic algorithms. It can efficiently handle large, complex systems, making it an invaluable tool in assessing modern cryptographic methods, which are often too complex for manual analysis. Central to MILP are the following key elements:
  • Objective Function: The cornerstone of any MILP problem is its objective function, a linear expression that the solution process seeks to maximize or minimize. This function encapsulates the goal of the optimization, such as cost minimization or profit maximization.
    Maximize: 20 x + 30 y
  • Decision Variables: These are the variables whose values need to be determined. In MILP problems, these variables can be integers, binary (0 or 1), or continuous.
    x , y
  • Constraints: Constituting the backbone of the problem, constraints are linear equations or inequalities that limit the values of decision variables. They ensure that the solution adheres to practical conditions or business rules.
    2 x + y 100 , and x + 2 y 40
  • Parameters: These are known numerical values within the problem, used to define the constraints and the objective function. Variable Bounds: These define the permissible range (upper and lower limits) for the decision variables.
    x , y 0 and x , y are integers
Together, these components form the basis of MILP, enabling it to tackle a wide range of optimization problems by finding the best possible solution under given constraints. Within the domain of MILP, Gurobi 10.0.3 http://www.gurobi.com/ (accessed on 10 December 2023) stands out as a pivotal optimization solver, offering a robust and efficient platform for tackling MILP problems. Solving an MILP problem using Gurobi involves a structured process. An outline of the typical workflow is given as follows
  • Setup and Initialization
    • Import the Gurobi library in your programming environment:
      from gurobipy import Model, GRB.
    • Initialize a new model:
      m = Model("model_name").
    • Define variables with types (integer, binary, continuous) and bounds:
      x = m.addVar(vtype=GRB.INTEGER, name="x"),
      y = m.addVar(vtype=GRB.INTEGER, name="y").
  • Objective Function
    • Set the objective (maximization or minimization):
      m.setObjective(20*x + 30*y, GRB.MAXIMIZE).
  • Adding Constraints
    • Formulate and add constraints to the model:
      m.addConstr(2*x + 3*y <= 100, "constraint_name1"),
      m.addConstr(x + 2*y <= 40, "constraint_name2").
  • Optimization
    • Optimize the model using: m.optimize().
    • Optionally, tune parameters for complex problems.
  • Solution Extraction and Analysis
    • Check the solution status and ensure an optimal solution is found:
      m.status == GRB.Status.OPTIMAL
    • Retrieve and analyze the results ("x.x", "y.x", the objective function value "m.objVal").
.
MILP provides the theoretical and practical framework for complex optimization problems, while Gurobi offers the technological prowess and computational efficiency to solve these problems effectively. This synergy is integral to the field of optimization, driving both academic research and practical applications forward.

3. Automatic Search Model for IIoTBC

3.1. Initial Bit-Based Division Property and Stop Rules

3.1.1. Initial Division Property

In the context of integral distinguisher search algorithms, an initial division property denoted as D k 1 , n , symbolized by a vector k = ( k 0 , , k n 1 ) , is often provided. Consider a division trail over r rounds, expressed as
( a 0 0 , , a n 1 0 ) ( a 0 r , , a n 1 r ) .
Here, L represents a system of linear inequalities defined on the variables a i j (where i = 0 , , n 1 and j = 0 , , r ) along with some auxiliary variables. It is necessary to incorporate the conditions a i 0 = k i (for i = 0 , , n 1 ) into the system L . Consequently, all feasible solutions of L are division trails commencing from the vector k .
In the case of IIoTBC ciphers, the data complexity of the cipher should be lower than 2 64 . To ascertain the longest integral distinguisher within the IIoTBC framework, we commence by initializing the vector k . This vector is configured such that its Hamming weight, denoted by w t ( k ) , is precisely 63. This initialization results in an initial division property comprising 64 distinct vectors.

3.1.2. Stop Rule

Consider a set X with the division property D K 1 , n . If X does not exhibit any integral property, for any x X , the projection π u ( x ) remains unknown for any unit vector u ( F 2 ) n . Since X has the division property D K 1 , n , there must exist a vector k K such that u k . Given that u is a unit vector, we have u = k , which implies that the set K contains all n unit vectors.
Given a specific initial division vector k , our analysis focuses on the division property D K r 1 , n , which describes the output divisions ( a 0 r , , a n 1 r ) after r rounds in a cryptographic cipher. If K r includes all n unit vectors, it signals the point at which the algorithm should be terminated. This implies that, under the stipulated conditions, an r-round distinguisher is not found. Consequently, the longest possible integral distinguisher, based on the initial division vector k , is confined to a maximum of r 1 rounds.
Thus, the objective function is
M i n m i z e : a 0 r + a 1 r + + a n 1 r

3.2. Modeling Division Propagation Using Linear Inequalities

The IIoTBC algorithm incorporates several fundamental operations, including COPY, XOR, rotation, and S-box. In the following subsections, we introduce models for the propagation of the bit-based division property associated with S-box operations.

Model S-Box

To construct the linear inequality system for an S-box, we first apply the table-aided bit-based division property, generating the S-box’s propagation table. Following this, the inequality_generator() function within the Sage 10.2 http://www.sagemath.org/ (accessed on 10 December 2023) framework is employed to derive a set of linear inequalities [38]. It is noteworthy, however, that the resultant number of linear inequalities can be substantial, occasionally to the extent that their complete integration into the MILP model leads to computational impracticality.
To mitigate this challenge, Sun et al. [40] introduced a method termed the greedy algorithm, aimed at reducing the size of this inequality set. In the context of the IIoTBC S-box analyzed using Sage, the initial count of linear inequalities stands at 84. Application of the greedy algorithm (as described in Algorithm 1 of [38]) effectively reduces this number to 10. The following inequalities are 10 inequalities used to describe the IIoTBC S-box, where ( a 0 , a 1 , a 2 , a 3 ) ( b 0 , b 1 , b 2 , b 3 ) denotes a division trial.
1 a 0 + 4 a 1 + 1 a 2 + 1 a 3 2 b 0 2 b 1 2 b 2 2 b 3 > = 1 0 a 0 + 0 a 1 + 3 a 2 + 0 a 3 1 b 0 1 b 1 1 b 2 1 b 3 > = 1 2 a 0 + 0 a 1 1 a 2 1 a 3 + 4 b 0 + 2 b 1 + 3 b 2 + 3 b 3 > = 0 3 a 0 + 0 a 1 + 0 a 2 + 0 a 3 1 b 0 1 b 1 1 b 2 1 b 3 > = 1 6 a 0 4 a 1 3 a 2 3 a 3 + 2 b 0 1 b 1 + 2 b 2 + 2 b 3 > = 11 0 a 0 + 0 a 1 + 0 a 2 + 3 a 3 1 b 0 1 b 1 1 b 2 1 b 3 > = 1 2 a 0 2 a 1 4 a 2 4 a 3 + 1 b 0 + 1 b 1 + 2 b 2 1 b 3 > = 9 1 a 0 1 a 1 2 a 2 2 a 3 + 5 b 0 + 5 b 1 + 5 b 2 + 4 b 3 > = 0 1 a 0 + 0 a 1 + 0 a 2 1 a 3 + 0 b 0 1 b 1 + 1 b 2 + 0 b 3 > = 2 0 a 0 + 1 a 1 + 0 a 2 + 0 a 3 1 b 0 + 0 b 1 1 b 2 + 0 b 3 > = 1

3.3. Model and Distinguisher of IIoTBC-A and IIoTBC-B

Up to this point, for block ciphers based on the three operations (COPY, AND, XOR) and S-boxes, we can construct a set of linear inequalities that characterize the division property propagation for one round. By iterating this process r times, a linear inequality system L can be formulated, describing r rounds of division property propagation. All feasible solutions of L correspond to all possible r-round division trails. Let A , C , B , and U represent ACTIVE, CONSTANT, BALANCE, and UNKNOWN bits, respectively.

3.3.1. 1-Round Description of IIoTBC-A

Consider a one-round division trail of IIoTBC-A, denoted as ( a 0 i , , a 63 i ) ( a 0 i + 1 , , a 63 i + 1 ) . IIoTBC-A utilizes an eight-branch generalized Feistel structure, and thus the first modeling step addresses the COPY operation for the four left branches. The outputs of this COPY operation serve as inputs to the round function f 1 and the permutations (PA1 or PA2), guiding the division property propagation. This is represented by the set of following equations:
L 1 : a j i b j i c j i = 0 , where j { 0 , , 7 , 16 , , 23 , 32 , , 39 , 48 , , 55 } .
Here, b j i and c j i correspond to the inputs for the round function f 1 and the permutations, respectively. The function f 1 in IIoTBC-A consists of two parallel S-boxes coupled with a left rotation. The division trails for these S-boxes are calculated as detailed in Section 3.2 and modeled through a series of linear inequalities. Considering the presence of four parallel instances of f 1 in IIoTBC-A, we introduce 10 inequalities for each S-box, leading to a total of 10 × 8 = 80 inequalities for the eight S-boxes, collectively denoted as L 2 . The output of the S-boxes is denoted by d j i , and the division trails for these eight S-boxes are defined as
L 2 : ( b j i , b j + 1 i , b j + 2 i , b j + 3 i ) S-box ( d j i , d j + 1 i , d j + 2 i , d j + 3 i ) where j { 0 , 4 , 16 , 20 , 32 , 36 , 48 , 52 } .
Post-processing through four instances of f 1 involves an XOR operation with the four right branches, integrated with the left rotation of f 1 . The output of this XOR operation then becomes the input for the permutation, leading to the following division propagation model:
L 3 : a j i + d j 7 i c j i = 0 , where j { 8 , , 14 , 24 , , 30 , 40 , , 46 , 56 , , 62 } a j i + d j 15 i c j i = 0 , where j { 15 , 31 , 47 , 63 } .
The permutation layers in IIoTBC-A (PA1 and PA2) simply permute the bits, thereby transforming the vector coordinates ( c 0 i , , c 63 i ) coordinates ( a 0 i + 1 , , a 63 i + 1 ) .
Consequently, we have formulated a linear inequality system to characterize the division propagation in one round of IIoTBC-A. Iteratively applying this model for r rounds constructs a comprehensive linear inequality system. Integrating a given initial division property D k 1 , 64 into this system allows us to use Gurobi to assess the potential existence of an integral distinguisher.

3.3.2. Distinguisher of IIoTBC-A

The longest integral distinguisher that we found for IIoTBC-A is 14 rounds, and the number of chosen plaintexts is 2 63 . Some distinguishers are listed as follows, where C 1 A 7 represents that there is a one-bit CONSTANT in an arbitrary position of these eight bits and that the other seven bits are ACTIVE.
( C 1 A 7 A 8 , A 16 , A 16 , A 16 ) 14 Round ( U 16 , U 8 B 8 , U 8 B 8 , U 8 B 8 )
( A 16 , C 1 A 7 A 8 , A 16 , A 16 ) 14 Round ( U 8 B 8 , U 8 B 8 , U 8 B 8 , U 16 )
( A 16 , A 16 , C 1 A 7 A 8 , A 16 ) 14 Round ( U 8 B 8 , U 8 B 8 , U 16 , U 8 B 8 )
( A 16 , A 16 , A 16 , C 1 A 7 A 8 ) 14 Round ( U 8 B 8 , U 16 , U 8 B 8 , U 8 B 8 )

3.3.3. 1-Round Description of IIoTBC-B

Consider the scenario of a one-round division trail in IIoTBC-B. Analogous to IIoTBC-A, IIoTBC-B is structured upon a four-branch Feistel architecture. The initial phase involves the modeling of the COPY operation, which is represented by the set of following equations:
L 1 : a j i b j i c j i = 0 , where j { 0 , , 7 , 16 , , 23 , 32 , , 39 , 48 , , 55 } .
Here, b j i and c j i correspond to the inputs for the round function f 2 and the permutations, respectively. The function f 2 in IIoTBC-B consists of four parallel S-boxes coupled with a left rotation and a right rotation. Considering the presence of two parallel instances of f 2 in IIoTBC-B, we introduce 10 inequalities for each S-box, leading to a total of 10 × 8 = 80 inequalities for the eight S-boxes, collectively denoted as L 2 . The output of the S-boxes is denoted by d j i , and the division trails for these eight S-boxes are defined as
L 2 : ( b j i , b j + 4 i , b j + 16 i , b j + 20 i ) S-box ( d j i , d j + 4 i , d j + 16 i , d j + 20 i ) where j { 0 , 1 , 2 , 3 , 32 , 33 , 34 , 35 } .
Post-processing through two instances of f 2 involves an XOR operation with the two right branches, integrated with the left rotation and right rotation of f 2 . The output of this XOR operation then becomes the input for the permutation, leading to the following division propagation model:
L 31 : a j i + d j 7 i c j i = 0 , where j { 8 , , 14 , 40 , , 46 } a j i + d j 15 i c j i = 0 , where j { 15 , 47 } .
L 32 : a j i + d j 9 i c j i = 0 , where j { 25 , , 31 , 57 , , 62 } a j i + d j 1 i c j i = 0 , where j { 24 , 56 } .
The permutation layers in IIoTBC-B transform the vector coordinates ( c 0 i , , c 63 i ) coordinates ( a 0 i + 1 , , a 63 i + 1 ) . Consequently, we have formulated a linear inequality system to characterize the division propagation in one round of IIoTBC-B.

3.3.4. Distinguisher of IIoTBC-B

Initially, the data complexity was set to 2 63 to identify the longest possible distinguisher. Subsequent experimentation, however, revealed a noteworthy observation: regardless of the number of rounds, even extending to as many as 100, integral distinguishers were consistently discovered. This led to a strategic adjustment in our approach, where the data complexity was reduced to 2 8 . This alteration in methodology culminated in the identification of several distinguishers. Selected results from this investigative process are presented below.
( C 16 , C 16 , C 16 , C 8 A 8 ) 8 Round ( U 16 , U 16 , U 8 B 2 U 2 B 2 U 2 , U 16 )
( C 16 , C 16 , C 16 , A 8 C 8 ) 9 Round ( U 16 , U 16 , U 16 , U 8 B 1 U 1 B 1 U 1 B 1 U 1 B 1 U 1 )
( A 8 C 1 A 7 , C 8 A 8 , A 16 , A 16 ) 17 Round ( U 16 , U 12 B 2 U 2 , U 8 B 8 , U 8 B 8 )
It was observed that when the 16th to 23rd bits remained continuously active, integral distinguishers were invariably identified. This consistent finding underscores the significance of these particular bit positions in the context of the distinguisher’s effectiveness. A comprehensive explanation for this phenomenon is elaborated in Section 5, where we delve into the specifics of this observation and its implications.
( C 16 , A 8 C 8 , C 16 , C 16 ) Always ( B 16 , B 16 , B 16 , B 16 )

4. Key Recovery of IIoTBC-A

In this section, we focus on key recovery attacks for 22-round IIoTBC-A based on the 14-round distinguisher described in Section 3.
  • Integral Distinguisher Utilization. For a set of 2 63 plaintexts, denoted as P, with the form ( C 1 A 7 A 8 , A 16 , A 16 , A 16 ) , the intermediate state after 14 rounds, denoted as x 14 , is of the form ( U 16 , U 8 B 8 , U 8 B 8 , U 8 B 8 ) .
It is well established that once an integral characteristic is identified, it can be employed for a key recovery attack. Let f be the Boolean function representing the mapping from the ciphertext of IIoTBC-A to one of the balanced intermediate bits of x 14 (the output of the integral distinguisher). Our focus is on the following equation:
p P x 14 [ i ] = c C f ( c ) = 0
where x 14 [ i ] is any one balanced bit and C is the corresponding set of ciphertexts encrypted from P. In evaluating this equation, we guess the involved subkey bits used in f and check whether the equation holds. Subkey values that violate this equation are filtered out and discarded, leaving the remaining candidates for the correct subkeys.
  • Data Preparation We selected a set P of 2 63 plaintexts from the structure ( [ C 1 A 7 ] A 8 , A 16 , A 16 , A 16 ) . Each plaintext p i P (for 0 i 2 63 ) undergoes encryption under the 22-round IIoTBC-A algorithm, yielding the corresponding ciphertext denoted as x 22 . The output, corresponding to these specific inputs after 14 rounds of the encryption process, manifests a distinct characteristic ( U 16 , U 8 B 8 , U 8 B 8 , U 8 B 8 ) , wherein 24 bits maintain a balanced state. Capitalizing on this phenomenon, particularly the equilibrium observed in the final 4 bits, we advance into the phases of subkey guessing and recovery.
  • Subkey Guessing. We initiate our analysis from the starting point of x 14 [28–30] and continue to trace forward to determine the positions where key guessing is required. The process of deduction is illustrated in Figure 6, where all the yellow-colored f 1 functions represent the computations required for reverse decryption. The subkeys used in these f 1 functions must either be guessed or deduced.
This process is complemented by considering the structure of the key generation algorithm, and we halt our examination at the round where the total number of guessed key bits is less than 128. The subkey generation is detailed in Appendix A. For rounds 5 to r, the subkey generation method satisfies the following equation:
r e g u = f 3 ( r e g u 4 ) r e g u 5 , for 5 u r
where r e g i is the subkey for the i-th round.
Consequently, the subkeys required for subsequent rounds can be inferred from the subkeys guessed in earlier rounds, implying that not all necessary subkeys require independent guessing. The subkeys for rounds 15, 16, 17, and 18 necessitate guessing. However, starting from round 19, some subkeys can be computed based on those deduced in previous rounds. By integrating the subkey generations algorithm, we start our deduction from round 15 and proceed to identify the subkeys that need to be guessed. The specific subkeys required for each round, along with the positions of the subkeys that need to be guessed, are detailed in Table 2.
For instance, in the case of the 20th round, it is necessary to conjecture the following set of register values:
{ r e g 20 [ i ] i { 0 , 1 , 3 , 4 , 5 , 7 , 8 , 9 , 11 , 12 , 13 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 27 , 28 , 29 , 31 } } ,
whereas the remaining values in the set
{ r e g 20 [ i ] i { 2 , 6 , 10 , 14 , 26 , 30 } }
can be derived using certain subkeys from r e g 16 and r e g 19 , as explained in the following:
r e g 20 [ 2 ] = S ( r e g 16 [ 16 ] , r e g 16 [ 17 ] , r e g 16 [ 18 ] , r e g 16 [ 19 ] ) r e g 19 [ 2 ] r e g 20 [ 6 ] = S ( r e g 16 [ 16 ] , r e g 16 [ 17 ] , r e g 16 [ 18 ] , r e g 16 [ 19 ] ) r e g 19 [ 6 ] r e g 20 [ 10 ] = S ( r e g 16 [ 16 ] , r e g 16 [ 17 ] , r e g 16 [ 18 ] , r e g 16 [ 19 ] ) r e g 19 [ 10 ] r e g 20 [ 14 ] = S ( r e g 16 [ 16 ] , r e g 16 [ 17 ] , r e g 16 [ 18 ] , r e g 16 [ 19 ] ) r e g 19 [ 4 ] r e g 20 [ 26 ] = S ( r e g 16 [ 20 ] , r e g 16 [ 21 ] , r e g 16 [ 22 ] , r e g 16 [ 23 ] ) r e g 19 [ 26 ] r e g 20 [ 30 ] = S ( r e g 16 [ 20 ] , r e g 16 [ 21 ] , r e g 16 [ 22 ] , r e g 16 [ 23 ] ) r e g 19 [ 30 ]
The aggregate number of subkeys that require guessing amounts to 126 bits. Specifically, for the 21-round and 20-round scenarios, the bit counts for the guessed subkeys are 118 and 102, respectively. In the context of the 22-round key, 46 subkeys can be computed based on previously guessed keys, necessitating the use of 46 S-boxes.
  • Verification and Elimination. Let f 1 be the Boolean function representing the mapping from the 22-round ciphertext of IIoTBC-A to the partially balanced intermediate bits of x 14 . After that partial decryption, the x 14 [ 28 ] , x 14 [ 29 ] , and x 14 [ 30 ] should be balanced.
    c C f 1 ( c ) [ i ] = p P x 14 [ i ]
    where i { 28 , 29 , 30 } .
For each ciphertext c C , the procedure involves using the guessed keys to partially decrypt the ciphertexts, transforming the 22-round ciphertext back to its state after the 14th round. This process requires executing 22 instances of f 1 .
The integrity of the decrypted data is then assessed against the expected integral property. Should this property be observed, it suggests the possibility of the guessed key bits being correct. Conversely, if the property does not hold, those key bits are discarded, prompting a new set of guesses. The key space under consideration entails a 126-bit guess.
  • Complexity Analysis. The number of plaintext–ciphertext pairs required to reliably observe the integral property is 2 63 , and the complexity is calculated as 2 63 22-round IIoTBC-A. Each decryption operation, translating the 22-round ciphertext back to its state after the 14th round, necessitates 22 invocations of f 1 . In comparison, a full 22-round encryption process requires 88 instances of f 1 . For the last four rounds, we can conjecture the round key and execute partial decryption, storing the results in a table. The numbers of guessed key bits for these rounds are 32, 32, 32, and 24, with the corresponding requirements of four, four, four, and three instances of f 1 , respectively. Thus, the complexity is calculated as 2 32 × ( 4 / 88 ) × 3 + 2 24 × ( 3 / 88 ) 2 29.1  IIoTBC-A encryptions. This part can be managed using four tables.
For the remaining four rounds, it is only necessary to guess 126 120 bits; the rest of the 46 subkeys can be computed from the subkeys above. The number of f 1 instances in these rounds is seven, resulting in a complexity of 2 6 × 7 / 88  IIoTBC-A encryptions. Therefore, the total complexity is calculated as
2 63 + 2 120 × ( 2 6 × 7 / 88 ) 2 122.3 .

5. Integral Cryptanalysis of Full IIoTBC-B

In Section 3.3, we present our experimental results, which indicate that when the 16th to 23rd bits of the input are ACTIVE, a distinguisher can invariably be found, irrespective of the number of rounds.
( C 16 , A 8 C 8 , C 16 , C 16 ) Always ( B 16 , B 16 , B 16 , B 16 )
To theoretically elucidate and substantiate these results, we will next describe the propagation through two rounds of the IIoTBC-B round function. Here, we denote an 8-bit ACTIVE input as x and an 8-bit constant as C i .
  • Input: Denote the initial input as X 1 = ( C 0 , C 2 , x , C 3 ) | | ( C 4 , C 5 , C 6 , C 7 ) .
  • After S-box and XOR: The output of the first round function is
    ( C 0 , C 1 , A 1 , C 3 1 , C 4 , C 5 , C 6 1 , C 7 1 ) ,
    where A 1 = f 2 ( C 0 , C 1 ) [ 0 : 8 ] x , C 3 1 = f 2 ( C 0 , C 1 ) [ 8 : 16 ] C 3 , C 6 1 = f 2 ( C 4 , C 5 ) [ 0 : 8 ] C 6 , and C 7 1 = f 2 ( C 4 , C 5 ) [ 8 : 16 ] C 7 .
  • Permutation: The output after permutation becomes
    Y 1 = ( C 7 1 , C 1 , A 1 , C 4 , C 3 1 , C 5 , C 6 1 , C 0 ) .
  • Second Round—S-box and XOR: The output after the second-round S-box and XOR operation is
    ( C 7 1 , C 1 , A 2 , C 4 1 , C 3 1 , C 5 , C 6 2 , C 0 1 ) ,
    where A 2 = f 2 ( C 7 1 , C 1 ) [ 0 : 8 ] A 1 , C 4 1 = f 2 ( C 7 1 , C 1 ) [ 8 : 16 ] C 4 , C 6 2 = f 2 ( C 3 1 , C 5 ) [ 0 : 8 ] C 6 1 , and C 0 1 = f 2 ( C 3 1 , C 5 ) [ 8 : 16 ] C 0 .
  • Final Output: The final output after the second permutation step is
    Y 2 = ( C 1 , C 4 1 , A 2 , C 7 1 , C 6 2 , C 3 1 , C 5 , C 0 1 ) .
After two rounds of encryption, the third branch becomes A 2 , which can be expressed as
A 2 = f 2 ( C 7 1 , C 1 ) [ 0 : 8 ] A 1 = f 2 ( C 7 1 , C 1 ) [ 0 : 8 ] f 2 ( C 0 , C 1 ) [ 0 : 8 ] x .
Notably, apart from x, all operations within this branch involve constants or operations between constants, thereby ensuring that the third branch exhaustively explores all 2 8 possible scenarios. As for the other branches, they persistently engage in operations amongst constants, which implies that their outputs also remain CONSTANT. This phenomenon is depicted in Figure 7, where the red lines illustrate the diffusion pattern of the third branch. It is observed that even after two rounds involving PB2 and PB3 operations, the third branch does not diffuse into other branches. Consequently, as long as the eight bits of the third branch are ACTIVE at the input, a distinguisher can consistently be identified, regardless of the number of encryption rounds.

6. Conclusions

This paper has presented a comprehensive cryptanalysis of the IIoTBC algorithm, a cipher paramount in securing industrial IoT environments. Through meticulous research and application of MILP-based automated cryptanalysis, we have successfully unveiled integral distinguishers for both IIoTBC-A and System B, highlighting their respective cryptographic strengths and vulnerabilities.
For IIoTBC-A, the discovery of a 14-round integral distinguisher, followed by a successful 22-round key recovery attack, marks a significant achievement. This finding not only demonstrates the cipher’s susceptibilities but also emphasizes the need for continued vigilance in the design and analysis of cryptographic solutions for IoT systems. The 14-round distinguisher indicates potential weaknesses in the cipher’s structure, which could be exploited in real-world attacks. The subsequent 22-round key recovery further underscores the necessity of evaluating and enhancing the robustness of IIoTBC-A to safeguard sensitive industrial data.
In the case of IIoTBC-B, our identification of a full-round distinguisher represents a substantial advancement in understanding this variant’s security profile. The full-round distinguisher signifies that the entire cipher can be analyzed in a manner that reveals underlying patterns or correlations, which could compromise its security. This discovery is crucial for informing future designs and updates to the IIoTBC-B algorithm, ensuring that it remains a reliable component in IoT security frameworks.
The use of the division property method and MILP-based cryptanalysis in this study has proven to be highly effective. These techniques have allowed for a deeper exploration of the block cipher’s structure and potential security issues, illustrating the power of modern cryptanalytic methods in assessing and enhancing cipher security. By leveraging these advanced methods, we have provided a thorough evaluation of the IIoTBC algorithm, contributing valuable insights that can guide the development of more secure cryptographic solutions for industrial IoT environments.
Moreover, our findings have broader implications for the field of cryptography. They underscore the importance of continuous and rigorous cryptanalysis in the lifecycle of cryptographic algorithms. As the landscape of IoT continues to evolve, so too must the cryptographic methods used to protect it. Our research highlights the necessity for ongoing assessment and innovation to pre-emptively address potential vulnerabilities and ensure the robustness of encryption methods in increasingly complex digital ecosystems.

Author Contributions

Conceptualization, F.L. and Z.S.; data curation, X.L.; formal analysis, F.L. and Z.S.; funding acquisition, C.L.; investigation, J.W.; resources, C.L.; software, F.L. and X.L.; writing—original draft, F.L.; writing—review and editing, F.L., Z.S., X.L. and J.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded in part by the Major Research plan of the National Natural Science Foundation of China, grant number 92167203; in part by the National Natural Science Foundation of China, grant number 62002077; in part by Guangdong Basic and Applied Basic Research Foundation, grant number 2024A1515011492; in part by Guangzhou Science and Technology Plan Project, grant number 2023A03J0119; in part by Guangxi Key Laboratory of Trusted Software, grant number KX202313.

Data Availability Statement

The detailed code for our analysis is available at https://github.com/YoLaughing/integral-attack-for-IIoTBC (accessed on 1 March 2024).

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A. Subkey Generation

The key size of IIoTBC is 128 bits. For the convenience of description, we represent the primary 128-bit keys as k 0 , k 1 , , k 125 , k 126 , k 127 .
The relationship between the registers r e g 1 , r e g 2 , r e g 3 , r e g 4 and the 128-bit keys can be expressed as follows:
r e g 1 = k 0 k 1 k 30 k 31 r e g 2 = k 32 k 33 k 62 k 63 r e g 3 = k 64 k 65 k 94 k 95 r e g 4 = k 96 k 97 k 126 k 127
where ‖ denotes the concatenation of bits.
Registers r e g 1 , r e g 2 , r e g 3 , and r e g 4 are used sequentially for rounds 1 to 4 of the AddRoundkey operation. For rounds 5 to r, the subkey generation method satisfies the following equation:
r e g u = f 3 ( r e g u 4 ) r e g u 5 , for 5 u r
where r e g i is the subkey for the i-th round, and ⊕ denotes the bitwise XOR operation.
The f 3 function, which is part of the subkey generation process, includes a P 3 permutation and a 4 × 4 S-box permutation.
Figure A1. The operation process of f 3 .
Figure A1. The operation process of f 3 .
Mathematics 12 01696 g0a1

References

  1. Wilamowski, B.M.; Irwin, J.D. Industrial Communication Systems; CRC Press: Boca Raton, FL, USA, 2016. [Google Scholar]
  2. Khalid, H.; Hashim, S.J.; Ahmad, S.M.S.; Hashim, F.; Chaudhary, M.A. SELAMAT: A new secure and lightweight multi-factor authentication scheme for cross-platform industrial IoT systems. Sensors 2021, 21, 1428. [Google Scholar] [CrossRef] [PubMed]
  3. Yitian, G.; Liquan, C.; Tianyang, T.; Yuan, G.; Qianye, C. Post-quantum encryption technology based on BRLWE for internet of things. Chin. J. Netw. Inf. Secur. 2022, 8, 140. [Google Scholar] [CrossRef]
  4. Smith, J.; Doe, J. Advances in Industrial IoT Security. IEEE Trans. Ind. Inform. 2018, 14, 3550–3561. [Google Scholar]
  5. Johnson, M.; Lee, R. A Survey on IIoT Architectures and Applications. J. Netw. Comput. Appl. 2020, 150, 102481. [Google Scholar]
  6. Wang, A.; Zhang, B. Machine Learning in IIoT Systems. In Proceedings of the International Conference on IoT, Changsha, China, 21–23 August 2022; ACM: New York, NY, USA, 2019; pp. 765–770. [Google Scholar]
  7. Brown, D.; Green, E. IIoT and the Future of Smart Manufacturing. In Emerging Trends in IoT; Springer: Berlin/Heidelberg, Germany, 2021; pp. 101–120. [Google Scholar]
  8. Lee, K. IIoT in Industry 4.0: Challenges and Opportunities. In Technical Report IIC-WP-07-2017; Industrial Internet Consortium: Boston, MA, USA, 2017. [Google Scholar]
  9. Kuang, J.; Guo, Y.; Li, L. IIoTBC: A Lightweight Block Cipher for Industrial IoT Security. KSII Trans. Internet Inf. Syst. 2023, 17, 97–119. [Google Scholar]
  10. Daemen, J.; Knudsen, L.R.; Rijmen, V. The Block Cipher Square. In FSE’97; Biham, E., Ed.; Springer: Berlin/Heidelberg, Germany, 1997; Volume 1267, pp. 149–165. [Google Scholar] [CrossRef]
  11. Knudsen, L.R.; Wagner, D. Integral Cryptanalysis. In FSE 2002; Daemen, J., Rijmen, V., Eds.; Springer: Berlin/Heidelberg, Germany, 2002; Volume 2365, pp. 112–127. [Google Scholar] [CrossRef]
  12. Cui, T.; Sun, L.; Chen, H.; Wang, M. Statistical Integral Distinguisher with Multi-structure and Its Application on AES. In ACISP 17, Part I; Pieprzyk, J., Suriadi, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2017; Volume 10342, pp. 402–420. [Google Scholar]
  13. Wang, M.; Cui, T.; Chen, H.; Sun, L.; Wen, L.; Bogdanov, A. Integrals Go Statistical: Cryptanalysis of Full Skipjack Variants. In FSE 2016; Peyrin, T., Ed.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9783, pp. 399–415. [Google Scholar] [CrossRef]
  14. Xiang, Z.; Zhang, W.; Lin, D. On the Division Property of Simon48 and Simon64. In IWSEC 16; Ogawa, K., Yoshioka, K., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9836, pp. 147–163. [Google Scholar] [CrossRef]
  15. Wang, Q.; Hao, Y.; Todo, Y.; Li, C.; Isobe, T.; Meier, W. Improved Division Property Based Cube Attacks Exploiting Algebraic Properties of Superpoly. In CRYPTO 2018, Part I; Shacham, H., Boldyreva, A., Eds.; Springer: Berlin/Heidelberg, Germany, 2018; Volume 10991, pp. 275–305. [Google Scholar] [CrossRef]
  16. Hao, Y.; Leander, G.; Meier, W.; Todo, Y.; Wang, Q. Modeling for Three-Subset Division Property Without Unknown Subset—Improved Cube Attacks Against Trivium and Grain-128AEAD. In EUROCRYPT 2020, Part I; Canteaut, A., Ishai, Y., Eds.; Springer: Berlin/Heidelberg, Germany, 2020; Volume 12105, pp. 466–495. [Google Scholar] [CrossRef]
  17. Todo, Y. Structural Evaluation by Generalized Integral Property. In EUROCRYPT 2015, Part I; Oswald, E., Fischlin, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9056, pp. 287–314. [Google Scholar] [CrossRef]
  18. Boura, C.; Canteaut, A. Another View of the Division Property. In CRYPTO 2016, Part I; Robshaw, M., Katz, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9814, pp. 654–682. [Google Scholar] [CrossRef]
  19. Todo, Y.; Morii, M. Bit-Based Division Property and Application to Simon Family. In FSE 2016; Peyrin, T., Ed.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9783, pp. 357–377. [Google Scholar] [CrossRef]
  20. Sun, L.; Wang, W.; Wang, M. Automatic Search of Bit-Based Division Property. In ASIACRYPT 2017, Part I; Takagi, T., Peyrin, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2017; Volume 10624, pp. 128–157. [Google Scholar] [CrossRef]
  21. Zhang, W.; Rijmen, V. Division cryptanalysis of block ciphers with a binary diffusion layer. IET Inf. Secur. 2019, 13, 87–95. [Google Scholar] [CrossRef]
  22. Sun, L.; Wang, W.; Wang, M.Q. MILP-aided bit-based division property for primitives with non-bit-permutation linear layers. IET Inf. Secur. 2020, 14, 12–20. [Google Scholar] [CrossRef]
  23. Hu, K.; Wang, Q.; Wang, M. Finding Bit-Based Division Property for Ciphers with Complex Linear Layer. Cryptology ePrint Archive, Report 2020/547. 2020. Available online: https://eprint.iacr.org/2020/547 (accessed on 10 October 2023).
  24. Hebborn, P.; Lambin, B.; Leander, G.; Todo, Y. Lower Bounds on the Degree of Block Ciphers. In ASIACRYPT 2020, Part I; Moriai, S., Wang, H., Eds.; Springer: Berlin/Heidelberg, Germany, 2020; Volume 12491, pp. 537–566. [Google Scholar] [CrossRef]
  25. Xu, Z. Further accelerating the search of differential characteristics based on the SAT method. Chin. J. Netw. Inf. Secur. 2022, 8, 129. [Google Scholar]
  26. Hebborn, P.; Lambin, B.; Leander, G.; Todo, Y. Strong and Tight Security Guarantees Against Integral Distinguishers. In ASIACRYPT 2021, Part I; Tibouchi, M., Wang, H., Eds.; Springer: Berlin/Heidelberg, Germany, 2021; Volume 13090, pp. 362–391. [Google Scholar] [CrossRef]
  27. Fu, K.; Wang, M.; Guo, Y.; Sun, S.; Hu, L. MILP-Based Automatic Search Algorithms for Differential and Linear Trails for Speck. In FSE 2016; Peyrin, T., Ed.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9783, pp. 268–288. [Google Scholar] [CrossRef]
  28. Sajadieh, M.; Vaziri, M. Using MILP in Analysis of Feistel Structures and Improving Type II GFS by Switching Mechanism. In INDOCRYPT 2018; Chakraborty, D., Iwata, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2018; Volume 11356, pp. 265–281. [Google Scholar] [CrossRef]
  29. Zhang, Y.; Sun, S.; Cai, J.; Hu, L. Speeding up MILP Aided Differential Characteristic Search with Matsui’s Strategy. In ISC 2018; Chen, L., Manulis, M., Schneider, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2018; Volume 11060, pp. 101–115. [Google Scholar] [CrossRef]
  30. Liu, Y.; Xiang, Z.; Chen, S.; Zhang, S.; Zeng, X. A Novel Automatic Technique Based on MILP to Search for Impossible Differentials. In ACNS 23, Part I; Tibouchi, M., Wang, X., Eds.; Springer: Berlin/Heidelberg, Germany, 2023; Volume 13905, pp. 119–148. [Google Scholar] [CrossRef]
  31. Zhou, C.; Zhang, W.; Ding, T.; Xiang, Z. Improving the MILP-based Security Evaluation Algorithm against Differential/Linear Cryptanalysis Using A Divide-and-Conquer Approach. IACR Trans. Symm. Cryptol. 2019, 2019, 438–469. [Google Scholar] [CrossRef]
  32. Rohit, R.; AlTawy, R.; Gong, G. MILP-Based Cube Attack on the Reduced-Round WG-5 Lightweight Stream Cipher. In Proceedings of the 16th IMA International Conference on Cryptography and Coding, Oxford, UK, 12–14 December 2017; O’Neill, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2017; Volume 10655, pp. 333–351. [Google Scholar]
  33. ElSheikh, M.; Youssef, A.M. On MILP-Based Automatic Search for Bit-Based Division Property for Ciphers with (Large) Linear Layers. In ACISP 21; Baek, J., Ruj, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2021; Volume 13083, pp. 111–131. [Google Scholar] [CrossRef]
  34. ElSheikh, M.; Abdelkhalek, A.; Youssef, A.M. On MILP-Based Automatic Search for Differential Trails Through Modular Additions with Application to Bel-T. In AFRICACRYPT 19; Buchmann, J., Nitaj, A., Rachidi, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11627, pp. 273–296. [Google Scholar] [CrossRef]
  35. Wang, S.; Hu, B.; Guan, J.; Zhang, K.; Shi, T. MILP-aided Method of Searching Division Property Using Three Subsets and Applications. In ASIACRYPT 2019, Part III; Galbraith, S.D., Moriai, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11923, pp. 398–427. [Google Scholar] [CrossRef]
  36. Zhu, B.; Dong, X.; Yu, H. MILP-Based Differential Attack on Round-Reduced GIFT. In CT-RSA 2019; Matsui, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11405, pp. 372–390. [Google Scholar] [CrossRef]
  37. Todo, Y. Integral Cryptanalysis on Full MISTY1. In CRYPTO 2015, Part I; Gennaro, R., Robshaw, M.J.B., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9215, pp. 413–432. [Google Scholar] [CrossRef]
  38. Xiang, Z.; Zhang, W.; Bao, Z.; Lin, D. Applying MILP Method to Searching Integral Distinguishers Based on Division Property for 6 Lightweight Block Ciphers. In ASIACRYPT 2016, Part I; Cheon, J.H., Takagi, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 10031, pp. 648–678. [Google Scholar] [CrossRef]
  39. Todo, Y. Integral Cryptanalysis on Full MISTY1. J. Cryptol. 2017, 30, 920–959. [Google Scholar] [CrossRef]
  40. Sun, S.; Hu, L.; Wang, M.; Wang, P.; Qiao, K.; Ma, X.; Shi, D.; Song, L.; Fu, K. Towards Finding the Best Characteristics of Some Bit-oriented Block Ciphers and Automatic Enumeration of (Related-Key) Differential and Linear Characteristics with Predefined Properties. Cryptology ePrint Archive, Report 2014/747. 2014. Available online: https://eprint.iacr.org/2014/747 (accessed on 10 October 2023).
Figure 1. The encryption process of IIoTBC-A.
Figure 1. The encryption process of IIoTBC-A.
Mathematics 12 01696 g001
Figure 2. The round function f 1 of IIoTBC-A.
Figure 2. The round function f 1 of IIoTBC-A.
Mathematics 12 01696 g002
Figure 3. The encryption process of IIoTBC-B.
Figure 3. The encryption process of IIoTBC-B.
Mathematics 12 01696 g003
Figure 4. The round function f 2 of IIoTBC-B.
Figure 4. The round function f 2 of IIoTBC-B.
Mathematics 12 01696 g004
Figure 5. The PB1, PB2, and PB3 of IIoTBC-B.
Figure 5. The PB1, PB2, and PB3 of IIoTBC-B.
Mathematics 12 01696 g005
Figure 6. Key recovery of 22-round System A.
Figure 6. Key recovery of 22-round System A.
Mathematics 12 01696 g006
Figure 7. Two-round encryption process of IIoTBC-B.
Figure 7. Two-round encryption process of IIoTBC-B.
Mathematics 12 01696 g007
Table 1. Definition of notation.
Table 1. Definition of notation.
NotationDefinition
F 2 n the n-bit string over F 2
Z the integer ring
Z n the set of all n-dimensional vectors with coordinates over Z
a [ i ] the i-th bit of a
w t ( a ) the Hamming weight of a calculated by w t ( a ) = i = 0 n 1 a [ i ]
A s s successive active bits
C s s successive constant bits
B s s successive balanced bits
U s s successive unknown bits
Table 2. The position of guessing subkey in 15 to 22 rounds.
Table 2. The position of guessing subkey in 15 to 22 rounds.
RoundGuessing SubkeyComputed Subkey
1528, 29, 30, 31
1616, 17, 18, 19, 20, 21, 22, 23
178, 9, 10, 11, 12, 13, 14, 15, 24, 25, 26, 27, 28, 29, 30, 31
180, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23
190, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 24, 25, 26, 27, 28, 29, 30, 31
200, 1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 29, 312, 6, 10, 14, 26, 30
210, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 301, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31
223, 7, 11, 15, 19, 23, 27, 310, 1, 2, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 17, 18, 20, 21, 22, 24, 25, 26, 28, 29, 30
Sum12646
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

Liu, F.; Sun, Z.; Luo, X.; Li, C.; Wan, J. Integral Cryptanalysis of Reduced-Round IIoTBC-A and Full IIoTBC-B. Mathematics 2024, 12, 1696. https://doi.org/10.3390/math12111696

AMA Style

Liu F, Sun Z, Luo X, Li C, Wan J. Integral Cryptanalysis of Reduced-Round IIoTBC-A and Full IIoTBC-B. Mathematics. 2024; 12(11):1696. https://doi.org/10.3390/math12111696

Chicago/Turabian Style

Liu, Fen, Zhe Sun, Xi Luo, Chao Li, and Junping Wan. 2024. "Integral Cryptanalysis of Reduced-Round IIoTBC-A and Full IIoTBC-B" Mathematics 12, no. 11: 1696. https://doi.org/10.3390/math12111696

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop