• No results found

Security of the IDEA Scheme

In document Provable secure scalable block ciphers (Page 101-107)





 1

|M|2[1 · 2 + (|M| − 2) · 1] if σ

0−1(−δ) > 0 1

|M|2[(|M| − 1) · 1] otherwise

≤ 1

|M|

3.

Pr[∃a ∈ M : δ ± σ0(a) /∈ σ0(M)] = 1

|M||{a|δ ± σ0(a) /∈ σ0(M)}|

= 1

|M|

{a|σ0(a) = ±(2m−1− δ)}

=













0 ifδ = 0 2

|M| ifδ = 2m−1 1

|M| otherwise

8.2 Security of the IDEA Scheme

In this section we study the security of the basicIDEA scheme with addition of the 1-bit left rotation. We discuss known plaintext, adaptive chosen plaintext, and adaptive chosen plaintext-ciphertext attack, and show how many rounds resist these attacks.

8.2.1 Known Plaintext Attack

Since the one-roundIDEA does not contain the left-rotation, we may apply the same attack against it as described in Distinguisher 8.1.

Theorem 8.2.1 LetF be a random function on a group M. Then a one-round IDEA Λσ[F ] is not secure against the known plaintext attack.

Proof: Consider Distinguisher 8.1. When the oracle implementsIDEA, the distinguisher D1always answers correctly, i.e.p0= 1. When the oracle implements a perfect random function, the probability that the condition holds isp1=|M|1 . Therefore the advantage of this distinguisher is

AdvCKPA(1)σ[F ]) ≥ AdvCDKPA(1)1σ[F ]) = |p0− p1| ≥ 1 − 1

|M|.

The one-roundIDEA is thus not secure against the known plaintext attack. However, adding one round makesIDEA resistent to this type of attack.

Theorem 8.2.2 LetF1, F2be two independent perfect random functions on a groupM, and let d be an integer. Then

AdvCKPA(d)σ[F1, F2]) ≤d2+ d + 1

|M| .

Proof: Ad-limited known-plaintext attack distinguisher has access to d plaintexts x1, x2, . . . , xdand corresponding ciphertextsy1, y2, . . . , yd. When the oracle implements theIDEA scheme, the ciphertexts are calculated as depicted in Figure 8.2.

We may assume that all inputs inX to the oracle are pairwise different. Let

Y = {Y = (y1, y2, . . . , yd)|∀k 6= l : ∆yk6= ∆yl}. Consider any fixed value of Y ∈ Y. Then Tk= ykif and only if∆Sk = ∆yk andTkL= L0k, i.e.

∆Sk = σ0(Lk+ F1(∆xk)) + ∆xk= ∆yk

TkL= SLk + F2(∆Sk) = SkL+ F2(∆yk) = L0k

94 CHAPTER 8. IDEA

Figure 8.2: The 2-round IDEA scheme

LetEkbe the following event:

Ek=h

F1(∆xk) ∈ σ0−1(∆yk− ∆xk) − Lk∧ F2(∆yk) = L0k− SkL

i.

Since all values∆ykare pairwise different, we have

Pr[∀k : F2(∆yk) = L0k− SkL] = 1

|M|d. LetC1andC2be the following conditions:

C1= [∀k 6= l : ∆xk 6= ∆xl] C2= [∀k : ∆yk− ∆xk ∈ σ0(M)]

If both the conditions are satisfied,

Pr[∀k : F1(∆xk) ∈ σ0−1(∆yk− ∆xk) − Lk] = Therefore, in that case

σ[F1, F2]]dX,Y ≥ 1

Since the values ofxkare chosen randomly,

Pr[¬C1] = Pr[∆xk = ∆xl] = Pr[Lk− Rk= Ll− Rl] = |M|1 . Further, Pr[¬C2] = Pr[∆yk− ∆xk∈ σ/ 0(M)]

(8.3)

|M|2 . Therefore, the probability that the conditions are not satisfied is

Pr[∃ k 6= l : ∆xk= ∆xl∨ ∃ k : ∆yk− ∆xk ∈ σ/ 0(M)] ≤ d2

2 |M|+ 2d

|M| =d2+ 4d 2 |M| .

Now we can use Corollary 3.1.4 with the following parameters:

1. ε1=2|M|d2 (since Pr[∃ k 6= l : ∆yk= ∆yl] ≤ 2|M|d2 ), 2. ε2=2 |M|d2 2, and

3. ε3=d2 |M|2+4d,

and we get

AdvCKPA(d)σ[F1, F2]) ≤ d2

2|M|+ d2

2 |M|2 +d2+ 4d

2 |M| ≤ d2− d + 1 + d2− d + 4d 2 |M|

≤ d2+ d + 1

|M|

8.2.2 Adaptive Chosen Plaintext Attack

Similarly as in the previous subsection, we first show that 2-roundIDEA is not secure against the chosen plaintext attacks, and then we prove the resistance of the 3-roundIDEA to the adaptive form of this type of attack, i.e. that it is pseudorandom.

Theorem 8.2.3 LetF1, andF2be two functions on a groupM. Then Λσ[F1, F2] is not secure against the chosen plaintext attack.

Proof: Consider the following distinguisher:

DISTINGUISHER8.2 (D2):2-limited CPA distinguisher for the 2-round IDEA

1. Choose two plaintextsx1 = [L1, R1] and x2 = [L2, R2] so that ∆ = L1− R1 = L2− R2.

2. Query the oracle withx1andx2, and gety1= [L01, R01] and y2= [L02, R02] . If the oracle implementsΛσ[F1, F2], then

yk= Λσ[F1, F2](xk) = [σ(Lk+ F1(∆)) + F2(∆k), Rk+ F1(∆) + F2(∆k)], where∆k= σ(Lk+ F1(∆)) − Rk− F1(∆) = σ0(Lk+ F1(∆)) + ∆.

Therefore,

∆yk= L0k− Rk0 = ∆k = σ0(Lk+ F1(∆)) + ∆, and

F1(∆) = σ0−1(∆yk− ∆) − Lk Hence,

σ0−1(∆y1− ∆) − L1= σ0−1(∆y2− ∆) − L2

3. If∆y1− ∆ /∈ σ(M), or ∆y2− ∆ /∈ σ(M) then output “reject”.

4. Ifσ0−1(∆y1− ∆) − L1= σ0−1(∆y2− ∆) − L2then output “accept”.

5. Output “reject”.

When the oracle implementsΛσ[F1, F2], then ∆yk− ∆ ∈ σ(M) for both k = 1, 2, and the distinguisher always answers correctly, i.e.p0= 1.

When the oracle implements a perfect random function, there are two cases:

• ∆yk− ∆ /∈ σ(M) for at least one of the responses. In this case, the probability that the distinguisher answers incorrectly is 0.

• If both ∆yk− ∆ (k = 1, 2) have a preimage in M, the probability that the distinguisher answers incorrectly is

Prh

σ0−1(∆y1− ∆) − L1= σ0−1(∆y2− ∆) − L2

i= 1

|M|. Therefore,p1|M|1 , and the overall advantage of this distinguisher is

AdvCCPA(2)σ[F1, F2]) ≥ AdvCDCPA(2)2σ[F1, F2]) = |p0− p1| ≥ 1 − 1

|M|.

96 CHAPTER 8. IDEA Theorem 8.2.4 LetF1, F2, F3 be three independent perfect random functions on a groupM, and d an integer. Then

AdvCACPA(d)σ[F1, F2, F3]) ≤ d2+ d + 1

|M| .

Proof: The proof is similar to the one of Theorem 8.2.2. Ad-limited known-plaintext attack

distinguisher has access tod plaintexts x1, x2, . . . , xdand corresponding ciphertextsy1, y2, . . . , yd. When the oracle implements theIDEA scheme, the ciphertexts are calculated as depicted in Figure 8.3.

Figure 8.3: The 3-round IDEA scheme

We may assume that all inputs inX to the oracle are pairwise different. Let

Y = {Y = (y1, y2, . . . , yd)|∀k 6= l : ∆yk6= ∆yl}. Consider any fixed value of Y ∈ Y. Then Uk = ykif and only if∆Tk = ∆ykandUkL= L0k, i.e.

∆Tk= σ0(SkL+ F2(∆Sk)) + ∆Sk= ∆yk

UkL= TkL+ F3(∆Tk) = TkL+ F3(∆yk) = L0k

LetEkbe the following event:

Ek =h

F2(∆Sk) ∈ σ0−1(∆yk− ∆Sk) − SkL∧ F3(∆yk) = L0k− TkL

i. Since all values∆ykare pairwise different

Pr[∀k : F3(∆y) = L0k− TkL] = 1

|M|d. LetC1andC2be the following conditions:

C1= [∀k 6= l : ∆Sk6= Sl] C2= [∀k : ∆yk− ∆Sk∈ σ0(M)]

If both the conditions are satisfied,

Pr[∀k : F2(∆Sk) ∈ σ0−1(∆yk− ∆Sk) − Lk] =

Therefore, in that case

σ[F1, F2, F3]]dX,Y ≥ 1

|M|2d =

|M|2d

|M|2d [C]dX,Y ≥ 1 − d2 2 |M|2

! [C]dX,Y

Now we evaluate the probability that the conditions are not satisfied. Since

∆Sk = σ0(Lk+ F1(∆xk)) + ∆xk, we get the following cases:

• If ∆xk = ∆xl:

SincexLk − xRk = ∆xk= ∆xl= xLl − xRl andxk 6= xlthenxLk 6= xLl. Thus xLk + F1(∆xk) 6= xLl + F1(∆xl), and a collision occurs if

σ0(xLk + F1(∆xk)) = σ0(xLl + F1(∆xl)). Therefore,

Pr[∆Sk= ∆Sl] = Pr[σ0(xLk + F1(∆xk)) = σ0(xLl + F1(∆xl))]

= Pr[∃a ∈ M : σ0(a) = σ0(a + δ)]

for a constantδ = xLk − xLl ∈ M \ {0}. From (8.1) we get that Pr[∆Sk = ∆Sl] ≤ |M|1 .

• If ∆xk 6= ∆xl∧ xLk + F1(∆xk) = xLl + F1(∆xl):

Thenσ0(xLk + F1(∆xk)) + ∆xk6= σ0(xLl + F1(∆xl)) + ∆xl, and Pr[∆Sk= ∆Sl] = 0.

• If ∆xk 6= ∆xl∧ xLk + F1(∆xk) 6= xLl + F1(∆xl):

Then Pr[∆Sk = ∆Sl] = Pr[∃a, b ∈ M : σ0(a) = σ0(b) + δ], for a constant δ = ∆xl− ∆xk∈ M \ {0}. From (8.2) we get that Pr[∆Sk = ∆Sl] ≤ |M|1 . Summarizing all three cases, Pr[∆Sk = ∆Sl] ≤ |M|1 .

Further, Pr[∆yk− ∆Sk ∈ σ/ 0(M)] = Pr[∆yk− σ0(xLk + F1(∆xk)) − ∆xk∈ σ/ 0(M)] = Pr[∃a ∈ M : δ − σ0(a) /∈ σ0(M)]

(8.3)

|M|2 for a constantδ = ∆yk− ∆xk. Therefore,

Pr[∃ k 6= l : ∆Sk= ∆Sl∨ ∃ k : ∆yk− ∆Sk ∈ σ/ 0(M)] ≤ d2

2 |M|+ 2d

|M| =d2+ 4d 2 |M| , and using Corollary 3.1.4 with the following parameters:

1. ε1=2|M|d2 (since Pr[∃ k 6= l : ∆yk= ∆yl] ≤ 2|M|d2 ), 2. ε2=2 |M|d2 2, and

3. ε3=d2 |M|2+4d,

we get the upper-bound on the advantage:

AdvCACPA(d)σ[F1, F2, F3]) ≤ d2

2|M|+ d2

2 |M|2 +d2+ 4d

2 |M| ≤d2+ d + 1

|M|

8.2.3 Adaptive Chosen Plaintext-Ciphertext Attack

Adaptive chosen plaintext-ciphertext attack is the strongest attack and resistance to it ensures super-pseudo-randomness of the scheme. We have not found any attack against the 3-roundIDEA, however, we can prove that the 4-roundIDEA resists the adaptive chosen-plaintext attack, and thus that it is super-pseudorandom.

Super-pseudorandomness of 3-roundIDEA is still an open problem.

Theorem 8.2.5 LetF1, F2, F3, F4be four independent perfect random functions on a groupM, and d an integer. Then

AdvCACPCA(d)σ[F1, F2, F3, F4]) ≤ d2+ d + 1

|M| .

98 CHAPTER 8. IDEA

Figure 8.4: The 4-round IDEA scheme

Proof: The proof is similar to the one of Theorem 8.2.2. Anyd-limited known-plaintext attack

distinguisher has access tod plaintexts x1, x2, . . . , xdand corresponding ciphertextsy1, y2, . . . , yd. When the oracle implements theIDEA scheme, the ciphertexts are calculated as depicted in Figure 8.4. We may assume that all inputs inX to the oracle are pairwise different. Let

λk= (Λσ)−1[F4](yk). Consider any fixed value of Y . Then Vk= ykif and only if

Probabilities that conditionsC1andC2are satisfied are evaluated in the proof of Theorem 8.2.4, and are as follows:

• Pr[¬C1] ≤2 |M|d2

8.3. SCALABLE SCHEME BASED ON IDEA 99

Figure 8.5: ScalableIDEA scheme

• Pr[¬C2] ≤|M|2d

Since∆λk = σ−1(yLk − F4(∆yk)) − ykL+ F4(∆yk) + ∆yk =

σ−1(ykL− F4(∆yk)) − σ(σ−1(ykL− F4(∆yk)) + ∆yk = −σ0−1(yLk − F4(∆yk)) + ∆yk, and sinceσ is a permutation, the probability Pr[∆λk= ∆λl] for a particular k and l can be analyzed in the same way as Pr[∆Sk 6= ∆Sl] with the same result

Pr[¬C3] ≤ d2 2 |M|, The parameters for Corollary 3.1.6 are now:

1. ε1=2 |M|d2 2, and

8.3 Scalable Scheme Based on IDEA

The straightforward way to scale the originalIDEA scheme is to divide the large input into sub-blocks of the length of the originalIDEA block size, and apply the original scheme to each sub-block. In order to achieve dependency of the output sub-blocks on all the input sub-blocks, we need to employ the block rotation as depicted in Figure 8.5. Note that the dependency on all the input blocks is necessary. Otherwise we could apply the attack described in the proof of the following theorem.

Theorem 8.3.1 Let C be a scalable encryption scheme, which divides the plaintext into n sub-blocks x = (a1, a2, . . . , an), and which calculates the ciphertext y = (b1, b2, . . . , bn) so that bi = aji  Fi(a1, a2, . . . , an) (without any restriction on the functions Fi), wherej1, j2, . . . , jn is a permutation on {1, 2, . . . , n}. If there are i and k such that the output of Fi(a1, a2, . . . , an) does not depend on ak, then the schemeC is not secure against the chosen plaintext attack.

Proof: Consider the following distinguisher:

In document Provable secure scalable block ciphers (Page 101-107)

Related documents