Download Consider a Feistel cipher and assume, for simplicity, that the

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
Transcript
Principles of Linear Cryptanalysis
Consider a Feistel cipher and assume, for simplicity, that the round-key is
put in using xor-operation, that is, the f-function is of the form:
f(X ; K) = F(X⊕K),
where F: Z2m → Z2m is a function, X is the data input block and K is the
round key, both of equal length m. Consider two rounds.
Lo
Ro
F
K1
Ri = Li-1 ⊕F(Ri-1⊕ Ki)
L1
R1
F
L2
1
Li = Ri-1
K2
R2
Linear Cryptanalysis.PPT/ October 2002/ KN
For a ∈Z2 , a = (a1,a2,…,am), and X ∈Z2
m
Principles of Linear Cryptanalysis 2
m,
X = (X1,X2,…,Xm), we denote
a⋅X = a1X1 ⊕ a2X2 ⊕... ⊕ amXm
and say that a⋅X is a linear combination of the bits of X determined by a.
(Using this terminology, we can say that a new term in a sequence, generated by an
LFSR of length n, is a linear combination of n preceeding terms determined by the
feedback tap coefficients.)
Now we shall study how values of such linear combinations propagate in
a Feistel network. Fix b1∈ Z2m. Then
b1⋅ R1 = b1⋅ Lo ⊕ b1⋅ F(R0⊕ K1).
Assume that for a random input X to the function F we know that
b1⋅ F(X) = a1 ⋅ X
holds with certain probability PX{b1⋅ F(X) = a1 ⋅ X} = r(a1,b1) ≠ ½. Then
b1⋅ R1 = b1⋅ Lo ⊕ a1 ⋅(R0⊕ K1)
2
(3)
with the same probability r(a1,b1) if we can assume that X = R0⊕ K1 is
uniformly distributed.
Linear Cryptanalysis.PPT/ October 2002/ KN
Principles of Linear Cryptanalysis 3
Let us consider a second linear approximation relation for F,
b2⋅ F(X) = a2 ⋅ X,
which is known to hold with probability PX{b2⋅ F(X) = a2⋅ X} = r(a2,b2) ≠ ½,
and apply it to the second round of our Feistel network:
b2⋅ R2 = b2⋅ L1 ⊕ b2⋅ F(R1⊕ K2)
to obtain
b2⋅ R2 = b2⋅ L1 ⊕ a2 ⋅(R1⊕ K2)
(4)
Combining (3) and (4) and recalling that Ri-1 = Li, gives a two round linear
characteristic
b1⋅ Lo ⊕ (a1 ⊕b2 ) ⋅R0⊕ (b1 ⊕ a2 )⋅ L2 ⊕ b2⋅ R2 ⊕ a1 ⋅ K1 ⊕ a2 ⋅K2 = 0
(5)
which is depicted on the next page.
3
Linear Cryptanalysis.PPT/ October 2002/ KN
Principles of Linear Cryptanalysis 4
a1 ⊕ b2
b1
b1
b2
a2⊕ b1
F
F
a1
a2
b2
Next we shall determine the probability of the two round linear
approximation given the probabilities r(a1,b1) and r(a2,b2). For that
purpose we prove the following result.
4
Linear Cryptanalysis.PPT/ October 2002/ KN
Principles of Linear Cryptanalysis 5
Piling-up Lemma. Let X1, X2,…, Xn be independent binary random variables,
and denote P (Xi = 0) = pi , for i = 1,2,…,n. Consider the binary random
variable X = X1 ⊕ X2 ⊕ ... ⊕ Xn. Then
p = P(X = 0) = ½ + 2 n-1 ∏i=1…n (pi - ½), or what is the same:
2p -1 = ∏i=1…n (2pi - 1).
Remark. The quantity 2p -1 is called the correlation between X and 0. Let
q = 1 - p be the probability that X = 1. Then 2p-1 = 1 - 2(1-p) = -(2q -1).
Hence the absolute value of the correlation between X and a constant
value does not depend on the value of the constant.
Proof of the Lemma. The proof is by induction on n. Clearly, for n = 1, the
claim is true. Assume that it holds for n, and consider the claim for n + 1.
Denote X' = X1 ⊕ X2 ⊕ ... ⊕ Xn ⊕ Xn+1 = X ⊕ Xn+1 and p' = p(X' = 0). Then
p' = p pn+1 + (1-p)(1- pn+1) = 1-p - pn+1 + 2ppn+1 , and consequently
2p' -1 = 1-2p - 2pn+1 + 4ppn+1 = (2p -1) (2pn+1 - 1) = ∏i=1…n+1 (2pi - 1).
5
Linear Cryptanalysis.PPT/ October 2002/ KN
Principles of Linear Cryptanalysis 6
Let us now consider the probability of the two round linear characteristic:
r = PX (b1⋅ Lo ⊕ (a1 ⊕b2 ) ⋅R0 =(b1 ⊕ a2 )⋅ L2 ⊕ b2⋅ R2 ).
Denote by r' the probability of (5). Expression (5) and the above expression
differ only by the constant term a1⋅ K1 ⊕ a2 ⋅ K2, since the round keys are
fixed..Then by the remark after Piling-up Lemma, we have that |2r -1| =
|2r'-1|.
We assume that the random variables at round 1, expression (3), and
round 2, expression (4), are independent. Also recall that (5) was obtained
by xoring (3) and (4). Then the Piling-up Lemma applies and we get
|2r -1| = |2r' -1| =
|2P(b1⋅ R1 = b1⋅ Lo ⊕ a1 ⋅(R0⊕ K1) ) - 1||2P(b2⋅ R2 = b2⋅ L1 ⊕ a2 ⋅(R1⊕ K2) ) - 1|
= |2P(b1⋅ F(R0⊕ K1 ) = a1 ⋅(R0⊕ K1)) - 1| |2P(b2⋅ F(R1⊕ K2 ) = a2 ⋅(R1⊕ K2)) - 1|
= |2 r(a1, b1 ) - 1| |2 r(a2, b2 ) - 1|.
6
Linear Cryptanalysis.PPT/ October 2002/ KN
Principles of Linear Cryptanalysis 7
Similarly as with differential characteristics, linear approximations can be
chained from round to round. The data inputs are not truly independent,
but in practical applications, the Piling-up Lemma is usually found to give
good estimates of the overall correlation.
Iterative linear approximations, that is, linear approximations that can be
iterated by itself, are sometimes useful. However, the best linear
approximations over more than five rounds are based on a three round
characteristic which is chained with a trivial zero-to-zero approximation
(r(0,0) = 1!) followed by itself in inverse order. The strongest linear
approximations over DES always involve only one S-box at each round.
The probability of the best linear approximation over 14 rounds of the DES
has (estimated) probability ½ - 1.19 ⋅2-21 [M. Matsui: Linear Cryptanalysis
Method for DES Cipher, Eurocrypt '93, LNCS 765].
If the function F in bijection then r(0,b) = PX(0⋅X = b⋅F(X)) = 0, for all b ≠ 0.
This implies similar restrictions on the existence of one- and two-round
iterative linear approximation, as in differential cryptanalysis.
7
Linear Cryptanalysis.PPT/ October 2002/ KN