1. Introduction
Lightweight cryptography is one of the most active research areas in the cryptographic community. In the last decade, several lightweight block ciphers were designed, which aimed to work efficiently in constrained environments.
Simeck is a family of lightweight block ciphers that combines design features from
Simon and
Speck, using a slightly modified round function of
Simon with the
Speck key schedule. The round function makes it vulnerable to most attacks on
Simon, one of which is the improved linear attack proposed by us in [
1], where we show that, after four rounds of
Simon 32/64 encryption, one bit of the left half of the state depends on only 16 key bits, which is equal to the size of one round key. In the right half, one bit of the state depends only on seven key bits. We refer to the multiple rounds of encryption as a
super round. We are able to construct a super round for
Simeck in a similar way, due to the great similarity in their designs.
In this paper, we are able to improve upon the approach of [
1] on
Simeck 32/64 and
Simeck 48/96, by using multiple super rounds and multiple active bits, while keeping the number of key bits to be guessed small enough. We present the direct application of the approach [
1] on all variants of
Simeck, and demonstrate the improvement for
Simeck 32/64 and
Simeck 48/96 (though the improved approach does not improve on our previous attacks on
Simon).
1.1. Our Contributions
In this paper, we present an attack on reduced-round
Simeck. In contrast to the original work by us on the use of a single super round and active bit [
1], the approach here uses multiple super rounds and multiple active bits that enable us to attack more rounds on
Simeck 48/96 and enhance the efficiency of the linear attack on
Simeck 32/64. The work presented in [
1] was demonstrated exclusively on
Simon. The attack presented here is demonstrated exclusively on
Simeck. It does not work on
Simon because the rotation used in the round functions is different and
Simeck’s makes it vulnerable to our attack.
The attack presented here on
Simeck 32 has larger bias than if we were to apply the attack of [
1]. We refer to the application of [
1] to
Simeck as
single super round in the table below. We do not cite [
1] in the table because the approach was applied only to
Simon there. Instead, we cite the section in this paper (
Section 7.1) where we report the results of applying [
1] to
Simeck.
1.2. Comparison with Other Work
We compare our results with Bagheri’s [
2] best key recovery results, which were achieved using Matsui’s second algorithm. These are the best results that were obtained using the classical linear Matsui’s second algorithm without recourse to linear hull results. In both average-case and worst-case comparisons, we were able to go deeper in all variants of
Simeck, see
Table 1 and
Table 2.
Note the following details:
2. Simeck
2.1. Notations
We used the notation of [
1]. Superscripts indicate a round number beginning with 0 for the first round. Subscripts indicate a bit number beginning with 0 for the leftmost bit.
X represents input, and
and
represent the left-half and right-half inputs, respectively. For example,
is the sixth bit from the left of the left-half input of the first round. Similarly,
is the
i-th bit of the
j-th round key, and
represents the second bit of the first round key.
Moreover, represents the left plaintext half, while represents the right plaintext half input to the cipher. Similarly, means the left ciphertext half and is the right ciphertext half, the final output of the cipher. Additionally, ⊕ represents bitwise exclusive OR (XOR) and & bitwise AND. Finally, represents cyclic shifts to the left by z bits.
2.2. Description of Simeck
There are three versions of
Simeck, each denoted by
Simeck, where
n is the word size,
m is the number of key words and
is the block size. The following
Table 3 shows the specification of other variants.
The round function (see
Figure 1). is defined as:
where:
The key schedule takes the master key K as an input and generates r subkeys . The initial states of the feedback shift registers are initialized with the master key words. Then, the round function is applied to update the registers and generate the round keys. The updating process is defined as follows:
, , where , , n is the word size, is the i-th bit of .
The sequence for Simeck 32/64 and Simeck 48/96 is generated by the primitive polynomial with the initial states (1, 1, 1, 1, 1). For Simeck 64/128, the is generated by the primitive polynomial with the initial states (1, 1, 1, 1, 1, 1).
3. Related Work
Due to the similarities between the design of
Simon and
Simeck, most of the attacks that have been used against
Simon are applicable to
Simeck. Hence, the designers of
Simeck have analyzed the security of the cipher against linear and differential cryptanalysis using the best attacks that have occurred against
Simon. In [
4], the authors evaluate the security of
Simeck and conclude with the possibility of launching a differential attack over 19, 20, and 26 rounds of
Simeck 32/64, 48 and 128 respectively. Similarly, they present a linear cryptanalysis and introduce attacks on 12, 15, and 19 rounds of
Simeck 32/64, 48, and 128, respectively.
Bagheri [
2] applied the classical linear attacks, which are also considered the best results using the classical linear cryptanalysis. Applying Matsui’s first algorithm, they were able to attack 14, 19, and 23 rounds of
Simeck 32/64, 48/96, and 64/128, respectively. Moreover, they successfully presented attacks against 18, 24, and 27 rounds using Matsui’s second algorithm.
In 2016, Kölbl et al. [
5] presented a comparison between
Simon and
Simeck in terms of the upper bounds of the linear and differential trails. Additionally, they presented differential attacks against 19, 26 and 33 rounds on
Simeck 32,
Simeck 48, and
Simeck 64, respectively.
Soon after this, Qiao et al. [
6], presented differential attacks using a new technique, named dynamic key guessing, to attack 22, 28 and 35 rounds on
Simeck 32,
Simeck 48, and
Simeck 64, respectively.
Chin et al. [
7] evaluated the security of
Simeck against linear hull cryptanalysis, considered the best linear results on
Simeck achieved using the linear hull approach. They were able to attack 23, 30 and 37 rounds on
Simeck 32,
Simeck 48, and
Simeck 64, respectively.
Moreover, there have been more results using other cryptanalysis techniques, such as zero-correlation and integral attacks.
A powerful, recently proposed attack method is zero-correlation linear cryptanalysis [
8], which relies on the use of linear trails with a probability of 0.5. In 2018, Zhang et al. [
9] evaluated the security of
Simeck against such an attack. Hence, they presented attacks on 20 rounds, 24 rounds and 27 rounds of
Simeck 32,
Simeck 48, and
Simeck 64, respectively.
Moreover, Bagheri and Sadeghi [
10] improved these results and presented better attacks using zero-correlation linear trails on
Simeck 48 and
Simeck 64. They were able to attack 27-round
Simeck 48 and 31-round
Simeck 64. In 2019, Chen et al. [
11] provided improved results using an integral attack.
Side-channel and fault attacks are a powerful category of attacks that compromise the ciphers’ physical implementation to recover the secret key. Nalla et al. [
12] described the first-fault attack on
Simeck and demonstrated two models of fault attack; in both attacks, they recovered the n-bit last-round key. In 2020, Duc-Phong Le et al. [
13] improved the former results for fault attacks and recovered the master key by injecting fewer faults into a single round of cipher. Hence, in [
14], a new countermeasure algorithm is proposed, which can detect intelligent injection faults rather than random faults.
A growing interest in side-channel attacks has been noted, especially in the use of deep learning network technology. Various models have been developed and examined to improve the efficiency of side-channel analysis attacks [
15]. Wu et al. [
16] presented a side-channel attack using electromagnetic leakage data to recover the last-round key of
Simeck 32/64.
Hence, the use of machine learning tools in cryptography is broader than just improving side-channel attacks. Recently, Baksi et al. [
17] improved the framework proposed in [
18] to find differential distinguishers for
Simeck and Ascon. They presented multi-layer perceptron-based distinguishers for 9-round
Simeck 32, and 14-round
Simeck 64. By employing ML tools, they were able to reduce the search complexity of the classical differential distinguisher.
In the post-quantum era, many cryptography systems are threatened by powerful quantum computers. SIKE is one of the candidates that was submitted to the NIST post-quantum cryptography standardization process. The cipher can provide reliable security for the post-quantum era, in addition to the current environment. Tian et al. [
19] designed an improved architecture to enhance the cipher’s implementation.
In 2020, the authors of [
1] proposed an improved linear attack to significantly increase the recovery attack efficiency using Matsui’s second algorithm. The super round technique essentially works by partitioning the key into smaller parts; each part is sufficient to relate multiple bits of ciphertext to a single bit of plaintext. The efficiency of this technique depends on reducing the number of key bits that need to be guessed using linear approximations. The standard technique of extending a linear approximation with one round of decryption is usually achieved by guessing the full last round key. The proposed improved technique takes advantage of the fact that one bit of cipher text depends on only 16 key bits; instead of extending the linear approximation by one round, it can be extended by four rounds with the same cost.
The general method of applying Matsui’s second algorithm using super rounds, as described by us in [
1], is deriving linear approximations that have a single bit of input —
or
and multiple bits of the cipher texts (see
Figure 2).
4. Super Rounds and Super Keys for Simeck
We applied the super round technique to recover multiple round keys, including the master key for all variants of
Simeck, and attack more rounds using Matsui’s second algorithm. The term super round, defined in [
1], represents
s-rounds of encryption of the cipher. In our analysis of
Simeck, this represents a four-round encryption.
In the case of
Simeck 32/64, there are two super rounds, as shown in
Figure 3. There is a super round that represents the first four rounds, which requires a super key for the left half of 16 bits and has a single bit of the left half of the cipher text as the output. A similar super round that requires a super key for the right half of seven bits is shown on the right side of
Figure 3. In the case of the other variants,
Simeck48/96 and
Simeck64/128, although they correspond to a larger block and key size, the construction of super rounds with the exact size of the super keys is applicable.
4.1. The Construction of Super Rounds and Derivations of Super Keys
In this section, we demonstrate the construction of the super rounds of
Simeck 32/64. Recall Equation (
1), describing the round function of
Simeck:
which implies that:
and, hence, that:
Similarly,
and hence that:
Recall Equation (
2):
which implies that:
giving us:
where:
4.2. The Super Key
There is a super key corresponding to each of the super rounds depicted in
Figure 3. The following table lists the components of the left and right super keys, according to the equations described in
Section 4.1.
From
Table 4, it can be seen that the super key of the left half contains nine bits of
, in the form
for
. In addition, five bits come from the super key of the right half, in the form
for
. As a result of this redundancy, we can obtain nine copies, five copies of each bit of
, for every super key of the left and right half of the state, respectively.
After determining the 16 bits of and , we obtain:
for .
Thus, by obtaining the 16 super keys for the left and right halves of
Simeck32/64, we can estimate 48 independent key bits, consisting of
,
, and
. Furthermore, as in [
1], we use the majority vote to determine the value of individual key bits. Hence, the final estimation of each bit presents with one of three states: correctly determined bits, incorrectly determined bits, and undetermined bits.
7. Projected Results Using Multiple Linear Cryptanalysis
This section presents two projected linear attacks; the first uses a single super-round, which is the direct application of the approach presented in [
1], and the second is a new class of attacks where we use multiple super-rounds.
7.1. Linear Attacks Using a Single Super-Round
Here, we present a 19-round linear attack, a direct application of the original attack that we proposed in [
1]. This is achieved by extending the 12-round linear approximations in Equation (
18) and appending the super rounds of four rounds of encryption and three rounds of decryption.
To compute the data complexity, we first compute the capacity:
Nine key bits must be estimated to add three rounds of decryption to the approximations for the left half:
Seven bits of for ;
Two bits of the sum: for .
Twelve key bits must be estimated to add three rounds of decryption to the approximations for the right half:
Eight bits of for ;
Four bits of the sum: for .
The time complexity required for this attack to evaluate the approximations for the left half is . For the right side, it is . The overall complexity required to evaluate the two halves is .
Hence, we can attack 20 rounds in the case of average-case computations by extending the 12-round linear approximations of Equation (
18), appending a single super round of four rounds of encryption and adding four rounds of decryption.
We extended the seven-round linear characteristics in Equations (
11) and (
12) into the following 12-round linear approximations for the left and the right sides, with biases=
and
, respectively.
We compute the capacity for the system of approximations as follows:
The super round costs on average 11.5 and 4.5 were appended for the left and the right half, respectively. Moreover, four rounds of decryption costs were appended by estimating, on average, 16 key bits and 18.5 key bits for the left- and right-half approximations, respectively.
Twenty-three key bits (16 bits on average) are needed to estimate the left-half approximations:
Fourteen bits of for , with each counted as a half bit.
Seven bits of the sum: for .
Two bits of the sum:, for
Twenty-five key bits (18.5 bits on average) are required to estimate the right-half approximations:
Thirteen bits of for , each counted as a half bit
Eight bits of the sum: for .
Four bits of the sum: , for
Thus, the time complexity required to evaluate the approximations for the left half is , in addition to the complexity of evaluating the approximations for the right half = . Thus, the total time complexity is .
7.2. Improved Linear Approximations for Simeck 32/64
The approximations used in the attack presented in
Section 7.1 have a single bit of the input mask due to the constraint of incorporating only a single super-round. This constraint is relaxed in this work. We can improve the overall attack efficiency by deriving a linear approximation with multiple input masks, which means we can employ multiple super-rounds.
Therefore, we are able to derive this improved 13-round approximation with bias equal to
. (see
Table A3 for the derivation).
7.3. Linear Attacks Using Multiple Super Rounds
Incorporating multiple super rounds enables us to enhance the time complexity of the attack. Here, we extend the 13-round linear trail (
19) into a 19-round linear attack by appending six more rounds: four rounds of encryption, and two rounds of decryption.
The system of approximations has the following capacity:
Thus, the data complexity for this attack is .
The three super-rounds require that three super-keys are estimated, which consist of:
Fourteen bits of the last round key for , with each counted as a half bit.
Nine bits of the sum for .
Two bits of the sum for .
The cost of appending three super-rounds (one for each input mask bit) is guessing 25 key bits. Additionally, two more key bits required estimation to append two decryption rounds. The time complexity for this attack is .
In the average-case complexity, we can add one more round of decryption to the 19-round attack and present a 20-round attack.
Nine key bits must be estimated to add three rounds of decryption:
Five bits of for , with each counted as a half bit.
Four bits of the sum: for .
As a result, the average cost of appending three super-rounds is to guess 18 key bits, in addition to 6.5 key bits, to add three rounds of decryption; thus, the time complexity for this attack is .
Table 9 summarizes our results of
Simeck 32/64 and compares them with the best results presented in [
2]. We were able to go deeper by two rounds.