1. Introduction
Block ciphers play an important role in the area of data storage and secure transmission in an open internet environment. During the past three decades, block ciphers have received a lot of attention from academic and industrial community.
Generally, security and implementation efficiency can be considered as the most crucial aspects in the design of block ciphers. To achieve sufficient security margins, block ciphers commonly employ multiple encryption rounds for the purpose of achieving a satisfactory level of diffusion and confusion [1]. On the other hand, the internal structure of a block cipher is also importance since it directly affects the implementation cost and performance in both hardware and software. Currently, the most prominent block ciphers employ diverse structures such as Feistel [2, 3], SPN [4], MISTY [5] and Lai-Massey [6], among others. A very common approach is to implement a block cipher as a substitution permutation network (SPN), which was extensively used in many prominent block ciphers, including AES [4, 7] whose design additionally embeds the concept of wide trail strategy[8]. One important issue with this design rationale regards the problem of determining the differential or linear properties of a given cipher, which is considered to be quite a difficult task. More specifically, in order to ensure good resistance against differential and linear cryptanalysis, the so-called branch number of diffusion (linear) layer and the cryptographic properties of the S-boxes (used in the substitution layer) have to be taken into account [9, 10]. Due to the iterative structure of block ciphers and an exponential growth of possible differential/linear patterns, the exact security estimates are not easy to specify. An alternative design rationale of constructing block ciphers that achieve an optimal security level (under the ideal model assumption) was introduced in [11]. This method uses the so-called Whitened Swap-Or-Not (WSN) construction, which itself is based on the Swap-or-Not method introduced in [12] and applicable in the settings when the internal functions are kept secret. Furthermore, instead of the need for a set of random Boolean functions for the Swap-or-Not method, the WSN approach [11] requires only two public random n-variable Boolean functions to achieve full security. Actually, there are very few known instances of WSN and an encryption algorithm based on this approach was specified in [12] but later broken by Vaudenay [13]. Another example of using the WSN method is the BISON block cipher, which was proposed by Canteaut et al. at EUROCRYPT 2019 [14]. The design of BISON implements XOR-ing of the round keys by using a quadratic bent function. Additionally, BISON seems to be resistant against differential cryptanalysis [15], linear cryptanalysis [16], and algebraic cryptanalysis [17] provided that the number of rounds is approximately 3n, where n is the data block length and n is odd. In particular, the MDP value of BISON can be easily evaluated without the exact details about its components, which is completely different to the wide trail strategy.
Consequently, the encryption speed of BISON is quite low due to a large number of rounds used and a large n-bit input size. For instance, assuming that n=127 implies that there are 381 rounds and additionally one needs to implement a large 126-bit nonlinear function which is quite demanding. To overcome these issues, we propose a new block cipher that borrows the design ideas from BISON, named DBISON. More specifically, the length of data block of DBISON is even and therefore the input x can be divided into two halves xL and xR which are then processed in parallel using a similar structure as in Feistel networks. The details of round operations are given in Fig. 1 and, additionally, the used parameters are described in Definition 4. Notice that, to complete the round operation, the left and right branch are swapped but in the final round the swap operation is not performed.
Fig. 1. The round function of DBISON
It will be shown that DBISON is resistant against both differential and linear cryptanalysis when the number of rounds r reaches n. More specifically, we show that the MDP value equals 1/2n-1 when n encryption rounds are used, whereas the MLP is strictly less than 1/2n-1 if at least (n/2+3) encryption rounds are applied. It is worth mentioning that the MDP can almost reach the ideal value 1/2n if the size of data block n is close to 256. A comparison between BISON and DBISON is given in Table 1. However, to ensure that the algebraic degree of DBISON attains its maximal value n, the number of rounds is approximately 3n. DBISON offers a significant advantage over BISON in terms of encryption/decryption speed since the input size is divided into two halves (each having n/2 bits) which are processed in parallel.
Table 1. Comparison of BISON and DBISON
The rest of this paper are organized as follows. In Section 2, the DBISON block cipher is fully described. In Section 3, the differential cryptanalysis against DBISON is examined and the estimates of its MDP are provided. In Section 4, the resistance of DBISON against linear cryptanalysis is analyzed and the bounds on its MLP are derived. In Section 5, certain specific instances of DBISON are specified. Some concluding remarks can be found in Section 6.
2. Preliminaries
Definition 1[18] Let F be a function from F2n into F2n. For any u, v ∈ F2n, define \(\begin{aligned}W_{F}(u, v)=\sum_{x \in F_{2}^{n}}(-1)^{u \bullet x \oplus v \bullet F(x)}\end{aligned}\), where • denotes the inner product in F2n, that is u•x = u1x1 ⊕ u2x2 ⊕ ... ⊕ unxn. The multiset {WF (u,v) | u, v∈ F2n} is called the Walsh spectrum of F.
Definition 2[19] The r -round differential characteristic of an iterative block cipher is denoted as Ω = (δ0,δ1, ...,δr). Assuming that the round keys k1,k2,...,kr are independent and uniform, the differential characteristic probability DP(Ω) is defined as \(\begin{aligned}\mathrm{DP}(\Omega)=\prod_{i=1}^{r} \mathrm{DP}\left(\delta_{i-1}, \delta_{i}\right)\end{aligned}\), i.e. it is the probability that the difference between input pair is δ0 and the difference between intermediate state (yi,yi*) is δi, 1 ≤ i ≤ r.
Definition 3[19] The r -round linear characteristic of an iterative block cipher is denoted as θ = (θ0,θ1,...,θr). Assuming that the round keys k1,k2,...,kr are independent and uniform, the linear characteristic probability LP(θ) is defined by \(\begin{aligned}\operatorname{LP}(\theta)=\prod_{i=1}^{r} \operatorname{LP}\left(\theta_{i-1}, \theta_{i}\right)\end{aligned}\), i.e. the probability that the input mask is θ0 and the mask of an intermediate state yi is θi, 1 ≤ i ≤ r.
For the input and output difference (α,β), it is a difficult task to compute the MDP of (α,β), even for a small number of rounds. However, computing the MDP of an r-round differential characteristic Ω = (δ0,δ1,...,δr) is an easier task, and the MDP of Ω also reflects the ability of the cipher to resist differential cryptanalysis. A similar reasoning applies when the MLP values is considered, thus having an initial mask (a,b) and an r-round linear trail θ = (θ0,θ1,...,θr). We will investigate in detail the properties of DBISON in this context, hence its resistance against differential and linear cryptanalysis by providing the estimates on MDP and MLP using Ω and θ, respectively.
Definition 4 Let the data block length of DBISON be n = 4m + 2, where m is a positive integer. The input x of any encryption round is divided into the left half and right half, i.e. x = (xL,xR). The i-th round function Fki,wi (x): F2n→ F2n is defined as
Fki,wi (x) = (xL ⊕ xR ⊕ fiR (wiR ⊕ ΦkiR (xL ⊕ xR))kiR, xL ⊕ fiL (wiL ⊕ ΦkiL (xL))kiL), (1)
where ki = (kiL,kiR), wi = (wiL,wiR) are round keys ( wi is the whitened key), and fiL and fiR are bent functions with n/2-1 variables. Moreover, ΦkiL, ΦkiR : F2n/2 → F2n/2-1 are linear functions and ker ΦkiL = {0, kiL}, ker ΦkiR = {0, kiR}, where kiL and kiR are generated by two LFSRs so that kiL ≠ 0 and kiR ≠ 0, respectively.
Remark 1 The analysis in this work follows two basic assumptions of symmetric cryptanalysis, i.e. the whitened keys are linearly independent, and the round keys satisfy the so-called random equivalence hypothesis.
3. Differential cryptanalysis of DBISON block cipher
The derivative of a function f in direction α is defined as Dαf(x) = f(x)⊕f(x⊕α). A successful application of differential cryptanalysis against block ciphers heavily relies on the differential properties of its substitution layer. The round function F of a block cipher with n -bit input and output can be viewed as a vectorial Boolean function F : F2n → F2n. The behavior of the derivatives of F are described by the Differential Distribution Table (DDT) of F, whose entries are
DDTF[α,β] = |{x ∈ F2n | F(x)⊕F(x⊕α) = β}|,
where α ∈ F2n is referred to as the input difference and β ∈ F2n as the output difference.
In this context, we are primarily interested in the DDT of the round function Fki,wi (x), which can be calculated explicitly using Theorem 1 below.
Theorem 1 Using (1), the round function of DBISON can be rewritten as
F(x) = (xL ⊕ xR ⊕ fR (wR ⊕ ΦkR (xL ⊕ xR))kR, xL ⊕ fL (wL ⊕ ΦkL (xL))kL). (2)
Then DDTF[α,β] can be specified as follows:
1) DDTF[α,β] = 2n if β = (αL ⊕ αR,αL) and α ∈ {0, (0,kR), (kL,kL), (kL,kL ⊕ kR)}.
2) DDTF[α,β] = 2n-1 if β = (αL ⊕ αR,αL) and (αL⊕ αR,αL) ∈ {(0,αL), (kR,αL), (αL ⊕ αR,0), (αL ⊕ αR,kL) | αL ∉ {0,kL}, αL ⊕ αR ∉ {0,kR}}, or β = (αL ⊕ αR,αL) ⊕ (0,kL), αL ⊕ αR ∈ {0,kR} and αL ∉ {0,kL}, or β = {αL ⊕ αR,αL) ⊕ (kR,0), αL ⊕ αR ∉ {0,kR} and αL ∈ {0,kL}.
3) DDTF[α,β] = 2n-2 if β = (αL ⊕ αR,αL) ⊕ γ, γ ∈ {0, (0,kL), (kR,0), (kR,kL)} and αL ⊕ αR ∉ {0,kR}, αL ∉ {0,kL}.
4) Otherwise, DDTF[α,β] = 0.
Proof Using the definitions of DDT and F(x), DDTF[α,β] can be deduced as:
DDTF[α,β] = |{x ∈ F2n|(DΦkR (αL ⊕ αR) fR(wR ⊕ ΦkR (xL ⊕ xR))kR, DΦkL (αL) fL(wL ⊕ ΦkL (xL))kL) = (αL ⊕ αR,αL) ⊕ β}|. (3)
Clearly, DDTF[α,β] = 0 if (αL ⊕ αR,αL) ⊕ β ∉ {0, (0,kL), (kR,0), (kR,kL)}:=K*.
In the following, we split our analysis of (αL ⊕ αR,αL)⊕ β into four cases.
Case 1. β = (αL ⊕ αR,αL).
By (3) and kL ≠ 0, kR ≠ 0, it can be deduced that
DDTF[α,β] = |{x ∈ F2n|DΦkR (αL ⊕ αR) fR(wR ⊕ ΦkR (xL ⊕ xR)) = 0 and DΦkL (αL) fL(wL ⊕ ΦkL (xL)) = 0}|.
① ΦkR (αL ⊕ αR) ≠ 0 and ΦkL (αL) ≠0. Denote wL ⊕ ΦkL (xL) by x′L.
Since fL is a bent function, thus |{x′L ∈ F2n/2-1|DΦkL (αL) fL(x′L)=0}|=2n/2-2. Furthermore, ΦkL is a linear function from F2n/2 to F2n/2-1 and ker ΦkL = {0, kL}, and therefore |AL|:=|{xL ∈ F2n/2| DΦkL (αL) fL(wL ⊕ ΦkL (xL))=0}| = 2n/2-1. For any ai ∈ AL, i = 1,2,...,2n/2-1, |{xR ∈ F2n/2|DΦkR (αL ⊕ αR) fR(wR ⊕ ΦkR (ai ⊕ xR))=0}| = 2n/2-1 since ΦkR (αL ⊕ αR) ≠ 0 and fR is a bent function. Therefore, DDTF[α,β] = 2n/2-1 x 2n/2-1 = 2n-1.
② ΦkR (αL ⊕ αR) ≠ 0 and ΦkL (αL) = 0. DDTF[α,β] = 2n/2 x 2n/2-1 = 2n-1.
③ ΦkR (αL ⊕ αR) = 0 and ΦkL (αL) ≠ 0. DDTF[α,β] = 2n/2-1 x 2n/2 = 2n-1.
④ ΦkR (αL ⊕ αR) = 0 and ΦkL (αL) = 0. DDTF[α,β] = 2n/2 x 2n/2 = 2n.
To summarize, when β = (αL ⊕ αR,αL) is satisfied then DDTF[α,β] can be computed as follows:
\(\begin{aligned}\operatorname{DDT}_{F}[\alpha, \beta]=\left\{\begin{array}{l}2^{n}, \quad \text { if } \alpha \in\left\{\mathbf{0},\left(\mathbf{0}, k_{R}\right),\left(k_{L}, k_{L}\right),\left(k_{L}, k_{L} \oplus k_{R}\right)\right\}, \\ 2^{n-1}, \text { if }\left(\alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \in\left\{\mathbf{0}, k_{R}\right\}\right) \text { or }\left(\alpha_{L} \in\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\}\right), \\ 2^{n-2}, \text { if } \alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\} .\end{array}\right.\end{aligned}\) (4)
The same method can be used to address the remaining cases, and the following results are then obtained.
Case 2. β = (αL ⊕ αR,αL) ⊕ (0,kL).
\(\begin{aligned}\operatorname{DDT}_{F}[\alpha, \beta]=\left\{\begin{array}{ll}2^{n-1}, & \text { if } \alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \in\left\{\mathbf{0}, k_{R}\right\} \\ 2^{n-2}, & \text { if } \alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\}, \\ 0, & \text { if } \alpha_{L} \in\left\{\mathbf{0}, k_{L}\right\} .\end{array}\right.\end{aligned}\) (5)
Case 3. β = (αL ⊕ αR,αL) ⊕ (kR,0).
\(\begin{aligned}\operatorname{DDT}_{F}[\alpha, \beta]=\left\{\begin{array}{ll}2^{n-1}, & \text { if } \alpha_{L} \in\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\}, \\ 2^{n-2}, & \text { if } \alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\}, \\ 0, & \text { if } \alpha_{L} \oplus \alpha_{R} \in\left\{\mathbf{0}, k_{R}\right\} .\end{array}\right.\end{aligned}\) (6)
Case 4. β = (αL ⊕ αR,αL) ⊕ (kR,kL).
\(\begin{aligned}\operatorname{DDT}_{F}[\alpha, \beta]=\left\{\begin{array}{ll}2^{n-2}, & \text { if } \alpha_{L} \notin\left\{\mathbf{0}, k_{L}\right\} \text { and } \alpha_{L} \oplus \alpha_{R} \notin\left\{\mathbf{0}, k_{R}\right\} \\ 0, & \text { if } \alpha_{L} \in\left\{\mathbf{0}, k_{L}\right\} \text { or } \alpha_{L} \oplus \alpha_{R} \in\left\{\mathbf{0}, k_{R}\right\}\end{array}\right.\end{aligned}\) (7)
By (4), (5), (6), and (7), the DDT of F(x) can be obtained.#
Moreover, we consider the differential properties when the round function is applied iteratively. It is well-known that the probability of a differential characteristic of Markov cipher [20] can be easily calculated. In what follows, we first prove that DBISON is a Markov cipher.
Lemma 1 The round function Fk,w(x) of DBISON has the following property
Prw[Fk,w(x) ⊕ Fk,w(x ⊕ α) = β] = Prx[Fk,w(x) ⊕ Fk,w(x ⊕ α) = β]. (8)
Proof Let Aw := {w ∈ F2n-2|Fk,w(x) ⊕ Fk,w(x ⊕ α) = β}, Ax := {x ∈ F2n|Fk,w(x) ⊕ Fk,w(x ⊕ α) = β}.
More specifically,
Aw = {w ∈ F2n-2|(DΦkR (αL ⊕ αR) fR(wR ⊕ ΦkR (xL ⊕ xR))kR, DΦkL (αL) fL(wL ⊕ ΦkL (xL))kL) = (αL ⊕ αR,αL) ⊕ β}.
Ax = {x ∈ F2n | (DΦkR (αL ⊕ αR) fR(wR ⊕ ΦkR (xL ⊕ xR))kR, DΦkL (αL) fL(wL ⊕ ΦkL (xL))kL) = (αL ⊕ αR,αL) ⊕ β}.
If (αL ⊕ αR,αL) ⊕ β ∉ K*, then |Aw| = |Ax| = 0, and (8) holds. If (αL ⊕ αR,αL) ⊕ β ∈ K*, then |Aw| and |Ax| are calculated as below.
Case 1. β =(αL ⊕ αR,αL).
\(\begin{aligned}A_{w}=\left\{w_{L} \in F_{2}^{n / 2-1} \mid D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)=0\right\} \times\left\{w_{R} \in F_{2}^{n / 2-1} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right)\right)=0\right\}.\end{aligned}\)
Denote \(\begin{aligned}w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)=u w_{R} \oplus \Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right)=v\end{aligned}\), then
\(\begin{aligned} A_{w} & =\left\{u \oplus \Phi_{k_{L}}\left(x_{L}\right) \in F_{2}^{n / 2-1} \mid D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}(u)=0\right\} \times\left\{v \oplus \Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right) \in F_{2}^{n / 2-1} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}(v)=0\right\} \\ & =\left[\Phi_{k_{L}}\left(x_{L}\right) \oplus\left(F_{2}^{n / 2-1}-\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right)\right] \times\left[\Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right) \oplus\left(F_{2}^{n / 2-1}-\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right)\right] .\end{aligned}\)
Thus,
\(\begin{aligned}\operatorname{Pr}_{w}\left[F_{k, w}(x) \oplus F_{k, w}(x \oplus \alpha)=\beta\right]=\frac{\left|A_{w}\right|}{\left|F_{2}^{n-2}\right|}=\frac{\left(2^{n / 2-1}-\left|\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|\right)\left(2^{n / 2-1}-\left|\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right|\right)}{2^{n-2}}.\end{aligned}\)
On the other hand, |Ax| can be calculated as follows.
\(\begin{aligned}A_{x}=\left\{\left(x_{L}, x_{R}\right) \in F_{2}^{n} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right)\right)=0 \text { and } D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)=0\right\}.\end{aligned}\)\(\begin{aligned}\text {If}\; \Phi_{k_{L}}\left(\alpha_{L}\right)=\mathbf{0}, \text {then }\; \left|\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|=0 \; \text {and}\; \left|A_{L}\right|=2^{n / 2}. \text {If} \;\Phi_{k_{L}}\left(\alpha_{L}\right) \neq \mathbf{0}\end{aligned}\) it, can be deduced that \(\begin{aligned}\left|\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|=0\; and\; \left|A_{L}\right|=2^{n / 2}.\end{aligned}\) If \(\begin{aligned}\Phi_{k_{L}}\left(\alpha_{L}\right) \neq \mathbf{0}\end{aligned}\), it can be deduced that \(\begin{aligned}\left|\operatorname{supp}\left(D_{\Phi_{\kappa_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|=2^{n / 2-2}\end{aligned}\) since fL is a bent function, and |AL| = 2n/2-1(see Theorem 1). In both cases, \(\begin{aligned}\left|A_{L}\right|=2^{n / 2}-2\left|\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|\end{aligned}\).
For any ai ∈ AL, i = 1,2,...,2n/2-1, if \(\begin{aligned}\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)=\mathbf{0}\end{aligned}\), then \(\begin{aligned}\left|\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right|=0\end{aligned}\) and \(\begin{aligned}\left|\left\{x_{R} \in F_{2}^{n / 2} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(a_{i} \oplus x_{R}\right)\right)=0\right\}\right|=2^{n / 2}\end{aligned}\). If \(\begin{aligned}\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right) \neq \mathbf{0}\end{aligned}\), it can be deduced that \(\begin{aligned}\left|\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right|=2^{n / 2-2}\end{aligned}\), and \(\begin{aligned}\left|\left\{x_{R} \in F_{2}^{n / 2} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(a_{i} \oplus x_{R}\right)\right)=0\right\}\right|=2^{n / 2-1}\end{aligned}\). In both cases, \(\begin{aligned}\left|\left\{x_{R} \in F_{2}^{n / 2} \mid D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(a_{i} \oplus x_{R}\right)\right)=0\right\}\right|=2^{n / 2}-2\left|\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right|\end{aligned}\).
To summarize, \(\begin{aligned}\left|A_{x}\right|=\left(2^{n / 2}-2\left|\operatorname{supp}\left(D_{\Phi_{k_{L}}\left(\alpha_{L}\right)} f_{L}\right)\right|\right)\left(2^{n / 2}-2\left|\operatorname{supp}\left(D_{\Phi_{k_{R}}\left(\alpha_{L} \oplus \alpha_{R}\right)} f_{R}\right)\right|\right)\end{aligned}\), thus (8) holds. The similar results are easily verified for the remaining cases.#
Corollary 1 Let Ek,wr denote the r-round encryption of DBISON, where its i-th round function is \(\begin{aligned}F_{k_{i}, w_{i}}(x)\end{aligned}\) and using the round keys k1,k2,...,kr. Then, we have
\(\begin{aligned}\operatorname{Pr}_{w, x}\left[E_{k, w}^{r}(x) \oplus E_{k, w}^{r}\left(x \oplus \delta_{0}\right)=\delta_{r}\right]=\prod_{i=1}^{r} \operatorname{Pr}_{w, x}\left[F_{k_{i}, w_{i}}(x) \oplus F_{k_{i}, w_{i}}\left(x \oplus \delta_{i-1}\right)=\delta_{i}\right]\end{aligned}\).
To describe the necessary conditions under which Ω = (δ0,δ1,...,δr) is a valid differential characteristic and to compute the MDP of DBISON, we need to introduce a new operation.
Definition 5 Let λL, λR ∈ {0,1}, (kL,kR) ∈ F2n, kL ∈ F2n/2, kR ∈ F2n/2. We define a “product’’ between (λL,λR) and (kL,kR) as (λL,λR)∗(kL,kR) = (λLkL,λRkR ).
By Corollary 1, the probability of having the differential characteristic Ω = (δ0,δ1,...,δr) after r rounds is \(\begin{aligned}\mathrm{DP}(\Omega)=\prod_{i=1}^{r} \mathrm{DP}\left[\delta_{i-1}, \delta_{i}\right]\end{aligned}\). In particular, DP(Ω) = 0 if and only if there is 0 ≤ j ≤ r, such that DP[δj-1,δj] = 0. By Theorem 1, DDTF[δi-1,δi] = 0 if
δi ∉ {(δ(i-1)L + δ(i-1)R,δ(i-1)L) ⊕ γ | γ ∈ {0, (0,kiL), (kiR,0), (kiR,kiL)}},
which means DP[δi-1,δi] = 0. Moreover, a valid differential characteristic Ω = (δ0,δ1,...,δr) should have the following form.
Ω = (δ0,δ1,...,δr) , δi = (δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (λiL,λiR)∗(kiR,kiL), (9)
where λiL,λiR ∈ {0,1}, and ki = (kiL,kiR) is the round key.
Theorem 2 For n-round DBISON, if the round keys satisfy kiR ∉ {k(i-1)L,k(i+1)L}, then there is no nontrivial differential characteristic whose probability equals 1.
Proof Assume Ω = (δ0,δ1,...,δn) is a nontrivial differential characteristic in (9) and DP[Ω] = 1, thus DP(δi −1,δi) = 1, i = 1,2,...,n. Especially, DP(δ0,δ1) = DP( δ1,δ2) = 1. By Theorem 1, DP[δ0,δ1] = 1 if and only if δ1 = (δ0L ⊕ δ0R,δ0L) and δ0 ∈ {0,(0,k1R), (k1L,k1L), (k1L,k1L ⊕ k1R)}.
If δ0 = 0, by Theorem 1, it can be deduced that δ1 = δ2 = ...= δn = 0, thus Ω is a trivial differential characteristic that holds with probability 1, which contradicts the assumption.
If δ0 = (0,k1R), then δ1 = (0 ⊕ k1R,0). Using DP (δ1,δ2) = 1 and Theorem 1, we have
(k1R,0) = δ1 ∈ {0, (0,k2R), (K2L,k2L), (k2L,k2L ⊕ k2R)}.
This contradicts the conditions that k1R ≠ 0 and k1R ≠ k2L.
If δ0 = (k1L,k1L), then δ1 = (k1L ⊕ k1L,k1L) = (0,k1L). From DP (δ1,δ2) = 1 and Theorem 1, it can be deduced that
(0,k1L) = δ1 ∈ {0, (0,k2R), (K2L,k2L), (k2L,k2L ⊕ k2R)}.
This contradicts the conditions that kiL ≠ 0 and k2R ≠ k1L.
If δ0 = (k1L,k1L ⊕ k1R), then δ1 = (k1L ⊕ k1R ⊕ k1L,k1L) = (k1R,k1L). Using DP (δ1,δ2) = 1 and Theorem 1, it can be deduced that
(k1R,k1L) = δ1 ∈ {0, (0,k2R), (K2L,k2L), (k2L,k2L ⊕ k2R)}.
Again, this violates the conditions that k1R ≠ 0 and k1R ≠ k2L.
From the above cases, it can be concluded that there is no nontrivial differential characteristic with probability 1.#
To prove that DBISON is resistant against differential cryptanalysis, we need to analyze its MDP.
Theorem 3 For the differential characteristic Ω given by (9), we have:
1) If there is δj = 0 and δj+1 ≠ 0, then DP [Ω] = 0.
2) If there is δj = 0 and δj-1 ≠ 0 , then DP [Ω] = 0.
Proof
1) By (9), using δj = 0 and δj+1 ≠ 0, it can be deduced that
δj+1 = (λjL,λjR)*(kjR,kjL) ∈ {((kjR,0), (0,kjL), (kjR,kjL)} .
If δj+1 = (kjR,0), then DDT[δj,δj+1] ≠ 2n since δj+1 ≠ (δjL ⊕ δjR,δjL). Also, DDT[δj,δj+1] ≠ 2n-2, since we can represent δj+1 = (δjL ⊕ δjR,δjL) ⊕ (kjR,0) and the assumption δjL = 0 contradicts Thereom 1. Moreover, DDT[δj,δj+1] ≠ 2n-1, since δj+1 ≠ (δjL ⊕ δjR,δjL), δj+1 ≠ (δjL ⊕ δjR,δjL) ⊕ (0,kjL), and representing δj+1 = (δjL ⊕ δjR,δjL) ⊕ (kjR,0) along with δjL ⊕ δjR = 0 implies that DDT[δj,δj+1] ≠ 2n-1.
If δj+1 = (0,kjL) , then DDT[δj,δj+1] ≠ 2n since δj+1 ≠ (δjL ⊕ δjR,δjL). Similarly, DDT[δj,δj+1] ≠ 2n-2 since δj+1 = (δjL ⊕ δjR,δjL) ⊕ (0,kjL) and δjL = 0 . Also, DDT[δj,δj+1] ≠ 2n-1 since δj+1 ≠ (δjL ⊕ δjR,δjL), δj+1 ≠ (δjL ⊕ δjR,δjL) ⊕ (kjR,0) and expressing δj+1 = (δjL ⊕ δjR,δjL) ⊕ (0,kjL) along with the assumption δjL = 0 proves the claim.
If δj+1 = (kjR,kjL), then DDT[δj,δj+1] ≠ 2n since δj+1 ≠ (δjL ⊕ δjR,δjL). Also, DDT[δj,δj+1] ≠ 2n-2 since δj+1 = (δjL ⊕ δjR,δjL) ⊕ (kjR,kjL) but δjL = 0. Finally, DDT[δj,δj+1] ≠ 2n-1 since δj+1 ≠ (δjL ⊕ δjR,δjL), δj+1 ≠ (δjL ⊕ δjR,δjL) ⊕ (0,kjL) and δj+1 ≠ (δjL ⊕ δjR,δjL) ⊕ (kjR,0).
Therefore, DP[δj,δj+1] = 0, and moreover DP[Ω] = 0.
The proof of 2) is similar to the proof of 1). #
Actually, from the result of Theorem 3, we only need to consider Ω in (9) when δi ≠ 0, i = 1,2,...,n.
Theorem 4 For n-round DBISON, let Ω be the n-round differential characteristics given by (9) with δi ≠ 0, i = 1,2,...,n. Let also the round keys satisfy kiR ∉ {k(i-1)L,kiL,k(i+1)L,kiL ⊕ k(i-1)L}.
If there is δj-1 such that DP[δj-1,δj] = 1, then DP[δj-2,δj-1] ≠ 1 and DP[δj,δj+1] ≠ 1.
Proof By Theorem 1 and using δi ≠ 0, i = 1,2,...,n, it is clear that DP[δj-1,δj] = 1 if and only if δj = (δ(j-1)L ⊕ δ(j-1)R,δ(j-1)L) and δj−1 ∈ {(0,kjR), (kjL,kjL), (kjL,kjL ⊕ kjR)}. DP[δj,δj+1] ≠ 1 can be proved using reduction to the absurd, the proof of DP[δj-2,δj-1] ≠ 1 is similar, thus it is omitted here.
Now, assuming that DP[δj,δj+1] = 1, by Theorem 1, DP[δj,δj+1] = 1 if and only if δj+1 = (δjL ⊕ δjR,δjL) and \(\begin{aligned}\delta_{j} \in A_{\delta_{j}}:=\left\{\left(\mathbf{0}, k_{(j+1) R}\right),\left(k_{(j+1) L}, k_{(j+1) L}\right),\left(k_{(j+1) L}, k_{(j+1) L} \oplus k_{(j+1) R}\right)\right\}\end{aligned}\).
If δj−1 = (0,kjR), using that DP[δj-1,δj] = 1, we get δj = (0 ⊕ kjR, 0) = (kjR,0). Combining this with DPDP[δj,δj+1] = 1, we have \(\begin{aligned}\left(k_{j R}, \mathbf{0}\right)=\delta_{j} \in A_{\delta_{j}}\end{aligned}\) which contradicts the condition that kiR ≠ k(i+1)L.
If δj-1 = (kjL,kjL), using that DP[δj-1,δj] = 1, we get δj = (kjL ⊕ kjL,kjL) = (0,kjL).
Combining this with DP[δj,δj+1] = 1, we have \(\begin{aligned}\left(\mathbf{0}, k_{j L}\right)=\delta_{j} \in A_{\delta_{j}}\end{aligned}\) which contradicts the condition that kiR ≠ k(i-1)L.
If δj-1 = (kjL,kjL ⊕ kjR), using that DP[δj-1,δj] = 1, we get
δj = (kjL ⊕ kjR ⊕ kjL,kjL) = (kjR,kjL).
Again, combining this with DP[δj, δj+1] = 1, we have \(\begin{aligned}\left(k_{j R}, k_{j L}\right)=\delta_{j} \in A_{\delta_{j}}\end{aligned}\) which contradicts the condition that kiR ≠ k(i+1)L.
Therefore, the assumption that DP[δj,δj+1] = 1 does not hold, thus DP[δj,δj+1] ≠ 1. #
By Theorem 4, we know that any two consecutive factors of \(\begin{aligned}\mathrm{DP}[\Omega]=\prod_{i=1}^{n} \mathrm{DP}\left[\delta_{i-1}, \delta_{i}\right]\end{aligned}\) cannot be 1 simultaneously, hence there are at most n/2 multiplicative factors that are equal 1. Moreover, because DP[δi-1,δi] ∈ {0, 1/22, 1/2, 1}, it is clear that DP[Ω] ≤ 2-n/2.
Theorem 5 For n-round DBISON, let Ω be the n-round differential characteristic given by (9), with δi ≠ 0, i = 1,2,...,n. Let the round keys satisfy:
kiR ∉ {k(i-1)L,kiL,k(i+1)L,k(i-1)L ⊕ kiL,k(i-2)R} and kiL ≠ k(i+1)L.
If DP[δi-2,δi-1] = DP[δi,δi+1] = 1, then DP[δi-1,δi] ≠ 1/2.
Proof Assume DP[δi-1,δi] = 1/2. By Theorem 1, DP[δi-1,δi] = 1/2 if and only if one of the following cases occurs.
Case 1.
δi = (δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ∈ {(0,δ(i-1)L), (kiR,δ(i-1)L), (δ(i-1)L ⊕ δ(i-1)R,0), (δ(i-1)L ⊕ δ(i-1)R,kiL) |δ(i-1)L ∉ {0,kiL}, δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}} := A1.
Using DP[δi,δi+1] = 1, we get \(\begin{aligned}\delta_{i} \in A_{\delta_{i}}:=\left\{\left(\mathbf{0}, k_{(i+1) R}\right),\left(k_{(i+1) L}, k_{(i+1) L}\right),\left(k_{(i+1) L}, k_{(i+1) L} \oplus k_{(i+1) R}\right)\right\}\end{aligned}\). Due to the conditions that the round keys satisfy, \(\begin{aligned}A_{1} \cap A_{\delta_{i}} \neq \varnothing\end{aligned}\) if and only if δ(i-1)L = k(i+1)R. However, using DP[δi-2,δi-1] = 1, we get δ(i-1)L = δ(i-2)L ⊕ δ(i-2)R ∈ {k(i-1)R,0} which means k(i+1)R = k(i-1)R, a contradiction.
Case 2. δi = (δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (0,kiL), δ(i-1)L ⊕ δ(i-1)R ∈ {0,kiR} and δ(i-1)L ∉ {0,kiL}.
In this case, δi ∈ {(0,δ(i-1)L ⊕ kiL), (kiR,δ(i-1)L ⊕ kiL)|δ(i-1)L ∉ (0,kiL}} := A2. Using DP[δi,δi+1] = 1, we get \(\begin{aligned}\delta_{i} \in A_{\delta_{i}} \cdot A_{1} \cap A_{\delta_{i}} \neq \varnothing\end{aligned}\) if and only if δ(i-1)L ⊕ kiL = k(i+1)R. However, since DP[δi-2,δi-1] = 1, then δ(i-1)L = δ(i-2)L ⊕ δ(i-2)R ∈ {k(i-1)R,0} which implies that kiL = k(i+1)R ⊕ k(i-1)R or k(i-1)R, a contradiction.
Case 3. δi = (δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (kiR,0), δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR} and δ(i-1)L ∈ {0,kiL}.
In this case, δi ∈ {(δ(i-1)L ⊕ δ(i-1)R ⊕ kiR,0), (δ(i-1)L ⊕ δ(i-1)R ⊕ kiR,kiL)|δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}} := A3. By DP[δi,δi+1] = 1, we have \(\begin{aligned}\delta_{i} \in A_{\delta_{i}}\end{aligned}\). Then, the conditions imposed on the round keys imply that \(\begin{aligned}A_{3} \cap A_{\delta_{i}}=\varnothing\end{aligned}\).
To summarize, the assumption DP[δi-1,δi] = 1/2 cannot hold. #
Remark 2 For n-round DBISON, let Ω be the n-round differential characteristic given by (9) with δi ≠ 0, i = 1,2,...,n. Assuming that the round keys satisfy the conditions of Theorem 5, we cannot possibly have the case DP[Ω] = 1 × (1/2) × 1 × (1/2) × 1....
Theorem 6 For n-round DBISON, let Ω be the n-round differential characteristic given by (9) with δi ≠ 0, i = 1,2,...,n. Assume that the round keys satisfy
1) kiR ∉ {k(i-1)L, kiL, k(i+2)L, k(i-2)L ⊕ k(i-1)L, k(i-1)L ⊕ kiL,kiL ⊕ k(i+2)L,k(i-1)R}.
2) kiL ∉ {k(i-2)L, k(i-1)L, kiR ⊕ k(i+1)R, k(i+1)R ⊕ k(i+2)R}.
3) k(i-1)L ⊕ kiL ≠ kiR ⊕ k(i+1)R.
If DP[δi-2,δi-1] = DP[δi,δi+1] = 1, then DP[δi-1,δi] ≠ 1/22.
Proof Assume DP[δi-1,δi] = 1/22. By Theorem 1, DP[δi-1,δi] = 1/22 if and only if one of the following cases occurs.
Case 1. δi =(δ(i-1)L ⊕ δ(i-1)R, δ(i-1)L), δ(i-1)L ∉ {0,kiL} and δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}
Using DP[δi-2,δi-1] = DP[δi,δi+1] = 1, one can deduce:
δi+1 = (δiL ⊕ δiR,δiL) = (δ(i-1)R, δ(i-1)L ⊕ δ(i-1)R) = (δ(i-2)L, δ(i-2)R),
where δiL ∈ {0,k(i+1)L} := B1, and δ(i-2)R ∈ {k(i-1)R,k(i-1)L,k(i-1)L ⊕ k(i-1)R} := B2. The conditions on the round keys imply that B1 ∩ B2 = ∅, which contradicts the fact that δiL = δ(i-2)R.
Case 2. δi =(δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (0,kiL), δ(i-1)L ∉ {0,kiL} and δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}
Using DP[δi-2,δi-1] = DP[δi,δi+1] = 1, we get the following equation
δi+1 = (δiL ⊕ δiR,δiL) = (δ(i-1)R ⊕ kiL,δ(i-1)L ⊕ δ(i-1)R) = (δ(i-2)L ⊕ kiL,δ(i-2)R),
where δiL ⊕ δiR ∈ {0,k(i+1)R} := B3, and δ(i-2)L ⊕ kiL ∈ {kiL,k(i-1)L ⊕ kiL} := B4. The conditions on the round keys imply that B3 ∩ B4 = ∅, which contradicts the fact that δiL ⊕ δiR = δ(i-2)L⊕ kiL.
Case 3. δi =(δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (kiR,0), δ(i-1)L ∉ {0,kiL} and δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}
Using DP[δi-2,δi-1] = DP[δi,δi+1] = 1, we have
δi+1 = (δiL ⊕ δiR,δiL) = (δ(i-1)R ⊕ kiR,δ(i-1)L ⊕ δ(i-1)R ⊕ kiR) = (δ(i-2)L ⊕ kiR, δ(i-2)R ⊕ kiR),
where δiL ⊕ δiR ∈ B3, and δ(i-2)L ⊕ kiL ∈ {kiR,k(i-1)L ⊕ kiR} := B5. The assumptions on the round keys give that B3 ∩ B5 = ∅, which contradicts δiL ⊕ δiR = δ(i-2)L ⊕ kiR.
Case 4. δi =(δ(i-1)L ⊕ δ(i-1)R,δ(i-1)L) ⊕ (kiR,kiL), δ(i-1)L ∉ {0,kiL} and δ(i-1)L ⊕ δ(i-1)R ∉ {0,kiR}
Again, using DP[δi-2,δi-1] = DP[δi,δi+1] = 1, we obtain
δi+1 = (δiL ⊕ δiR,δiL) = (δ(i-1)R ⊕ kiR ⊕ kiL,δ(i-1)L ⊕ δ(i-1)R ⊕ kiR) = (δ(i-2)L ⊕ kiR ⊕ kiL,δ(i-2)R ⊕ kiR), where δiL ⊕ δiR ∈ B3, and δ(i-2)L ⊕ kiR ⊕ kiL∈ {kiR ⊕ kiL,kiR ⊕ k(i-1)L ⊕ kiL} := B6. Similarly as above, we get B3 ∩ B6 = ∅ which contradicts δiL ⊕ δiR = δ(i-2)L ⊕ kiR ⊕ kiL.
Therefore, the assumption that DP[δi-1,δi] = 1/22 cannot hold. #
Remark 3 For n-round DBISON, let Ω denote the n-round differential haracteristic given by (9) with δi ≠ 0, i = 1,2,...,n. Assuming that the round keys satisfy conditions in Theorem 6, it is impossible to have DP[Ω]=1 × (1/22) × (1/22) × 1... .
Theorem 7 For n-round DBISON, let Ω be the n-round differential characteristic given by (9), with δi ≠ 0, i = 1,2,...,n. Assume that the round keys satisfy kiR ∉ {k(i+1)R,kiL,k(i+1)L} and kiL ∉ {k(i+1)R,kiR ⊕ k(i+1)R}. If DP[δi-1,δi] = DP[δi+2,δi+3] = 1, then the following equalities cannot hold: DP[δi,δi+1] = DP[δi+1,δi+2] = 1/2.
Proof By Theorem 1, the conditions on the round keys, and DP[δi-1,δi] = 1, one can deduce that DP[δi,δi+1] =1/2 if and only if δi-1 = (kiL,kiL), δi = (0,kiL) , and δi+1 = (kiL ⊕ k(i+1)R,0).
Furthermore, DP[δi+1,δi+2] = 1/2 holds if and only if δi+2 = (kiL ⊕ k(i+1)R ⊕ k(i+2)R,kiL ⊕ k(i+1)R) or δi+2 = (kiL ⊕ k(i+1)R,kiL ⊕ k(i+2)L ⊕ k(i+1)R).
IF δi+2 = (kiL ⊕ k(i+1)R ⊕ k(i+2)R,kiL ⊕ k(i+1)R), then from Theorem 1 and D[δi+2,δi+3] = 1, it can be easily verified that
δi+3 = (δ(i+2)L ⊕ δ(i+2)R,δ(i+2)L) and δi+2 ∈ {(0,k(i+3)R), (k(i+3)L,k(i+3)L), (k(i+3)L,k(i+3)R ⊕ k(i+3)L)}.
This means that
(kiL ⊕ k(i+1)R ⊕ k(i+2)R,kiL ⊕ k(i+1)R) ∈ {(0,k(i+3)R), (k(i+3)L,k(i+3)L), (k(i+3)L,k(i+3)R ⊕ k(i+3)L)},
which contradicts the assumptions on the round keys. If δi+2 = (kiL ⊕ k(i+1)R,kiL ⊕ k(i+2)L ⊕ k(i+1)R), a similar conclusion is valid. #
Generalizing the conclusions given in Theorem 7, we observe the following.
Remark 4 For n-round DBISON, let Ω be the n-round differential characteristic given by (9) with δi ≠ 0, i = 1,2,...,n. Assuming that the round keys ki = (kiL,kiR) satisfy the conditions that kiR is linearly independent from kiL,k(i+1)L,...,k(i+l-2)L and kiL is linearly independent from kiR,k(i+1)R,...,k(i+l-2)R, then DP[δi,δi+1] = DP[δi+1,δi+2] = ... = DP[δi+l-2,δi+l-1] = \(\begin{aligned}\frac{1}{2}\end{aligned}\) and DP[δi-1,δi] = DP[δi+l-1,δi+l] = 1 cannot hold.
By Remarks 2, 3, 4, for n-round DBISON (whose round keys satisfy certain conditions) and Ω described by (9) with δi ≠ 0, i = 1,2,...,n, if there exists a differential characteristic of the form
\(\begin{aligned}\mathrm{DP}[\Omega]=\prod_{i=1}^{n} \operatorname{DP}\left[\delta_{i-1}, \delta_{i}\right]=1 \times(1 / 2) \times\left(1 / 2^{2}\right) \times 1 \times(1 / 2) \times\left(1 / 2^{2}\right) \times 1 \ldots\end{aligned}\),
then the probability of this differential characteristic is maximal. Then,
\(\begin{aligned}\prod_{i=1}^{n} \mathrm{DP}\left[\delta_{i-1}, \delta_{i}\right]=1 \times(1 / 2) \times\left(1 / 2^{2}\right) \times 1 \times(1 / 2) \times\left(1 / 2^{2}\right) \times 1 \ldots=1^{[n / 3\rceil}(1 / 2)^{\lceil(n-1) / 3\rceil}\left(1 / 2^{2}\right)^{[(n-2) / 3\rceil}:=h(n)\end{aligned}\).
Table 2 gives some values of h(n) for different n. Most notably, h(n)= 1/2n if n is divisible by 6, otherwise, h(n) = 1/2n-1.
Table 2. Values of h(n)
Remark 5 For n-round DBISON, we have MDP ≤ 1/2n-1 when the round keys satisfy the conditions given in the previous theorems. Therefore, we conclude that n-round DBISON is resistant against differential cryptanalysis.
4. Linear cryptanalysis of the DBISON block cipher
To evaluate the resistance of DBISON against linear cryptanalysis, we need to specify the linear approximation table (LAT) of the round function Fk,w (x). Recall that Fk,w (x) was defined in (1), where the linear functions \(\begin{aligned}\Phi_{k_{i L}}\end{aligned}\) and \(\begin{aligned}\Phi_{k_{i R}}\end{aligned}\) are given by:
\(\begin{aligned}\begin{array}{l}\Phi_{k_{L}}\left(x_{L}\right)=\left(x_{L_{\left.L_{(k L}\right)}} k_{L} \oplus x_{L}\right)\left[1, \ldots, i\left(k_{L}\right)-1, i\left(k_{L}\right)+1, \ldots, n / 2\right], \\ \Phi_{k_{R}}\left(x_{R}\right)=\left(x_{R_{i\left(k_{k}\right)}} k_{R} \oplus x_{R}\right)\left[1, \ldots, i\left(k_{R}\right)-1, i\left(k_{R}\right)+1, \ldots, n / 2\right]\end{array}\end{aligned}\) (10)
where i(kL) and i(kR) denote the indices of the lowest bit which is set to 1 in kL, kR, respectively. Moreover, it is easy to deduce that \(\begin{aligned}\Phi_{k_{L}}\end{aligned}\) and \(\begin{aligned}\Phi_{k_{R}}\end{aligned}\) are both linear functions, Ker \(\begin{aligned}\Phi_{k_{L}}=\{0,k_L\}\end{aligned}\), and Ker \(\begin{aligned}\Phi_{k_{R}}=\{0, k_R\}\end{aligned}\). In particular, the notation
\(\begin{aligned}\left(x_{i\left(k_{L}\right)} k_{L} \oplus x_{L}\right)\left[1, \ldots, i\left(k_{L}\right)-1, i\left(k_{L}\right)+1, \ldots, n / 2\right]\end{aligned}\)
refers to an (n/2-1)-bit vector, which consists of the bits of \(\begin{aligned}x_{i\left(k_{L}\right)} k_{L} \oplus x_{L}\end{aligned}\) except for the i(kL)th bit.
Theorem 8 For the round function Fk,w (x) of DBISON, which is defined by (2) and (10), the entries of LAT of Fk,w (x) are determined as:
1) \(\begin{aligned}\operatorname{LAT}_{F_{k, w}}[a, b]=2^{n-1}\end{aligned}\), if bL • kR = bR • kL = 0, aR = bL and aL ⊕ bL ⊕ bR = 0.
2) \(\begin{aligned}\operatorname{LAT}_{F_{k, w}}[a, b]= \pm 2^{(3 n / 2-1) / 2}\end{aligned}\), if bL • kR = 0, bR • kL = 1, aR = bL and aL ⊕ bL ⊕ bR = 0.
3) \(\begin{aligned}\operatorname{LAT}_{F_{k, w}}[a, b] \in\left(-2^{(3 n / 2-1) / 2}, 2^{(3 n / 2-1) / 2}\right)\end{aligned}\), if bL • kR = 1 and (aL ⊕ bL)•kR = 0.
4) Otherwise, \(\begin{aligned}\operatorname{LAT}_{F_{k, w}}[a, b]=0\end{aligned}\).
Proof By Definition 1, it is clear that
\(\begin{aligned}\begin{array}{l}\operatorname{LAT}_{F_{k, w}}[a, b]:=\left|\left\{x \in F_{2}^{n} \mid a \bullet x \oplus b \bullet F_{k, w}(x)=0\right\}\right|-2^{n-1}=\frac{1}{2} W_{F_{k, w}}(a, b) . \\ W_{F_{k, w}}(a, b):=\sum_{x \in F_{2}^{n}}(-1)^{a \cdot x \oplus b \cdot F_{k, w}(x)} \\ =\sum_{x \in F_{2}^{n}}(-1)^{a_{L} \cdot x_{L} \oplus a_{R} \bullet x_{R} \oplus b_{L} \cdot\left(x_{L} \oplus x_{R} \oplus f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L} \oplus x_{R}\right)\right) k_{R}\right) \oplus b_{R} \cdot\left(x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L}\right)} \\ =\sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \bullet k_{L}} \sum_{x_{R} \in F_{2}^{n / 2}}(-1)^{\left(a_{R} \oplus b_{L}\right) \cdot x_{R} \oplus f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right) \oplus \Phi_{k_{R}}\left(x_{R}\right)\right) b_{L} \bullet k_{R}} . \\\end{array}\end{aligned}\)
According to the value of bL • kR, \(\begin{aligned}W_{F_{k, w}}\end{aligned}\) (a,b) can be calculated in the following cases.
Case 1. bL • kR = 0.
In this case, \(\begin{aligned}W_{F_{k, w}}(a, b)=\sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \cdot k_{L}} \sum_{x_{R} \in F_{2}^{n / 2}}(-1)^{\left(a_{R} \oplus b_{L}\right) \cdot x_{R}}:=W_{1}\end{aligned}\).
If aR ≠ bL, then \(\begin{aligned}\sum_{x_{R} \in F_{2}^{n / 2}}(-1)^{\left(a_{R} \oplus b_{L}\right) \cdot x_{R}}=0\end{aligned}\), thus W1 = 0.
If aR = bL, then \(\begin{aligned}W_{1}=2^{n / 2} \sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \cdot k_{L}}\end{aligned}\). On the one hand, if bR • kL = 0, then \(\begin{aligned}W_{1}=2^{n / 2} \sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L}}=\left\{\begin{array}{ll}0, & \text { if } a_{L} \oplus b_{L} \oplus b_{R} \neq \mathbf{0}, \\ 2^{n}, & \text { if } a_{L} \oplus b_{L} \oplus b_{R}=\mathbf{0}.\end{array}\right.\end{aligned}\). On the other hand, if bR • kL = 1, then \(\begin{aligned}W_{1}=2^{n / 2} \sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)}\end{aligned}\). Assuming that \(\begin{aligned}\Phi_{k_{L}}\left(x_{L}\right)=y_{L}\end{aligned}\), using that \(\begin{aligned}\Phi_{k_{L}}\end{aligned}\) is linear and Ker \(\begin{aligned}\Phi_{k_{L}}=\left\{\mathbf{0}, k_{L}\right\}\end{aligned}\), we obtain
\(\begin{aligned} \sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)} & =\sum_{y_{L} \in F_{2}^{n / 2-1}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot y_{L}^{\prime} \oplus f_{L}\left(w_{L} \oplus y_{L}\right)}+\sum_{y_{L} \in F_{2}^{n / 2-1}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot\left(y_{L}^{\prime} \oplus k_{L}\right) \oplus f_{L}\left(w_{L} \oplus y_{L}\right)} \\ & =\left[1+(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot k_{L}}\right] \sum_{y_{L} \in F_{2}^{n / 2-1}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot y_{L}^{\prime} \oplus f_{L}\left(w_{L} \oplus y_{L}\right)}\end{aligned}\),
where y′L is the same as y with an additional bit set to zero at position i(kL). Furthermore, if (aL ⊕ bL ⊕ bR)•kL = 1, then W1 = 2n/2 x 0 = 0. if (aL ⊕ bL ⊕bR)•kL = 0, then
\(\begin{aligned}W_{1}=2^{n / 2+1} \sum_{y_{L} \in F_{2}^{n / 2-1}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot y_{L}^{\prime} \oplus f_{L}\left(w_{L} \oplus y_{L}\right)}\end{aligned}\)
Let wL ⊕ yL = uL, and accordingly \(\begin{aligned}W_{1}=2^{n / 2+1}(-1)^{\left(a_{L}^{\prime} \oplus b_{L}^{*} \oplus b_{R}^{*}\right) \cdot w_{L}} \sum_{u_{L} \in F_{2}^{m / 2-1}}(-1)^{\left(a_{L}^{\prime} \oplus b_{L}^{\prime} \oplus b_{R}^{\prime}\right) \cdot u_{L} \oplus f_{L}\left(u_{L}\right)}\end{aligned}\), where a"L is an (n/2-1)-dimensional vector obtained by removing the bit in position i(kL) of aL.
Since fL is a bent function, then W1 = 2n/2+1(-1)(a″L⊕b″L⊕b″R)•wL (±2(n/2-1)/2) = ±2(3n/2+1)/2.
Case 2. bL • kR = 1.
\(\begin{aligned}W_{F_{k, w}}(a, b)=\sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \bullet k_{L}} \sum_{x_{R} \in F_{2}^{n / 2}}(-1)^{\left(a_{R} \oplus b_{L}\right) \bullet x_{R} \oplus f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right) \oplus \Phi_{k_{R}}\left(x_{R}\right)\right)}\end{aligned}\)
For any fixed xL ∈ F2n/2, it can be calculated that
\(\begin{aligned}\sum_{x_{R} \in F_{2}^{n / 2}}(-1)^{\left(a_{R} \oplus b_{L}\right) \cdot x_{R} \oplus f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right) \oplus \Phi_{k_{R}}\left(x_{R}\right)\right)}=\left\{\begin{array}{ll}0, & \text { if }\left(a_{R} \oplus b_{L}\right) \bullet k_{R}=1, \\ \pm(-1)^{\left(a_{R}^{*} \oplus b_{L}^{\prime \prime}\right) \cdot\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right)\right)} 2^{(n / 2+1) / 2}, & \text { if }\left(a_{R} \oplus b_{L}\right) \bullet k_{R}=0\end{array}\right.\end{aligned}\).
Thus, if (aR ⊕ bL)•kR = 1, then \(\begin{aligned}W_{F_{k, w}}(a, b)=2^{n / 2} \times 0=0\left(a_{R} \oplus b_{L}\right) \bullet k_{R}=0\end{aligned}\), then
\(\begin{aligned}W_{F_{k, w}}(a, b)= \pm 2^{(n / 2+1) / 2} \sum_{x_{L} \in F_{2}^{n / 2}}(-1)^{\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \cdot x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \bullet k_{L} \oplus\left(a_{R}^{*} \oplus b_{L}^{\prime}\right) \cdot\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right)\right)}\end{aligned}\).
Thus, \(\begin{aligned}-2^{(3 n / 2+1) / 2} \leq W_{F_{k, w}}(a, b) \leq 2^{(3 n / 2+1) / 2}\end{aligned}\), where the equalities hold if and only if for all xL ∈ F2n/2, we have
\(\begin{aligned}\left(a_{R}^{\prime \prime} \oplus b_{L}^{\prime \prime}\right) \bullet\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{L}\right)\right) \oplus\left(a_{L} \oplus b_{L} \oplus b_{R}\right) \bullet x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) b_{R} \bullet k_{L}=0 \; \text {or} \;1 \end{aligned}\)
The probability that these extreme cases occurring is very small, thus we can suppose \(\begin{aligned}-2^{(3 n / 2+1) / 2}<W_{F_{k, w}}(a, b)<2^{(3 n / 2+1) / 2}\end{aligned}\)
Theorem 9 For DBISON cipher, let its round function Fk,w(x) be given by (2) and (10). If the number of rounds is r = n/2+3, then we have MLP < 2-(n-1) for n > 4.
Proof Assume that there exists a nontrivial linear characteristic θ = (θ0,θ1,...,θn/2+3). In particular, let the linear characteristic θ* = (θ0,θ1,...,θn/2) be such that LP(θi-1,θi) = 1, i = 1,2,...,n/2. By Theorem 8, we have LP(θi-1,θi) = 1 if and only if θiL • kiR = θiR • kiL = 0, θiL = θ(i-1)R and θiR = θ(i-1)L ⊕ θ(i-1)R. Note that there are two constraints (two-bit constraint conditions) for each round subkey, i.e. θiL • kiR = θiR • kiL = 0. In this case, considering n/2 rounds, the cardinality of a weak subkey set (satisfying the constraint conditions) should be only 2n x 2-2x(n/2) = 1 on average. On the other hand, if there are n/2+3 - n/2 = 3 rounds, then the linear characteristic θ* = (θn/2,θn/2+1,θn/2+2,θn/2+3) exists with probability [2-(n/2-1)]3 = 2-(3n/2-3). Therefore, MLP < 2-(n-1) for n > 4.
Remark 6. To resist algebraic attacks, the default round number should be at least 3n.
5. DBISON instances and implementation results
In this section, we discuss our implementation of DBISON encryption algorithm with input block size of 10 bits, where the generations of round keys, whitened keys and round constants are also specified. Similarly to the standard BISON encryption algorithm, the bent function used in this instance of DBISON is the quadratic function f(X1,X2) = X1 • X2, where Xi ∈ F25. The differential uniformity and nonlinearity for round-reduced versions of DBISON consisting of 30 rounds (alternatively 10 or 20 rounds) and for different instances (specifying different secret keys via LFSRs) are given. The truth table of one particular instance and the intermediate values for 30 encryption rounds are given in Appendix A and B, respectively.
Assume that the input bit string for DBISON is x = (x10,x9,...,x1), which is divided into two parts, i.e. xL = (x10,x9,...,x6) and XR = (x5,x4,...,x1). The first encryption round is described below.
• The encryption operation for the left branch includes the following five steps.
1) The left key kL is derived from the state of an LFSR, where the primitive polynomial used is x5 + x2 + 1, and the initial state belongs to F25∖{0}.
2) \(\begin{aligned}\Phi_{k_{L}}\left(x_{L}\right)=\left(x_{L_{L\left(k_{L}\right)}} k_{L} \oplus x_{L}\right)\left[1, \ldots, i\left(k_{L}\right)-1, i\left(k_{L}\right)+1, \ldots, 5\right]\end{aligned}\).
3) The left whitened key wL is derived from the state of another LFSR, where the primitive polynomial used is x4 + x3 + 1, and the initial state is fixed by (1, 0, 0, 0). The round constant CL is derived from the state of the same LFSR, and the initial state is given by (0, 0, 0, 1).
4) \(\begin{aligned}\Phi_{k_{L}}\left(x_{L}\right) \oplus w_{L} \oplus C_{L}=\left(y_{4}, y_{3}, y_{2}, y_{1}\right)\end{aligned}\), f(y4,y3,y2,y1) = y4y2 ⊕ y3y1 ⊕ bL, and bL = 0 for the first r/2 rounds, and bL = 1 for the remaining r/2 rounds, where r is the number of rounds.
5) The value of xL ⊕ f(y4,y3,y2,y1)kL is calculated.
• The encryption operation for the right branch contains the five portions below. In particular, the input string for the right branch is xL⊕ xR, denote it as x′R.
1) The right-hand part of the key kR is derived from the state of an LFSR, where the primitive polynomial used is given by x5 + x3 + 1, and the initial state belongs to F25∖{0}.
2) \(\begin{aligned}\Phi_{k_{R}}\left(x_{R}^{\prime}\right)=\left(x_{R_{i\left(k_{R}\right)}^{\prime}}^{\prime} k_{R} \oplus x_{R}^{\prime}\right)\left[1, \ldots, i\left(k_{R}\right)-1, i\left(k_{R}\right)+1, \ldots, 5\right]\end{aligned}\).
3) The right-hand part of the whitened key wR is derived from the state of another LFSR, the primitive polynomial used is given by x4 + x +1, and the initial state is fixed by (1, 0, 0, 1). The round constant CR is derived from the state of the same LFSR, and the initial state is fixed by (0, 0, 0, 1).
4) \(\begin{aligned}\Phi_{k_{R}}\left(x_{R}^{\prime}\right) \oplus w_{R} \oplus C_{R}=\left(y_{4}^{\prime}, y_{3}^{\prime}, y_{2}^{\prime}, y_{1}^{\prime}\right)\end{aligned}\), f(y'4,y'3,y'2,y'1) = y'4y'2⊕y'3y'1⊕bR, and bR = 0 for the first r/2 rounds and bR = 1 for the remaining r/2 rounds, where r is the number of rounds.
5) The value of x'R ⊕ f(y'4,y'3,y'2,y'1)kR is calculated.
Finally, the output value of the first round is (x'R ⊕ f(y'4,y'3,y'2,y'1)kR, xL ⊕ f(y4,y3,y2,y1)kL). Similarly, in the second round, k, w and C are also derived from the states of the corresponding LFSRs in the next clock, and so on. More specifically, the initial state of the LFSR for deriving kL in the first encryption round is fixed to any value in F25∖{0}. On the other hand, the initial state of the LFSR for deriving kR in the first round, selects another value kL in F25∖{0}. This gives in total 930 instances (different keys) of DBISON which we have checked. The differential uniformities and nonlinearities of these instances for DBISON that implements 10, 20 and 30 encryption rounds are verified, respectively. These results are described in Fig. 2 and Fig. 3. In particular, the horizontal axis represents the value of the differential uniformity (nonlinearity), whereas the vertical axis is the number of instances whose differential uniformity (nonlinearity) is fixed.
Fig. 2(a). The differential uniformities of 10-round DBISON
Fig. 2(b). The nonlinearities of 10-round DBISON
Fig. 3(a). The differential uniformities of 30-round DBISON
Fig. 3(b). The nonlinearities of 30-round DBISON
In Fig. 2, for DBISON consisting of 10 encryption rounds, the differential uniformity is mainly distributed among the values 12, 14, 16 and 18. Actually, these values have a percentage of approximately 92.26%. On the other hand, the maximal nonlinearity that has been achieved in the simulations is 440. Also, the nonlinearity in the range between 384 and 440 stands for the percentage of approximately 95.91%. In fact, it means that these functions achieve relatively high nonlinearity. (note that the nonlinearity of bent functions is 496, and the nonlinearity of almost optimal functions is 480 when n=10.) Moreover, the best differential uniformity of these instances is 14, and the nonlinearity is 440, which is quite close to the almost optimal functions. This illustrates that most of these DBISON instances have quite good differential uniformity and nonlinearity, though only 10 encryption rounds are considered.
Fig. 3(a) illustrates that the differential uniformity takes values 12 and 14 with the percentage of approximately 93.51%, when the number of rounds is 30. The nonlinearity distribution is given in Fig. 3(b) and the nonlinearities between 428 and 442 occur with the percentage of approximately 95.2%. There exist many DBISON instances, using 30 rounds, whose differential uniformity equals 12 and having nonlinearity 442. The truth table of one of these instances is given in Appendix A, whereas the test vectors for each round are provided in Appendix B.
In addition, the differential uniformities and nonlinearities of DBISON instances using 20 rounds can be found in Appendix C. Comparing the 20-round and 30-round results, it is clear that their performances are quite close (of course 30-round DBISON is somewhat better). Of course, all DBISON instances are balanced bijections. Therefore, DBISON has quite good cryptographic performance.
Similarly to the encryption operation, the decryptions of left branch and right branch are also performed in parallel. More precisely, let \(\begin{aligned}\tau_{L}\left(x_{L}\right)=x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L}\end{aligned}\), \(\begin{aligned}\tau_{R}\left(x_{R}\right)=x_{R} \oplus f_{R}\left(w_{R} \oplus \Phi_{k_{R}}\left(x_{R}\right)\right) k_{R}, x_{L}, \quad x_{R} \in F_{2}^{n / 2}\end{aligned}\), xL, xR ∈ F2n/2 . Then, τL and τR can be derived as below. For any xL ∈ F2n/2,
\(\begin{aligned} \tau_{L} \circ \tau_{L}\left(x_{L}\right) & =\tau_{L}\left(x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L}\right) \\ & =x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L}\right)\right) k_{L}\end{aligned}\).
If \(\begin{aligned}f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)=0\end{aligned}\), it is clear that τL ∘ τL(xL) = xL. If \(\begin{aligned}f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right)=1\end{aligned}\), then we have
\(\begin{aligned}\tau_{L} \circ \tau_{L}\left(x_{L}\right)=x_{L} \oplus k_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L} \oplus k_{L}\right)\right) k_{L}=x_{L} \oplus k_{L} \oplus f_{L}\left(w_{L} \oplus \Phi_{k_{L}}\left(x_{L}\right)\right) k_{L}=x_{L}\end{aligned}\),
because \(\begin{aligned}\operatorname{Ker} \Phi_{k_{L}}=\left\{\mathbf{0}, k_{L}\right\}\end{aligned}\). Thus, τL is involutory, and this also holds for τR.
Note that the round function F(x) of DBISON can be represented as F(x) = (τR(xL ⊕ xR), τL(xL)). Then, the output of the left branch is yL = τR(xL⊕ xR), and the output of the right branch is yR = τL(xL) . Since both τL and τR are involutory, we have xL = τL(yR), xL ⊕ xR = τR(yL), that is, xR = τR(yL) ⊕ τL(yR). The round decryption function is F-1(y) = (τL(yR), τR(yL) ⊕ τL(yR)), see Fig. 4. Therefore, the decryption process actually uses the reversed encryption round keys.
Fig. 4. The decryption round function F-1(y) of DBISON
6. Conclusion
In this paper, a new block cipher DBISON has been proposed, which employs double layers of a BISON-like construction. Compared to the original BISON cipher, DBISON divides the input into two halves and the nonlinear round function is computed in parallel, which results in a better performance in both software and hardware. Moreover, DBISON consisting of 3n rounds is provably resistant against differential and linear attacks. More precisely, it is shown the MDP is 1/2n-1 for n encryption rounds, and the MLP is strictly less than 1/2n-1 when (n/2+3) encryption rounds are used. Actually, if we select the data block size n = 258, then both MDP and MLP of DBISON are very close to the ideal value.
Appendix
References
- C. E. Shannon, "Communication theory of secrecy systems," Bell System Technical Journal, vol. 28, no. 4, pp. 656-715, 1949. https://doi.org/10.1002/j.1538-7305.1949.tb00928.x
- M. Kanda, "Practical security evaluation against differential and linear cryptanalyses for Feistel ciphers with SPN round function," in Proc. of SAC 2000: Selected Areas in Cryptography-SAC 2000, Ontario, Canada, pp. 324-338, 2000.
- J. Zhang and W. L. Wu, "Authenticated encryption based on SM4 round function," Acta Electronica Sinica, vol. 46, no.6, pp. 1294-1299, 2018.
- J. Daemen and V. Rijmen, The Design of Rijndael: AES - The Advanced Encryption Standard, Berlin, Germany: Springer, 2002.
- M. Matsui, "New block encryption algorithm MISTY," in Proc. of FSE 1997: Fast Software Encryption-FSE'97, Haifa, Israel, pp. 54-68, 1997.
- S. Vaudenay, "On the Lai-Massey scheme," in Proc. of Advances in Cryptology-ASIACRYPT'99, Singapore, pp. 8-19, 1999.
- A. Hamza, D. Shehzad, M. S. Sarfraz, et al., "Novel secure hybrid image steganography technique based on pattern matching," KSII Transactions on Internet and Information Systems, vol. 15, no. 3, pp. 1051-1077, 2021.
- J. Daemen and V. Rijmen, "Security of a wide trail design," in Proc. of Cryptology-INDOCRYPT 2002, Hyderabad, India, pp. 1-11, 2002.
- L. Grassi, C. Rechberger, and S. Ronjom, "Subspace trail cryptanalysis and its applications to AES," IACR Trans. Symm.Cryptol, vol. 2016, no. 2, pp. 192-225, 2017.
- L. Grassi, C. Rechberger, and S. Ronjom, "A new structural-differential property of 5-round AES," in Proc. of EUROCRYPT 2017, Paris, France, pp. 289-317, 2017.
- S. Tessaro, "Optimally secure block ciphers from ideal primitives," in Proc. of ASIACRYPT 2015, Auckland, New Zealand, pp. 437-462, 2015.
- V. T. Hoang, B. Morris and P. Rogaway, "An enciphering scheme based on a card shuffle," in Proc. of CRYPTO 2012, California, USA, pp. 1-13, 2012.
- S. Vaudenay, "The end of encryption based on card shuffling," in Proc. of CRYPTO 2012 Rump Session, California, USA, 2012.
- A. Canteaut, V. Lallemand, G. Leander, et al., "BISON instantiating the Whitened Swap-Or-Not construction," in Proc. of EUROCRYPT 2019, Darmstadt, Germany, pp. 585-616, 2019.
- E. Biham and A. Shamir, "Differential cryptanalysis of DES-like cryptosystems," Journal of Cryptology, vol. 4, pp. 3-72, 1991. https://doi.org/10.1007/BF00630563
- T. Kranz, G. Leander and F. Wiemer, "Linear cryptanalysis: key schedules and tweakable block ciphers," IACR Trans. Symmetric Cryptol, vol. 2017, no. 1, pp. 474-505, 2017.
- N. T. Courtois and G. V. Bard, "Algebraic cryptanalysis of the Data Encryption Standard," in Proc. of Cryptography and Coding 2007, Cirencester, UK, pp. 152-169, 2007.
- A. Canteaut and J. Roue, "On the behaviors of affine equivalent S-boxes regarding differential and linear attacks," in Proc. of EUROCRYPT 2015, Sofia, Bulgaria, pp. 45-74, 2015.
- C. Li, B Sun, R. Li, et al., Attack Methods and Instances Analysis for Block Ciphers, Beijing, China: Science Press, 2010.
- X. Lai, J. L. Massey and S. Murphy, "Markov ciphers and differential cryptanalysis," in Proc. of EUROCRYPT 1991, Brighton, UK, pp. 17-38, 1991.