Previous Article in Journal
Category-Native Solomonoff Approximation: From Algorithmic Geometry to Kernels, Operators, and Induction
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Improved Differential Cryptanalysis of the Ultra-Lightweight Block Cipher PICO

1
College of Computer Science and Engineering, Guilin University of Technology, Guilin 541006, China
2
Guangxi Key Laboratory of Embedded Technology and Intelligent System, Guilin 541006, China
*
Author to whom correspondence should be addressed.
Entropy 2026, 28(9), 1006; https://doi.org/10.3390/e28091006
Submission received: 24 July 2026 / Revised: 6 September 2026 / Accepted: 7 September 2026 / Published: 8 September 2026
(This article belongs to the Section Information Theory, Probability and Statistics)

Abstract

PICO is an ultra-lightweight substitution–permutation network block cipher designed for resource-constrained devices such as Internet of Things terminals and edge agents. For fixed endpoints, summing the characteristic probabilities over an enumerated finite weight window gives a verifiable lower bound on the differential probability. We use a PICO-specific workflow that combines mixed-integer linear programming bounds on active substitution boxes, exact-weight Boolean satisfiability search, optional Matsui pruning, and fixed-endpoint enumeration. For the selected endpoints, enumeration over W = 63 , , 76 and W = 66 , , 79 gives finite-window lower bounds of 2 59.95 and 2 61.95 for 21 and 22 rounds, respectively. We prepend two rounds and append three rounds to the 21-round differential distinguisher. The resulting 26-round analysis is an analytical equivalent-round-key filtering-and-ranking procedure for a 108-bit tuple. The verified 21-round finite-window probability input is a factor of 2 0.8032 1.745 larger than the previously reported input, increasing the expected right-tuple support at fixed S under the analytical accounting. For the illustrative choice S = 2 42 , the analytical resources are D = 2 62 chosen plaintexts, a normalized substitution-box filtering workload of T = 2 100.11 equivalent 26-round encryptions, and M = 2 62 stored plaintext–ciphertext records. This setting is not tied to a demonstrated success probability and does not establish an equal-success complexity advantage over prior work.

1. Introduction

With the proliferation of artificial intelligence (AI), edge agents are increasingly deployed in physical environments, where limited computation, storage, and energy budgets are typically encountered. Under such resource constraints, traditional cryptographic primitives of high complexity are rendered inapplicable for direct deployment. Consequently, lightweight block ciphers are regarded as a viable alternative for these constrained environments. PRESENT [1], GIFT [2], and SKINNY [3] are representative lightweight substitution–permutation network (SPN) block ciphers with efficient hardware and software implementations. LBlock [4] is a representative lightweight Feistel cipher, whereas LLBC [5] was designed for low-latency applications. PICO [6] is an ultra-lightweight block cipher proposed by Bansod et al. with a block length of 64 bits and a key length of 128 bits. It has a low hardware cost and can be implemented efficiently in both software and hardware.
Differential cryptanalysis [7] is recognized as a fundamental tool for block cipher security evaluation. A differential characteristic specifies one complete sequence of intermediate differences. The complete differential hull for fixed input and output differences is the set of all such characteristics, and its differential probability is the sum of their probabilities [8]. The central principle is that both the data requirement and the success probability of a key-recovery attack depend on the differential probability. The clustering effect of differential characteristics has been repeatedly demonstrated in the cryptanalysis of lightweight ciphers. For example, the analysis of SIMON and SIMECK by Leurent et al. [9] shows that accounting for this effect can noticeably change the number of rounds that can be attacked and reduce the attack complexity. However, a complete differential hull can contain prohibitively many characteristics, so practical enumeration often uses a finite weight window. The sum over a verified window is a lower bound on the differential probability for the same endpoints. Enlarging the verified window adds explicitly counted contributions and produces a larger lower bound.
Currently, the automated search for differential characteristics relies on two types of models. The first is Mixed-Integer Linear Programming (MILP). Mouha et al. [10] used it to search for the number of active substitution boxes (S-boxes). Sun et al. [11] refined the model to the bit level and obtained both a lower bound on the number of active S-boxes and best differential characteristics. The other popular model is Boolean Satisfiability (SAT) or Satisfiability Modulo Theories (SMT). Mouha and Preneel [12] used SAT to search for differential characteristics of an addition–rotation–exclusive OR (ARX) structure, where XOR denotes exclusive OR. Kölbl et al. [13] applied SAT to search for the differential and linear characteristics of the SIMON family. Furthermore, Sun et al. [14] encoded Matsui’s bounding conditions as Boolean constraints to accelerate the search. MILP and SAT models have advantages in different respects. Bounds such as the minimum number of active S-boxes are readily obtained by MILP, whereas the search for best characteristics under Differential Distribution Table (DDT) constraints becomes increasingly expensive as the number of rounds grows. The SAT model allows a precise description of differential propagation, but bounds are not derived as quickly. It requires an iterative search from low weights, and the search efficiency decreases significantly as the number of rounds increases. Taka et al. [15] proposed a divide-and-conquer SAT framework that combines MILP preprocessing with SAT to search efficiently for optimal differential and linear characteristics, and evaluated the clustering effect for several ciphers by enumerating characteristics with fixed endpoints. However, they did not extend the enumeration of characteristics contributing to PICO differentials to higher weights or use it to mount a key-recovery attack. Kim et al. [16] instead searched for differential distinguishers tailored to key-recovery attacks and exploited the clustering effect to raise the probability of the distinguisher: for PIPO-64-128, they substantially reduced the time complexity while keeping the number of attacked rounds at nine. For PIPO-64-256, they gave a 13-round differential attack, two rounds more than the previous 11-round attack.
The security of PICO has been extensively studied. In [17], a branch-and-bound search was conducted, and a 21-round differential characteristic with at least 24 active S-boxes and probability 2 63 was reported. Ma et al. [18] carried out zero-correlation linear cryptanalysis on PICO, and seven-round multidimensional zero-correlation characteristics were constructed. They mounted a key-recovery attack on 10-round PICO. Shi et al. [19] used MILP to analyze the differential and linear characteristics of PICO, reproduced the reported 21-round differential characteristic mentioned above, and reported several additional characteristics of the same probability together with linear characteristics, but did not mount a key-recovery attack. Wang et al. [20] used a SAT model to sum the probabilities of differential characteristics with the same endpoints. They reported finite-window lower bounds of 2 60.75 and 2 62.39 for the 21-round and 22-round differential probabilities, respectively, and used the 21-round result in a 26-round key-recovery analysis with data, time, and memory complexities of 2 63 , 2 101.11 , and  2 63 , respectively. Ref. [20] enumerated the selected 21-round fixed-endpoint differential through W 66 . We extend this verified window and examine how the additional weight layers increase the finite-window lower bound and the expected right-tuple support at fixed S. Here, “improved” refers to the larger verified finite-window lower bound and the increased expected right-tuple support at fixed S under the common analytical accounting. It does not denote an improved complete master-key recovery or an equal-success complexity advantage.
In this paper, we construct a PICO-specific MILP–SAT workflow and use it to re-evaluate PICO’s resistance to differential cryptanalysis. For PICO, MILP first provides active-S-box lower bounds that narrow the candidate range. SAT then tests exact-weight subinstances under the DDT constraints. After the input and output differences are fixed, the subinstances are partitioned by total weight and active-S-box count, and complete characteristics are blocked one by one within each retained layer. The main contributions are as follows.
  • We construct a PICO-specific MILP–SAT workflow. MILP supplies active-S-box lower bounds, while SAT tests disjoint exact-weight and active-count subinstances under the DDT constraints. With fixed endpoints, complete characteristics are blocked individually and their contributions are aggregated by weight. Our methodological contribution is the PICO-specific integration of these established components into a workflow that yields auditable characteristic searches and finite-window probability sums.
  • For selected 21- and 22-round endpoint pairs, we extend the verified enumeration windows from the intermediate cutoffs W 66 and W 70 , respectively, to matched 14-layer windows ending at W = 76 and W = 79 . The resulting finite-window lower bounds increase from 2 60.75 to 2 59.95 and from 2 62.39 to 2 61.95 .
  • We use the larger verified 21-round finite-window lower bound as the probability input for filtering-and-ranking equivalent-round-key candidates, following Ref. [20]. We prepend two rounds and append three rounds around the 21-round differential to form the 2 + 21 + 3 procedure for a 108-bit equivalent-round-key tuple. For S plaintext structures, we derive the data amount D = S · 2 20 , the normalized S-box filtering workload T = S · 2 58.106 , and the plaintext–ciphertext-record storage M = S · 2 20 . At the illustrative setting S = 2 42 , these quantities are 2 62 , 2 100.11 , and  2 62 , respectively. This setting is not tied to a demonstrated success probability. These values do not represent a comparison with Ref. [20] at the same success probability.
The remainder of this paper is organized as follows. Section 2 describes the PICO cipher. Section 3 presents the PICO-specific MILP–SAT workflow. Section 4 introduces the differential-characteristic search and the analytical equivalent-round-key filtering-and-ranking procedure for 26-round PICO, and Section 5 concludes the paper.

2. The PICO Cipher

This section describes the encryption procedure and key schedule of PICO.

2.1. Notation

The main notation used in this paper is listed in Table 1.

2.2. Encryption Procedure

The block length of PICO is 64 bits, the key length is 128 bits, and the number of rounds is 32. Its 64-bit state is arranged in a 4 × 16 matrix, as shown in (1).
P = p 0 , 15 p 0 , 14 p 0 , 13 p 0 , 2 p 0 , 1 p 0 , 0 p 1 , 15 p 1 , 14 p 1 , 13 p 1 , 2 p 1 , 1 p 1 , 0 p 2 , 15 p 2 , 14 p 2 , 13 p 2 , 2 p 2 , 1 p 2 , 0 p 3 , 15 p 3 , 14 p 3 , 13 p 3 , 2 p 3 , 1 p 3 , 0 .
We use zero-based global bit indices and define p i , j = p 16 i + j for 0 i < 4 and 0 j < 16 . Within each 16-bit row word, j = 0 denotes the least-significant bit. Hence, row i is written as p i , 15 p i , 0 . The same convention is used for hexadecimal differences and key-bit positions throughout the paper.
The encryption procedure of PICO is shown in Figure 1. Starting from the plaintext P, for each round r = 0 , 1 , , 31 , the state is XORed with the round key K r , passed through the S-box layer, and then permuted by P L . After the 32 rounds, the resulting state is XORed with the post-whitening key K 32 to produce the ciphertext C.
(1)
Round Key Addition
The state matrix is XORed bitwise with the round subkey.
(2)
S-box Substitution
The S-box transformation is applied to each column of the state matrix. For column j, the S-box input is ( p 3 , j     p 2 , j     p 1 , j     p 0 , j ) and the output is ( q 3 , j     q 2 , j     q 1 , j     q 0 , j ) . The S-box lookup table is given in Table 2 (in hexadecimal).
(3)
Permutation Layer
The permutation layer is a bit-level linear operation, denoted by P L . For example, p 0 , 0 p 0 , 10 means that the bit in row 0, column 0 of the state matrix is moved to row 0, column 10 of the new state matrix. The permutation layer of PICO is shown in Table 3.

2.3. Key Schedule

Denote the 128-bit master key by K = k 127 k 126 k 1 k 0 , its left 64 bits by L 1 = k 127 k 126 k 65 k 64 , and its right 64 bits by K 0 = k 63 k 62 k 1 k 0 , where K 0 is the round key of the first round. The remaining subkeys K 1 through K 32 are generated iteratively as follows ( 0 r 31 ):
L 2 = ( K r ( L 1 3 ) ) L 1 ,
K r + 1 = ( L 2 ( K r 7 ) ) r ,
L 1 = L 2 .
This schedule generates 33 64-bit subkeys K 0 , K 1 , , K 32 in total, where K 0 through K 31 are the round keys and K 32 is the whitening key applied after the final round. Like the initial state matrix, each 64-bit round subkey is arranged in a 4 × 16 matrix, as shown in (5).
K i = k 0 , 15 k 0 , 14 k 0 , 13 k 0 , 2 k 0 , 1 k 0 , 0 k 1 , 15 k 1 , 14 k 1 , 13 k 1 , 2 k 1 , 1 k 1 , 0 k 2 , 15 k 2 , 14 k 2 , 13 k 2 , 2 k 2 , 1 k 2 , 0 k 3 , 15 k 3 , 14 k 3 , 13 k 3 , 2 k 3 , 1 k 3 , 0 .
In single-key differential cryptanalysis, XOR with a round subkey does not alter differential propagation. Therefore, only the S-box layer and the bit-permutation layer are modeled in later sections.

3. PICO-Specific MILP–SAT Workflow for Differential Cryptanalysis

MILP optimizes an objective function subject to a set of linear constraints and can be solved by solvers such as Gurobi. SAT decides whether a given formula in Conjunctive Normal Form (CNF) admits a satisfying assignment, and modern solvers such as CaDiCaL can handle large instances efficiently. MILP efficiently computes active-S-box bounds but becomes expensive for minimum-weight characteristic searches under detailed DDT constraints. SAT models differential propagation exactly, but it must test candidate weights iteratively, and lower-weight unsatisfiable (UNSAT) instances become more costly as the round count grows. This section presents a PICO-specific workflow that combines MILP active-S-box bounds, exact-weight SAT subinstances, optional Matsui pruning, and fixed-endpoint characteristic enumeration. MILP narrows the candidate range, SAT tests whether a characteristic exists at each retained weight, and fixed-endpoint SAT enumeration supplies the weighted characteristic counts.

3.1. MILP Model for Active-S-Box Bounds

We describe the MILP model used to compute lower bounds on the number of active S-boxes in PICO.
Definition 1.
Let an n-bit difference be Δ = ( Δ 0 , Δ 1 , , Δ n 1 ) . Its corresponding bit activity indicator variables x = ( x 0 , x 1 , , x n 1 ) are defined as follows.
x i = 0 , Δ i = 0 , 1 , Δ i = 1 , 0 i n 1 ,
that is, x i = 1 if and only if the i-th bit of the difference is nonzero (the bit is active).
Definition 2.
Let A t { 0 , 1 } indicate whether the t-th S-box is active.
A t = 1 , the t - th S - box is active , 0 , otherwise .

3.1.1. XOR Operation

For a single-bit difference relation a b = c , a dummy variable d is introduced and the following constraints are imposed:
a + b + c 2 d , d a , d b , d c , a + b + c 2 .
Here d is a dummy variable used to ensure that the number of ones among a, b, and c is even. The constraints thus model the feasible differential propagation of a b = c and rule out impossible combinations of values.

3.1.2. S-Box Activity Constraints

For the t-th S-box with w input bits and v output bits, let x t , k in { 0 , 1 } denote the activity indicator of its k-th input bit, where 0 k w 1 . Then A t = 1 if and only if these input bits are not all zero, which can be expressed as
A t x t , k in 0 , k { 0 , , w 1 } , k = 0 w 1 x t , k in A t 0 .
The first w constraints guarantee that A t = 1 whenever any x t , k in = 1 . The last constraint forces A t = 0 when x t , k in = 0 for all k.

3.1.3. The Inequality Description of the DDT

To characterize all feasible differential propagations through the S-box, we use SageMath 9.2 to represent the feasible DDT patterns as m inequalities.
j = 0 n 1 α i , j x j + α i , n 0 , i = 0 , 1 , , m 1 .
Here, n = w + v x 0 , , x w 1 and x w , , x n 1 are the input- and output-bit activity indicators of the S-box, respectively. The coefficients α i , j are generated by SageMath. Sun et al. used a greedy algorithm to remove redundant inequalities from the convex hull [11]. Sasaki et al. proposed a more compact inequality-reduction algorithm [21], which removes more redundant inequalities and reduces the number of constraints.

3.1.4. The Objective Function

For the R-round model, let x p ( r ) and s p ( r ) ( 0 r < R , 0 p < 64 ) denote the input- and output-difference bits, respectively, of the S-box layer in round r. Let x ( R ) denote the output difference after the permutation of the final round. The S-box inequalities are imposed on the four input and four output difference bits of S-box k in round r (where 0 r < R and 0 k < 16 ). If  π ( p ) is the output position of bit p under P L , the inter-round linking constraint is x π ( p ) ( r + 1 ) = s p ( r ) for every 0 r < R and 0 p < 64 . Finally, an additional constraint j = 0 63 x j ( 0 ) 1 is added to exclude the all-zero input difference.
The objective is min r = 0 R 1 k = 0 15 A r , k . All constraints are written to a linear programming (LP) file, and the MILP model is solved with the Gurobi optimizer. The resulting minimum objective value is the minimum number of active S-boxes for reduced-round PICO. It should be emphasized that the minimum number of active S-boxes only reflects how many S-boxes are active along a characteristic and is not equal to the optimal characteristic weight. Converting this value into a weight bound and determining the probability of the best differential characteristic requires SAT to search for a valid characteristic.

3.2. SAT Model for Searching Valid Differential Characteristics

An R-round differential characteristic is a sequence of differences C 0 C 1 C R , where C 0 is the plaintext difference and C i is the output difference in round i. The weight of such a characteristic is W = log 2 DP . All differential characteristics with the same input and output differences contribute to the same differential, whose probability is the sum of the probabilities of these characteristics.

3.2.1. Variable Definitions

Let the target number of rounds be R. We introduce the following Boolean variables. For  0 i < R and 0 j < 64 , the variable x j ( i ) is the input difference bit before the S-box layer of round i. The vector x ( R ) is the output difference after the permutation of the final round. Thus, x ( 0 ) and x ( R ) are the input and output differences in the R-round differential characteristic. The variable s j ( i ) ( 0 i R 1 , 0 j < 64 ) is the difference bit after the S-box layer and before the permutation of round i, and  w k ( i ) ( 0 i R 1 , 0 k < 16 ) is the activity indicator of the k-th S-box in round i. In addition, a weight indicator g k ( i ) is introduced for each S-box. The weight of an active S-box of PICO is two or three. We set g k ( i ) = 1 if and only if that S-box has weight three, so that the weight of the S-box is 2 w k ( i ) + g k ( i ) . The S-box in column k takes as input the 4 bits of x ( i ) in the same column.

3.2.2. S-Box Constraints

Let the S-box be an m-bit permutation ( m = 4 for PICO). Let α , β { 0 , 1 } m denote the input and output differences in an S-box, and let w and g be its activity and weight indicators. The DDT of PICO has values in { 0 , 2 , 4 , 16 } , including 159 entries with a value of 0, 72 entries with a value of two, 24 entries with a value of four, and one entry with a value of 16. The value 16 corresponds to weight 0 ( w = 0 , g = 0 ), the value four to weight two ( w = 1 , g = 0 ), and the value two to weight three ( w = 1 , g = 1 ), while the value 0 denotes an impossible propagation. Let A = { ( 16 , 0 , 0 ) , ( 4 , 1 , 0 ) , ( 2 , 1 , 1 ) } denote the set of valid triples. Then all assignments for which ( DDT [ α ] [ β ] , w , g ) A form the set of invalid assignments
F = ( α , β , w , g ) ( DDT [ α ] [ β ] , w , g ) A .
For every invalid assignment ( α , β , w , g ) F , we construct the exclusion clause
c = j = 0 m 1 ( α j , α j * ) j = 0 m 1 ( β j , β j * ) ( w , w * ) ( g , g * ) ,
where ( v , 0 ) = v , ( v , 1 ) = ¬ v , and the superscript ∗ denotes the value of the corresponding component in the invalid assignment. The conjunction of all exclusion clauses describes the possible differential propagation modes of the S-box and their weights, and the Espresso algorithm is used to simplify the clause set.

3.2.3. Permutation Constraints

The permutation layer of PICO is the bit permutation P L (see Table 3). Let π ( p ) denote the output position of input bit p under P L . For  0 i < R and 0 p < 64 , the differential propagation is x π ( p ) ( i + 1 ) = s p ( i ) , which is encoded by the equivalence clauses ( x π ( p ) ( i + 1 ) ¬ s p ( i ) ) ( ¬ x π ( p ) ( i + 1 ) s p ( i ) ) .

3.2.4. Weight and Cardinality Constraints

The total weight of an R-round differential characteristic is Ω = t = 0 16 R 1 ( 2 w t + g t ) , where t ranges over all 16 R S-boxes. The sequential encoding [22] converts a cardinality bound of the form t z t c into CNF. Taking the activity indicators w 0 , , w 16 R 1 as an example, let 1 c < 16 R . The auxiliary variable u i , j ( 0 i 16 R 2 , 0 j c 1 ) indicates that at least j + 1 of the first i + 1 indicators are set to one. When the cumulative number exceeds c, the clause set is not satisfied. The upper bound constraint t w t c is encoded as CNF. The corresponding clause sets are as follows.
( ¬ w 0 u 0 , 0 ) , ( ¬ u 0 , j ) ( 1 j c 1 ) ; ( ¬ w i u i , 0 ) , ( ¬ u i 1 , 0 u i , 0 ) ( 1 i 16 R 2 ) ; ( ¬ w i ¬ u i 1 , j 1 u i , j ) ( 1 i 16 R 2 , 1 j c 1 ) ; ( ¬ u i 1 , j u i , j ) ( 1 i 16 R 2 , 1 j c 1 ) ; ( ¬ w i ¬ u i 1 , c 1 ) ( 1 i 16 R 2 ) ; ( ¬ w 16 R 1 ¬ u 16 R 2 , c 1 ) .
In the released implementation, the sequential counter includes reverse clauses so that its auxiliary variables are exact prefix-sum witnesses. An equality t = 0 n 1 z t = q is imposed by combining the at-most-q counter with an at-least-q condition derived from the final counter. The boundary cases q = 0 and q = n are handled by unit clauses. Exact-cardinality constraints are applied separately to the activity indicators w t and the weight indicators g t , and the search and enumeration are further partitioned by the total number of active S-boxes. For a candidate weight W, since the weight of each active S-box is two or three, the total number A of active S-boxes must satisfy W / 3 A W / 2 . For each integer A in this interval, we fix t w t = A and t g t = W 2 A in the corresponding subinstance with the sequential encoding. Each subinstance is assigned total weight W. All subinstances over feasible A are pairwise disjoint and together form the entire search space at weight W. The active S-box count needed for subsequent Matsui pruning is also derived from A.

3.2.5. Matsui Pruning

Let b ( t ) denote a valid MILP-derived lower bound on the number of active S-boxes in any nonzero t-round PICO differential characteristic, with  b ( 0 ) = 0 . In a given ( W , A ) subinstance, the total number of active S-boxes is fixed exactly to A. To accelerate the search, Matsui pruning can be applied to every consecutive round interval. The portions on the two sides of an interval [ r 1 , r 2 ] require at least b ( r 1 ) and b ( R 1 r 2 ) active S-boxes. The number of active S-boxes σ r 1 , r 2 = i = r 1 r 2 k w k ( i ) satisfies
σ r 1 , r 2 A b ( r 1 ) b ( R 1 r 2 ) .
For every satisfying assignment, a consecutive interval is itself a valid nonzero differential subtrail: the PICO S-box is a permutation, so a nonzero input difference cannot map to a zero output difference, and the bit permutation preserves nonzeroness. Consequently, the nonzero-input, DDT, and permutation constraints, together with the definition of b ( r 2 r 1 + 1 ) , imply σ r 1 , r 2 b ( r 2 r 1 + 1 ) as a semantic property; this relation is not duplicated as a separate Matsui pruning clause. Because the total active count is fixed to A, the lower bounds on the two outside portions yield the displayed upper bound. When this bound is nontrivial, the released function append_matsui_constraint() adds it as an at-most constraint on the interval activity indicators, reusing the sequential counter [14].

3.2.6. Nonzero Constraint

The all-zero solution is excluded by j = 0 63 x j ( 0 ) .

3.2.7. Complete Model

Combining the above constraints, the SAT subinstance for an R-round differential characteristic of weight W with exactly A active S-boxes is
F R , W , A = F Sbox F Perm F Weight F NonZero .
The weight term F Weight fixes t w t = A and t g t = W 2 A (the total weight is Ω = W ). Optional Matsui pruning constraints may be conjoined with the model to accelerate solving. A satisfying assignment returned by the solver corresponds to an R-round differential characteristic of weight W. An unsatisfiable result indicates that this subinstance has no solution.
To enumerate the characteristics contributing to a differential, the input and output differences x ( 0 ) = Δ in and x ( R ) = Δ out are additionally fixed in the above subinstance. For each weight W, every feasible value of A defines a separate CaDiCaL subinstance. A weight layer is called complete only when every relevant subinstance terminates with UNSAT after all decoded characteristics have been blocked. Enumeration is capped at 100,000 characteristics per active-count subinstance; a capped subinstance does not support a completeness claim for that layer. The released driver run_full_enumeration.py invokes pico_fixed_endpoint_closure_csv.py, which imports the CNF construction in Pico-diff-paths-sat4.py together with the exact-weight partitioning in pico_weight_search.py and calls CaDiCaL. This is the implementation chain used to produce the layer counts reported in Section 4.2; the driver rejects a layer if any active-count subinstance is truncated or lacks the terminal UNSAT result. The scripts and retained records are provided in the Supplementary Materials. The recorded software versions are Gurobi Optimizer 13.0.1, CaDiCaL 3.0.0, SageMath 9.2, and Espresso through Logic Friday 1.1.4. No custom search-tuning parameters are set for the primary MILP optimization, and the SAT wrappers invoke CaDiCaL with the CNF filename and no custom solver flags. A fresh end-to-end run completed all 28 reported layers: 14 layers for 21 rounds ( W = 63 , , 76 ) and 14 layers for 22 rounds ( W = 66 , , 79 ). Every layer passed the completeness checks described above. In particular, the 22-round counts at W = 77 , 78 , 79 were obtained by direct enumeration rather than extrapolation.

3.3. PICO-Specific MILP–SAT Workflow

When searching for a minimum-weight differential characteristic with a SAT model alone, lower-weight UNSAT subinstances must be resolved before minimality can be established. Each lower-weight instance must be shown unsatisfiable before the minimum weight can be established, and proving these UNSAT results becomes more costly as the number of rounds grows. In this workflow, MILP supplies the active-S-box lower bound used to initialize the exact-weight SAT search. The minimum number of active S-boxes is not necessarily equal to the minimum characteristic weight. Each active S-box of PICO has weight two or three, so b ( R ) active S-boxes give a weight lower bound of 2 b ( R ) , whereas the optimal weight may be larger. Therefore, MILP first computes b ( R ) , the minimum number of active S-boxes. Then, the SAT model starts from W = 2 b ( R ) . For each candidate weight W, it considers the feasible values of the total number A of active S-boxes and tests whether the corresponding subinstance has a solution. A satisfiable subinstance at weight W yields a feasible characteristic of probability 2 W . It establishes the minimum weight only if every subinstance at every smaller candidate weight has terminated with UNSAT. If all subinstances are unsatisfiable at that W, then W is increased by one and the test continues. The minimum active S-box counts b ( t ) for the other round counts ( 1 t R 1 ) can also be used to construct Matsui pruning bounds that accelerate the search.
The detailed procedure of the PICO-specific workflow is given in Algorithm 1. Line 1 uses MILP to compute the minimum active-S-box count, and Line 2 converts it into a weight lower bound. For each candidate weight W, all feasible active-count values A are tested. A decoded assignment yields a feasible differential characteristic. The returned weight is minimal only when all subinstances at smaller candidate weights have been completely tested and found UNSAT; otherwise, it is reported only as the first retained feasible weight. The characteristic can then supply endpoints for the finite-window enumeration below.
Algorithm 1 MILP–SAT search for a minimum-weight differential characteristic
Input: Number of rounds R; table l b [ 1 R 1 ] of minimum active S-box counts for shorter rounds
Output: First feasible weight W * and characteristic C
  1: b MILP _ LB ( R ) ▹ minimum active S-box count from MILP
  2: W 2 b ▹ weight lower bound: each active S-box has weight 2
  3: while true do
  4:       for  A W / 3  to  W / 2  do
  5:              F BuildSAT ( R , W , A , l b ) ▹ fix w = A , g = W 2 A , optional Matsui ( l b )
  6:             if  SAT ( F ) returns a model τ  then
  7:                    return  ( W , DecodeCharacteristic ( τ ) ) ▹ feasible characteristic
  8:             end if
  9:       end for
10:        W W + 1
11: end while
Once a retained feasible differential characteristic is obtained, its input and output differences ( Δ in , Δ out ) determine a differential. The probability of the differential is the sum of the probabilities of all characteristics with these input and output differences,
Pr ( Δ in Δ out ) = C 1 , , C R 1 Pr ( C 0 C R ) = W W 0 N W · 2 W ,
where N W is the number of differential characteristics of exact weight W, and  W 0 is the minimum weight when all lower-weight subinstances have been completely resolved as UNSAT. A retained feasible weight may instead be used as the lower endpoint of a reported window. Enumeration proceeds level by level from low to high weight. The detailed procedure for enumerating the characteristics contributing to the differential is given in Algorithm 2. For each weight W, a SAT model with fixed input and output differences and fixed total weight is built and solved repeatedly. Each satisfying assignment τ is first decoded into a differential characteristic C. An R-round differential characteristic is uniquely determined by all of its round-boundary differences { x j ( i ) 0 i R , 0 j < 64 } (the intermediate S-box output differences and the activity and weight indicators are all derived from these via the permutation and S-box relations). We take the characteristic-variable set V C = { x j ( i ) } and add to the model the blocking clause to exclude that characteristic.
v V C , τ ( v ) = 0 v v V C , τ ( v ) = 1 ¬ v
The auxiliary variables of the sequential encoding are not in V C and do not take part in the blocking. The same differential characteristic is not counted repeatedly merely because the auxiliary variables take different values. If every relevant active-count subinstance terminates with UNSAT without hitting the cap, repeated solving yields the complete count N W for that retained layer; otherwise the recorded count is explicitly incomplete. The contribution N W · 2 W from each verified layer is then accumulated. As the weight grows, the contribution of a single characteristic decays as 2 W , and the accumulating blocking clauses slow the solver down, so the enumeration is truncated at an upper bound W max . The value obtained over [ W min , W max ] is a finite-window lower bound on the complete differential probability for the same endpoints. Additional valid characteristics outside the retained window can only increase the complete probability. The verified finite-window lower bound is used in the analytical outer-round filtering-and-ranking procedure below.
In the hybrid search model, the table b ( t ) of shorter-round minimum active S-box counts computed by MILP serves two purposes. First, b ( R ) provides the starting weight lower bound 2 b ( R ) for Algorithm 1, reducing the number of low-weight unsatisfiable instances that must be resolved. A minimum-weight conclusion additionally requires complete UNSAT results for every lower candidate weight. Second, the shorter-round values b ( t ) can serve as Matsui pruning bounds in Algorithm 2, accelerating the solution of high-weight subinstances during fixed-endpoint characteristic enumeration. By enumerating subinstances at exact weights, the model counts more valid characteristics under fixed input and output differences and extends the enumeration to higher weights. This enlarges the verified finite-window lower bound for the fixed endpoints.
Algorithm 2 The SAT-based enumeration of differential characteristics contributing to a differential
Input: Number of rounds R; endpoints ( Δ in , Δ out ) ; weight window [ W min , W max ] ; minimum active S-box counts l b
Output: Finite-window lower bound P [ W min , W max ] for the fixed endpoints
  1: P 0
  2: for  W W min  to  W max  do
  3:        N W 0
  4:       for  A W / 3  to  W / 2  do
  5:              F BuildSAT ( R , Δ in , Δ out , W , A , l b ) ▹ fix endpoints, w = A , g = W 2 A ; optional Matsui ( l b )
  6:             while  SAT ( F ) returns a model τ  do
  7:                     C DecodeCharacteristic ( τ ) ; N W N W + 1
  8:                    add to F a blocking clause on the characteristic variables of C
  9:             end while
10:       end for
11:        P P + N W · 2 W N W : number of weight-W characteristics
12: end for
13: return P

4. Finite-Window Differential Analysis and Outer-Round Filtering for 26-Round PICO

This section applies the PICO-specific workflow presented in Section 3. We obtain finite-window lower bounds for the selected 21-round and 22-round endpoint pairs. Finally, we prepend two rounds and append three rounds to the 21-round differential distinguisher to form a 26-round analytical equivalent-round-key filtering-and-ranking procedure for a 108-bit tuple.

4.1. Reported Differential-Characteristic Weights

We give the retained search results for PICO. For 21 rounds, MILP gives a minimum of 24 active S-boxes and hence a weight lower bound of 48. Starting at weight 48, SAT finds a feasible 21-round characteristic of weight 63, with 24 active S-boxes and probability 2 63 . For 22 rounds, MILP gives an active-S-box lower bound of 24; SAT rules out A = 24 and finds a feasible characteristic at A = 25 , thereby establishing a minimum active-S-box count of 25 in the retained search. The retained feasible starting weight for the 22-round characteristic search is 66. A characteristic weight is called minimum only when every lower candidate-weight subinstance has been completely resolved as UNSAT. The reported characteristic weights for PICO over 1–22 rounds are listed in Table 4. Figure 2 shows how these retained weights change with the number of rounds. The reported weight generally rises with the number of rounds. Its average increase is about 3 units per round, although adjacent-round increments fluctuate. The reported weights for 1–3 rounds are two, four, and six, respectively. From 12 rounds onward, the adjacent-round increment is 3–5 weight units, except from 19 to 20 rounds, where it is two. Correspondingly, the probability of the retained characteristic decreases as the round count grows. The 21- and 22-round retained weights marked by red circles are 63 and 66, respectively. These are adopted as enumeration starting points for the corresponding differentials below.

4.2. The 21-Round and 22-Round Fixed-Endpoint Differentials

The model in Section 3 uses the MILP weight lower bound to narrow the SAT search range. In the retained records, SAT yields feasible 21-round characteristics at weight 63. The endpoint selection is heuristic. We rank the retained weight-63 endpoint groups by the total Hamming weight of their input and output differences. Four retained endpoint groups attain the minimum total endpoint Hamming weight of four, with two active bits at each endpoint. Among these tied sparse groups, we fix Δ in = 2000000020000000 and Δ out = 0000000804000000 as the representative used for the subsequent finite-window and outer-round calculations. The retained endpoint-group record also lists the other tied pairs. Having few active bits at the endpoints helps limit the cost of adding rounds before and after the differential distinguisher in the outer-round filtering-and-ranking procedure. We fix this endpoint pair and enumerate the retained window W = 63 , , 76 according to Algorithm 2. The result is a verified finite-window contribution for the 21-round differential. Table 5 gives the retained count at each weight. The fourteen enumerated layers contribute
Pr ( Δ in Δ out ) W = 63 76 N W · 2 W = 68000 2 76 2 59.9468 .
Ref. [20] reported 2 60.75 for the same endpoint pair over W 66 . Extending the verified window through W = 76 gives 68000 / 2 76 2 59.9468 . This is the verified finite-window contribution for the selected fixed endpoints.
For 22 rounds, we use Δ in = 0200000002000000 and Δ out = 0000000804000000 ; the output difference is shared with the 21-round pair. A retained feasible characteristic has weight 66. We enumerate the 14-layer finite window W = 66 , , 79 . Table 6 reports the individual layer counts, whose probability contributions sum to
Pr ( Δ in Δ out ) W = 66 79 N W · 2 W = 136000 2 79 2 61.9468 .
At the intermediate cutoff W 70 , the finite-window lower bound is 2 62.39 ; extending the verified window through W = 79 gives 136000 / 2 79 2 61.9468 . The added layers W = 77 , 78 , 79 were directly enumerated and contain 514, 850, and 1412 characteristics, respectively. In Figure 3, the counts of differential characteristics per weight are compared for the two fixed input and output differences. Within the recorded windows, N W rises monotonically from W = 70 for 21 rounds and from W = 73 for 22 rounds. For 21 rounds, it grows from two at W = 63 to 706 at W = 76 ; for 22 rounds, it grows from 80 at W = 73 to 1412 at W = 79 . The retained 22-round starting weight is 66, three units higher than for 21 rounds. Although the probability of each characteristic decreases as 2 W , the growing number of characteristics makes the cumulative contribution of the higher-weight layers non-negligible and partially offsets this decay. Up to W = 76 , a total of 1856 21-round differential characteristics are enumerated. Up to W = 79 , a total of 3712 22-round differential characteristics are enumerated. Only 12 of the retained 21-round characteristics satisfy W 66 , while layers W = 67–76 contribute 42.78 % of the finite sum through W = 76 . For 22 rounds, layers W = 71–79 contribute 26.21 % of the finite sum through W = 79 . The directly enumerated layers W = 77, 78, and 79 contribute 1.5118 % , 1.2500 % , and 1.0382 % , respectively, or 3.8000 % in total. These percentages quantify the weighted additions within the two verified windows.
Let N R ( W ) denote the number of recorded R-round characteristics of weight W. Completed per-layer enumeration yields the observed equality N 22 ( W ) = 2 N 21 ( W 3 ) for every W = 66 , , 79 . We use this observed equality only as a numerical cross-check, not as a proved structural identity. No 22-round count is generated from the 21-round table. A supplementary bounded short-prefix audit explains the first pair of layers: the weight-63 and weight-66 characteristics share two identical 19-round suffixes, each preceded by one two-round prefix of weight five and two three-round prefixes of weight eight, respectively. Short-prefix multiplicities vary across other interfaces, however, and this local check does not establish a global bijection for the characteristic sets within the stated windows. The probability calculation and per-layer completion checks therefore use the independently enumerated counts, not an assumed structural identity.
Table 7 compares the two finite-window lower bounds at equal relative depths from their respective starting weights. The five rows contain four, eight, 10, 12, and 14 enumerated layers. Thus, the 21-round upper endpoints W = 66 , 70 , 72 , 74 , 76 are paired with the 22-round upper endpoints W = 69 , 73 , 75 , 77 , 79 . Figure 4 traces every completed prefix of each window. At the matched depth of 14 layers, the bounds are 2 59.95 and 2 61.95 , respectively.

4.3. Analytical Equivalent-Round-Key Filtering and Ranking for 26-Round PICO

4.3.1. Differential Distinguisher Extension

The 26-round encryption is split into three parts, E = E f E d E b . Here, E b covers rounds 1∼2, E d is the 21-round differential distinguisher over rounds 3∼23, and E f covers rounds 24∼26. This 21-round differential distinguisher uses the input and output differences given above. The characteristics enumerated over W = 63 , , 76 contribute approximately 2 59.9468 to the fixed-endpoint probability, and this verified finite-window lower bound is used in the analysis below. The difference propagation and the per-round bit conditions are shown in Figure 5. Throughout this procedure, rounds are numbered from one to 26, whereas state and key indices are zero-based. For 0 i 25 , X i denotes the state difference at the input of round i + 1 , before the addition of R K i , and Y i denotes the difference after the S-box layer of the same round and before the permutation. Hence, X i + 1 = P L ( Y i ) . The 26-round version of PICO uses R K 0 , , R K 25 as round keys and R K 26 as the post-whitening key. The equivalent round key E K i is defined by P L ( E K i ) = R K i + 1 .

4.3.2. Analytical Data Accounting

To construct the plaintext structures, we extend the input difference in the distinguisher backward through the two rounds of E b to obtain the plaintext-difference pattern. The plaintext difference X 0 involves 20 designated bit positions. The difference at bit 28 is fixed to one, whereas the differences at the other 19 positions may be either 0 or one. Fixing the remaining 44 plaintext bits to constant values yields a structure of 2 20 plaintexts. Splitting the structure into two halves G 0 and G 1 (each of size 2 19 ) according to the value of bit 28 and pairing across the two halves gives 2 38 pairs. Taking S structures gives S · 2 38 pairs in total, with data complexity D = S · 2 20 . The differential propagation probability over the first two rounds is P b = 2 14 · 2 5 = 2 19 . A pair is a right pair only if it follows the prescribed differential propagation through both E b and E d . Using the verified W = 63 , , 76 contribution as the probability input, the expected number of right pairs supported by the enumerated window is
N win = S · 2 38 · 2 19 · 68000 2 76 S · 2 40.9468 .
The output difference in the distinguisher is then propagated forward through the three rounds of E f to the ciphertext. Under this propagation, 16 ciphertext difference bits are fixed to zero. In the analytical accounting, filtering with these bits requires no key guesses and leaves an expected N F = S · 2 38 · 2 16 = S · 2 22 surviving pairs.
Under the standard wrong-key randomization hypothesis and the assumption that the filtering conditions are approximately independent and uniformly distributed, the probability that a surviving pair casts a false vote for a given wrong tuple is P w 2 67 . The first two rounds provide 19 conditions and the last three rounds provide 48 conditions. Therefore, the average number of votes for one wrong tuple is N wrong = S · 2 22 · 2 67 = S · 2 45 . Following the classical signal-to-noise accounting introduced for differential key ranking by Biham and Shamir [7], the ratio between the expected right-tuple support and the average wrong-tuple support is
S / N = N win N wrong S · 2 40.9468 S · 2 45 = 2 4.0532 16.6 .
Here, S / N is an analytical separation metric under the stated assumptions; it is not treated as an empirically measured ranking success probability.

4.3.3. Equivalent-Round-Key Filtering Schedule

The analytical filtering schedule consists of 27 steps, listed in Table 8. Each step introduces one four-bit equivalent-round-key guess and one differential filtering condition. The schedule covers E K 25 (12 steps), E K 24 (six steps), E K 23 (two steps), R K 0 (five steps), and R K 1 (two steps), for a total of 108 equivalent-round-key bits. The analysis specifies a nominal target ranked list for this 108-bit equivalent-round-key tuple. Here E K 25 , E K 24 , and E K 23 lie in E f after the distinguisher, while R K 0 and R K 1 lie in E b before it. The order and filtering conditions in Table 8 follow the difference propagation for the selected endpoint pair. Summing the nominal S-box workloads in Table 8 gives S · 2 66.807 S-box operations. One 26-round encryption comprises 26 × 16 = 416 2 8.700 S-box operations, so the normalized S-box filtering workload is T = S · 2 58.106 equivalent 26-round encryptions. Here, a is used only as a target-list-size parameter. Setting a = 14 specifies a target list containing the top 2 14 fraction of the nominal 2 108 tuple space, namely 2 94 tuple candidates. This target-list specification for the 108-bit equivalent-round-key tuple defines the terminal scope of the analysis. Because the guessed positions are drawn from several round-key and equivalent-key words linked by the PICO key schedule, the nominal 108-bit tuple size cannot be subtracted directly from the 128-bit master-key length to infer an independent remaining key space.

4.3.4. Analytical Workload, Signal-to-Noise Ratio, and Output Scope

For S plaintext structures, the analytical data amount is D = S · 2 20 chosen plaintexts, the normalized S-box filtering workload is T = S · 2 58.106 equivalent 26-round encryptions, and the plaintext–ciphertext-record storage is M = S · 2 20 records. The time conversion uses 416 S-box operations per 26-round encryption. The expression for T excludes ranking comparisons and candidate-list materialization; M counts only plaintext–ciphertext records and excludes candidate-list storage. As an analytical accounting convention, each listed bit condition is assigned its nominal pass factor, and these factors are multiplied across the schedule. The resulting expected pair counts and step costs in Table 8 are conditional workload terms rather than empirical key-ranking measurements.
For completeness, the normal-approximation model of Selçuk [23] expresses the probability that the correct tuple is retained in the top 2 a fraction of candidates as
P S = Φ μ · S / N Φ 1 ( 1 2 a ) S / N + 1 ,
where μ = N win , and Φ and Φ 1 are the cumulative distribution function of the standard normal distribution and its inverse. This equation records the analytical framework used in Ref. [20]. In the present work, it provides the theoretical context for S / N ; the reported results are the verified finite-window probability input, the corresponding expected support, and the resource quantities D, T, and M.
We choose S = 2 42 solely as an illustrative analytical setting, not as a parameter tied to a demonstrated ranking success probability. At this setting, μ = N win 2 1.0532 2.08 , and the analytical resource quantities are
D = S · 2 20 = 2 62 , T = S · 2 58.106 = 2 100.11 , M = 2 62 .
These values illustrate the resource expressions at the chosen S and do not establish an equal-success complexity advantage over Ref. [20]. The procedure stores S · 2 20 = 2 62 plaintext–ciphertext records. At 64 bits for the plaintext and 64 bits for the ciphertext, the raw record content is 16 bytes per record, or 2 66 bytes before counters, metadata, and implementation overhead. At each step, counters are maintained only for the currently surviving pairs, and filtering is performed incrementally by bit position; these operations do not change the stated asymptotic record-storage term.
The 27-step schedule has the same outer-round organization as Ref. [20], while the exact key quartets, their order, and the filtering bit positions are determined by the endpoint pair used here. Recomputing the step costs gives S · 2 66.806553 S-box operations for Ref. [20] and S · 2 66.806539 for the present table. After normalization by 26 × 16 = 416 S-box operations per 26-round encryption, both give T / S 2 58.106 , reported as approximately 2 58.11 equivalent encryptions per structure. The verified finite-window probability input increases from 2 60.75 to 2 59.9468 , a factor of 2 0.8032 1.745 ; hence, for any fixed S, the expected right-tuple support N win is larger by the same factor under the common analytical accounting.
In Table 9, P d denotes the reported finite-window lower bound, and D, T, and M use the accounting defined above. The row from Ref. [20] retains that source’s values at S = 2 43 . The present row uses the illustrative setting S = 2 42 , for which no ranking success probability is established.

5. Conclusions

In this work, we integrated MILP-derived active-S-box bounds, exact-weight SAT subinstances, optional Matsui pruning, and fixed-endpoint blocking enumeration into a PICO-specific workflow. We used this workflow to re-evaluate PICO’s resistance to differential cryptanalysis. For selected endpoints, the verified enumeration windows were extended to matched relative depths of 14 layers, ending at W = 76 for 21 rounds and W = 79 for 22 rounds. The resulting finite-window lower bounds are 2 59.95 and 2 61.95 , respectively. We prepended two rounds and appended three rounds to the 21-round distinguisher, yielding a 2 + 21 + 3 analytical equivalent-round-key filtering-and-ranking procedure over rounds 1–26. The procedure concerns a 108-bit equivalent-round-key tuple. At the illustrative setting S = 2 42 , the analytical data amount, normalized S-box filtering workload, and plaintext–ciphertext-record storage are D = 2 62 chosen plaintexts, T = 2 100.11 equivalent 26-round encryptions, and M = 2 62 stored records, respectively. This setting is not tied to a demonstrated success probability, and these values do not establish an equal-success complexity advantage over Ref. [20]. Compared with Ref. [20], the extended 21-round finite window increases the verified probability input, and therefore the expected right-tuple support at any fixed S under the common analytical accounting, by a factor of 2 0.8032 1.745 . This improvement concerns the verified finite-window lower bound and the corresponding analytical expected support, not a demonstrated complete master-key recovery. The outer-round result remains an analytical procedure terminating at the filtering-and-ranking stage for a 108-bit equivalent-round-key tuple.

Supplementary Materials

The following supporting information can be downloaded at https://www.mdpi.com/article/10.3390/e28091006/s1, A reproducibility archive containing the essential scripts, retained output records, concise instructions, and an integrity manifest supporting the reported calculations.

Author Contributions

Conceptualization, Y.W. and T.F.; methodology, Y.W. and Z.L.; software, Y.W. and Z.L.; validation, Y.W., Z.L., T.F. and T.Z.; formal analysis, Y.W. and Z.L.; investigation, Y.W. and Z.L.; writing—original draft preparation, Y.W. and Z.L.; writing—review and editing, Y.W., Z.L., T.F. and T.Z.; visualization, Y.W. and Z.L.; supervision, T.F.; project administration, T.F.; funding acquisition, T.F. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Scientific Research Fund for Young Talents of Guangxi (No. DT2500002644). Additional funding was provided by the Research Start-up Fund of Guilin University of Technology (No. GUTQDJJ2024016) and the Secrecy and Cryptography Technology Laboratory of Jiangxi Province (No. JXWAYKT202501).

Data Availability Statement

A compact reproducibility archive accompanying this article contains the essential scripts, retained output records, concise instructions, and an integrity manifest supporting the reported calculations. Additional implementation details are available by contacting the authors at 2120241312@glut.edu.cn or 2024016@glut.edu.cn.

Conflicts of Interest

The authors declare no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
AIArtificial Intelligence
SPNSubstitution–Permutation Network
S-boxSubstitution Box
ARXAddition–Rotation–XOR
XORExclusive OR
MILPMixed-Integer Linear Programming
LPLinear Programming
SATBoolean Satisfiability
SMTSatisfiability Modulo Theories
CNFConjunctive Normal Form
DDTDifferential Distribution Table
UNSATUnsatisfiable
AKRound Key Addition
SBS-Box Substitution
PermBit Permutation

References

  1. 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; Paillier, P., Verbauwhede, I., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2007; Volume 4727, pp. 450–466. [Google Scholar] [CrossRef] [Scilit]
  2. Banik, S.; Pandey, S.K.; Peyrin, T.; Sasaki, Y.; Sim, S.M.; Todo, Y. GIFT: A small present—Towards reaching the limit of lightweight encryption. In Cryptographic Hardware and Embedded Systems—CHES 2017; Fischer, W., Homma, N., Eds.; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2017; Volume 10529, pp. 321–345. [Google Scholar] [CrossRef] [Scilit]
  3. Beierle, C.; Jean, J.; Kölbl, S.; Leander, G.; Moradi, A.; Peyrin, T.; Sasaki, Y.; Sasdrich, P.; Sim, S.M. The SKINNY family of block ciphers and its low-latency variant MANTIS. In Advances in Cryptology—CRYPTO 2016; Robshaw, M., Katz, J., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9815, pp. 123–153. [Google Scholar] [CrossRef] [Scilit]
  4. Wu, W.; Zhang, L. LBlock: A lightweight block cipher. In Applied Cryptography and Network Security; Lopez, J., Tsudik, G., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2011; Volume 6715, pp. 327–344. [Google Scholar] [CrossRef] [Scilit]
  5. Li, Y.; Wei, Y.; Pasalic, E.; Li, L.; Fan, T. LLBC: A novel Feistel-based low-latency block cipher for IoT applications. IEEE Internet Things J. 2025, 12, 45583–45595. [Google Scholar] [CrossRef] [Scilit]
  6. Bansod, G.; Pisharoty, N.; Patil, A. PICO: An ultra lightweight and low power encryption design for ubiquitous computing. Def. Sci. J. 2016, 66, 259–265. [Google Scholar] [CrossRef] [Scilit]
  7. Biham, E.; Shamir, A. Differential cryptanalysis of DES-like cryptosystems. J. Cryptol. 1991, 4, 3–72. [Google Scholar] [CrossRef] [Scilit]
  8. Lai, X.; Massey, J.L.; Murphy, S. Markov ciphers and differential cryptanalysis. In Advances in Cryptology—EUROCRYPT ’91; Davies, D.W., Ed.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 1991; Volume 547, pp. 17–38. [Google Scholar] [CrossRef] [Scilit] [PubMed]
  9. Leurent, G.; Pernot, C.; Schrottenloher, A. Clustering effect in Simon and Simeck. In Advances in Cryptology—ASIACRYPT 2021; Tibouchi, M., Wang, H., Eds.; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2021; Volume 13090, pp. 272–302. [Google Scholar] [CrossRef] [Scilit]
  10. Mouha, N.; Wang, Q.; Gu, D.; Preneel, B. Differential and linear cryptanalysis using mixed-integer linear programming. In Information Security and Cryptology; Wu, C.-K., Yung, M., Lin, D., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7537, pp. 57–76. [Google Scholar] [CrossRef] [Scilit]
  11. Sun, S.; Hu, L.; Wang, P.; Qiao, K.; Ma, X.; Song, L. Automatic security evaluation and (related-key) differential characteristic search: Application to SIMON, PRESENT, LBlock, DES(L) and other bit-oriented block ciphers. In Advances in Cryptology—ASIACRYPT 2014; Sarkar, P., Iwata, T., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2014; Volume 8873, pp. 158–178. [Google Scholar] [CrossRef] [Scilit]
  12. Mouha, N.; Preneel, B. Towards Finding Optimal Differential Characteristics for ARX: Application to Salsa20. Cryptology ePrint Archive. Paper 2013/328. 2013. Available online: https://eprint.iacr.org/2013/328 (accessed on 18 July 2026).
  13. Kölbl, S.; Leander, G.; Tiessen, T. Observations on the SIMON block cipher family. In Advances in Cryptology—CRYPTO 2015; Gennaro, R., Robshaw, M., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9215, pp. 161–185. [Google Scholar] [CrossRef] [Scilit]
  14. Sun, L.; Wang, W.; Wang, M. Accelerating the search of differential and linear characteristics with the SAT method. IACR Trans. Symmetric Cryptol. 2021, 2021, 269–315. [Google Scholar] [CrossRef] [Scilit]
  15. Taka, K.; Sakamoto, K.; Ito, R.; Shiba, R.; Utsumi, S.; Isobe, T. Divide-and-conquer SAT for exploring optimal differential and linear characteristics and its applications. IACR Trans. Symmetric Cryptol. 2025, 2025, 516–576. [Google Scholar] [CrossRef] [Scilit]
  16. Kim, I.; Kim, S.; Kim, S.; Kwon, D.; Shin, H.; Lee, D.; Hong, D.; Sung, J.; Hong, S. Towards Optimal Differential Attacks on FLY and PIPO. Cryptology ePrint Archive. Paper 2025/837. 2025. Available online: https://eprint.iacr.org/2025/837 (accessed on 18 July 2026).
  17. Kumar, M.; Suresh, T.S.; Pal, S.K.; Panigrahi, A. Optimal differential trails in lightweight block ciphers ANU and PICO. Cryptologia 2020, 44, 68–78. [Google Scholar] [CrossRef] [Scilit]
  18. Ma, C.-Y.; Liu, G.-Q.; Li, C. Zero-correlation linear cryptanalysis on PICO and RECTANGLE. J. Cryptologic Res. 2017, 4, 413–422. (In Chinese) [Google Scholar] [CrossRef]
  19. Shi, K.-K.; Ren, J.-J.; Chen, S.-Z. MILP-based search for differential and linear distinguishers of PICO algorithm. J. Cryptologic Res. 2023, 10, 910–921. (In Chinese) [Google Scholar] [CrossRef]
  20. Wang, C.-B.; Zhang, Z.-Y.; Hu, L. Differential cryptanalysis on ultra lightweight block cipher PICO. J. Cryptologic Res. 2023, 10, 685–701. (In Chinese) [Google Scholar] [CrossRef]
  21. Sasaki, Y.; Todo, Y. New algorithm for modeling S-box in MILP based differential and division trail search. In Innovative Security Solutions for Information Technology and Communications; Farshim, P., Simion, E., Eds.; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2017; Volume 10543, pp. 150–165. [Google Scholar] [CrossRef] [Scilit] [PubMed]
  22. Sinz, C. Towards an optimal CNF encoding of Boolean cardinality constraints. In Principles and Practice of Constraint Programming—CP 2005; van Beek, P., Ed.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3709, pp. 827–831. [Google Scholar] [CrossRef] [Scilit]
  23. Selçuk, A.A. On probability of success in linear and differential cryptanalysis. J. Cryptol. 2008, 21, 131–147. [Google Scholar] [CrossRef] [Scilit]
Figure 1. Encryption structure of PICO. S-box: substitution box.
Figure 1. Encryption structure of PICO. S-box: substitution box.
Entropy 28 01006 g001
Figure 2. Reported differential-characteristic weight log 2 p versus the number of rounds. Red circles mark the 21- and 22-round values, 63 and 66.
Figure 2. Reported differential-characteristic weight log 2 p versus the number of rounds. Red circles mark the 21- and 22-round values, 63 and 66.
Entropy 28 01006 g002
Figure 3. Numbers of 21-round (blue, W = 63 , , 76 ) and 22-round (orange, W = 66 , , 79 ) differential characteristics at each weight W for the respective fixed input–output difference pairs.
Figure 3. Numbers of 21-round (blue, W = 63 , , 76 ) and 22-round (orange, W = 66 , , 79 ) differential characteristics at each weight W for the respective fixed input–output difference pairs.
Entropy 28 01006 g003
Figure 4. Finite-window lower bounds for the selected 21-round and 22-round endpoint pairs as functions of the upper endpoint W. The curves end at W = 76 and W = 79 , respectively, so both contain 14 enumerated layers.
Figure 4. Finite-window lower bounds for the selected 21-round and 22-round endpoint pairs as functions of the upper endpoint W. The curves end at W = 76 and W = 79 , respectively, so both contain 14 enumerated layers.
Entropy 28 01006 g004
Figure 5. Difference propagation and per-round active bits in the analytical outer-round filtering-and-ranking procedure for 26-round PICO. AK denotes round key addition, SB denotes S-box substitution, and Perm denotes bit permutation.
Figure 5. Difference propagation and per-round active bits in the analytical outer-round filtering-and-ranking procedure for 26-round PICO. AK denotes round key addition, SB denotes S-box substitution, and Perm denotes bit permutation.
Entropy 28 01006 g005
Table 1. Notation used in this paper.
Table 1. Notation used in this paper.
NotationDescription
PThe 64-bit input plaintext
CThe 64-bit output ciphertext
P r , P r + 1 The 64-bit input and output of round r
rThe round index, 0 r 31
KThe 128-bit master key
K r The subkey used in round r
P L The bit-permutation layer
ΔA difference (bit vector)
DP The probability of a differential characteristic
WThe weight of a differential characteristic, W = log 2 DP
The bitwise exclusive OR (XOR) operation
The concatenation of two binary strings
nLeft cyclic shift by n bits
nRight cyclic shift by n bits
Bold mathematical symbols denote bit vectors. Bold table headings and row labels are typographical labels, not vector notation.
Table 2. The S-box of PICO (in hexadecimal).
Table 2. The S-box of PICO (in hexadecimal).
x0123456789ABCDEF
S [ x ] 124D6FB8A5E39C70
S-box: substitution box. The first row lists inputs x and the second row lists outputs S [ x ] . A–F denote hexadecimal values 10–15. Bold identifies the row labels.
Table 3. The bit permutation of PICO.
Table 3. The bit permutation of PICO.
i j 0123456789101112131415
00,101,51,122,62,123,03,110,13,30,152,90,23,122,21,81,4
13,80,61,11,152,43,50,122,141,143,40,110,41,72,32,83,15
20,82,70,32,113,93,11,01,92,52,103,133,20,00,91,21,10
33,103,70,71,31,130,142,152,02,10,53,142,130,133,61,61,11
Bold labels identify source row i and column j. Each entry i , j is a destination row–column pair, not a decimal number.
Table 4. Reported differential-characteristic weights ( log 2 p ) for PICO over 1–22 rounds.
Table 4. Reported differential-characteristic weights ( log 2 p ) for PICO over 1–22 rounds.
Rounds1234567891011
−log2 p246912141720232629
Rounds1213141516171819202122
−log2 p3338414447515458606366
Each block lists round counts in its first row and the corresponding characteristic weights in its second row. Bold identifies row labels.
Table 5. Number of differential characteristics contributing to the 21-round differential at each weight.
Table 5. Number of differential characteristics contributing to the 21-round differential at each weight.
W6364656667686970717273747576
N W 24062222144063110185257425706
Table 6. Number of differential characteristics contributing to the 22-round differential at each weight.
Table 6. Number of differential characteristics contributing to the 22-round differential at each weight.
W6667686970717273747576777879
N W 48012444428801262203705148501412
Table 7. Finite-window lower bounds for the selected 21-round and 22-round endpoint pairs at matched numbers of enumerated weight layers.
Table 7. Finite-window lower bounds for the selected 21-round and 22-round endpoint pairs at matched numbers of enumerated weight layers.
Number of
Layers
21-Round
Upper Bound
P [ 63 , W ] 22-Round
Upper Bound
P [ 66 , W ]
4 W 66 2 60.75 W 69 2 62.75
8 W 70 2 60.12 W 73 2 62.12
10 W 72 2 60.04 W 75 2 62.04
12 W 74 2 59.98 W 77 2 61.98
14 W 76 2 59.95 W 79 2 61.95
Table 8. Complexity details of the analytical equivalent-round-key filtering-and-ranking procedure for 26-round PICO.
Table 8. Complexity details of the analytical equivalent-round-key filtering-and-ranking procedure for 26-round PICO.
StepGuessed Key BitsFiltering ConditionExpected Remaining PairsAnalytical S-Box Workload
1 E K 25 [ 0 , 16 , 32 , 48 ] Δ X 25 [ 16 , 32 , 48 ] = 0 S · 2 19 2 S · 2 26
2 E K 25 [ 7 , 23 , 39 , 55 ] Δ X 25 [ 7 , 39 , 55 ] = 0 S · 2 16 2 S · 2 27
3 E K 25 [ 14 , 30 , 46 , 62 ] Δ X 25 [ 14 , 30 , 46 ] = 0 S · 2 13 2 S · 2 28
4 E K 25 [ 15 , 31 , 47 , 63 ] Δ X 25 [ 15 , 31 , 47 ] = 0 S · 2 10 2 S · 2 29
5 E K 25 [ 2 , 18 , 34 , 50 ] Δ X 25 [ 18 , 34 ] = 0 S · 2 8 2 S · 2 30
6 E K 25 [ 8 , 24 , 40 , 56 ] Δ X 25 [ 24 , 40 ] = 0 S · 2 6 2 S · 2 32
7 E K 25 [ 9 , 25 , 41 , 57 ] Δ X 25 [ 9 , 25 ] = 0 S · 2 4 2 S · 2 34
8 E K 25 [ 11 , 27 , 43 , 59 ] Δ X 25 [ 43 , 59 ] = 0 S · 2 2 2 S · 2 36
9 E K 25 [ 12 , 28 , 44 , 60 ] Δ X 25 [ 12 , 28 ] = 0 S · 2 0 2 S · 2 38
10 E K 25 [ 4 , 20 , 36 , 52 ] Δ X 25 [ 52 ] = 0 S · 2 1 2 S · 2 40
11 E K 25 [ 10 , 26 , 42 , 58 ] Δ X 25 [ 42 ] = 0 S · 2 2 2 S · 2 43
12 E K 25 [ 13 , 29 , 45 , 61 ] Δ X 25 [ 61 ] = 1 S · 2 3 2 S · 2 46
13 E K 24 [ 0 , 16 , 32 , 48 ] Δ X 24 [ 0 , 32 , 48 ] = 0 S · 2 6 2 S · 2 49
14 E K 24 [ 4 , 20 , 36 , 52 ] Δ X 24 [ 4 , 36 , 52 ] = 0 S · 2 9 2 S · 2 50
15 E K 24 [ 10 , 26 , 42 , 58 ] Δ X 24 [ 10 , 42 , 58 ] = 0 S · 2 12 2 S · 2 51
16 E K 24 [ 11 , 27 , 43 , 59 ] Δ X 24 [ 59 ] = 1 , Δ X 24 [ 11 , 43 ] = 0 S · 2 15 2 S · 2 52
17 E K 24 [ 12 , 28 , 44 , 60 ] Δ X 24 [ 28 , 44 , 60 ] = 0 S · 2 18 2 S · 2 53
18 E K 24 [ 15 , 31 , 47 , 63 ] Δ X 24 [ 15 , 31 ] = 0 S · 2 20 2 S · 2 54
19 E K 23 [ 6 , 22 , 38 , 54 ] Δ X 23 [ 6 , 22 , 54 ] = 0 S · 2 23 2 S · 2 56
20 E K 23 [ 15 , 31 , 47 , 63 ] Δ X 23 [ 15 , 47 , 63 ] = 0 S · 2 26 2 S · 2 57
21 R K 0 [ 0 , 16 , 32 , 48 ] Δ Y 0 [ 16 ] = 1 , Δ Y 0 [ 0 , 48 ] = 0 S · 2 29 2 S · 2 58
22 R K 0 [ 1 , 17 , 33 , 49 ] Δ Y 0 [ 49 ] = 1 , Δ Y 0 [ 1 , 17 ] = 0 S · 2 32 2 S · 2 59
23 R K 0 [ 2 , 18 , 34 , 50 ] Δ Y 0 [ 2 , 18 , 34 ] = 0 S · 2 35 2 S · 2 60
24 R K 0 [ 12 , 28 , 44 , 60 ] Δ Y 0 [ 12 , 44 , 60 ] = 0 S · 2 38 2 S · 2 61
25 R K 0 [ 14 , 30 , 46 , 62 ] Δ Y 0 [ 46 , 62 ] = 0 S · 2 40 2 S · 2 62
26 R K 1 [ 8 , 24 , 40 , 56 ] Δ Y 1 [ 8 , 24 , 40 ] = 0 S · 2 43 2 S · 2 64
27 R K 1 [ 7 , 23 , 39 , 55 ] Δ Y 1 [ 7 ] = 1 , Δ Y 1 [ 39 ] = 0 S · 2 45 2 S · 2 65
Total S · 2 66.807
Table 9. Analytical resource accounting for 26-round PICO. The rows do not provide an equal-success comparison.
Table 9. Analytical resource accounting for 26-round PICO. The rows do not provide an equal-success comparison.
21-Round
Distinguisher
Probability
P d
Data Amount
D
Normalized Filtering
Workload
T
Record Storage
M
Reference
2 60.75 2 63 2 101.11 2 63 [20]
2 59.95 2 62 2 100.11 2 62 Ours
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

Wang, Y.; Liang, Z.; Fan, T.; Zhou, T. Improved Differential Cryptanalysis of the Ultra-Lightweight Block Cipher PICO. Entropy 2026, 28, 1006. https://doi.org/10.3390/e28091006

AMA Style

Wang Y, Liang Z, Fan T, Zhou T. Improved Differential Cryptanalysis of the Ultra-Lightweight Block Cipher PICO. Entropy. 2026; 28(9):1006. https://doi.org/10.3390/e28091006

Chicago/Turabian Style

Wang, Yu, Zhuofeng Liang, Ting Fan, and Tao Zhou. 2026. "Improved Differential Cryptanalysis of the Ultra-Lightweight Block Cipher PICO" Entropy 28, no. 9: 1006. https://doi.org/10.3390/e28091006

APA Style

Wang, Y., Liang, Z., Fan, T., & Zhou, T. (2026). Improved Differential Cryptanalysis of the Ultra-Lightweight Block Cipher PICO. Entropy, 28(9), 1006. https://doi.org/10.3390/e28091006

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

Article Metrics

Article metric data becomes available approximately 24 hours after publication online.
Back to TopTop