On the Frame Length of Achterbahn-128/80
Total Page:16
File Type:pdf, Size:1020Kb
On the frame length of Achterbahn-128/80 Rainer G¨ottfert Berndt M. Gammel Infineon Technologies AG Infineon Technologies AG Am Campeon 1–12 Am Campeon 1–12 D-85579 Neubiberg, Germany D-85579 Neubiberg, Germany rainer.goettfert@infineon.com berndt.gammel@infineon.com Abstract— In this paper we examine a correlation attack in the heuristic method that the sequence g(T )ζ reflects the against combination generators introduced by Meier et al. in 2006 probability distribution Pr(Y =0)= 1 (1 + 32). and extended to a more powerful tool by Naya-Plasencia. The 2 method has been used in the cryptanalysis of the stream ciphers II. THE SIMPLIFIED KEYSTREAM GENERATOR MODEL Achterbahn and Achterbahn-128/80. No mathematical proofs for Instead of working with a true combination generator in the method were given. We show that rigorous proofs can be given in an appropriate model, and that the implications derived which the sequences to be combined are, e.g., shift register from that model are in accordance with experimental results sequences, we shall work in a simplified model. In this model obtained from a true combination generator. We generalize the the input sequences to the Boolean combiner are replaced by new correlation attack and, using that generalization, show that periodic sequences of binary-valued random variables which the internal state of Achterbahn-128 can be recovered with 119 48.54 are assumed to be independent and symmetrically distributed. complexity 2 using 2 consecutive keystream bits. In order to investigate a lower bound for the frame length of Achterbahn- We shall use the following notation. If M is a set, then |M| 128 we consider another application of the generalized correlation denotes the cardinality of M. If D is a subset of the set of 2136 attack. This attack has complexity (higher than brute force) integers Z and n is a nonnegative integer, then Dmod n is the 244.99 and requires keystream bits. Similar results hold for corresponding subset of Z/nZ consisting of the elements of Achterbahn-80. Due to these findings our new recommendation reduced modulo . for the frame length of Achterbahn-128 and Achterbahn-80 is D n 244 bits. Theorem 1: Let F be a balanced Boolean function of n ≥ 1 variables having order of correlation immunity c with 0 ≤ c ≤ I. INTRODUCTION n − 1. Let p1,...,pn be n distinct nonnegative integers. For Consider a keystream generator (KSG) that consists of n each k =1,...,n, let devices producing binary periodic sequences and a Boolean X ∞ ∞ k = (Xki)i = (Xk,0,Xk,1,...,Xk,pk −1) (1) combining function which combines these sequences to gen- =0 erate the keystream. If the input sequences have relatively be a periodic sequence of binary-valued balanced random short periods—in comparison to the keystream—then a certain variables of least period pk such that the random variables correlation attack comes into play. This heuristic correlation Xki, 1 ≤ k ≤ n, 0 ≤ i ≤ pk − 1, are statistically independent. Z ∞ attack was introduced by Johansson, Meier, and Muller [4] Let = (Zi)i=0 be the sequence of binary-valued random and later on generalized by Naya-Plasencia [5]. The method variables defined by is in the spirit of linear cryptanalysis. No proof has been given Zi = F (X1,i,X2,i,...,Xn,i) for i =0, 1,... for the method. We shall generalize this correlation attack and present a rigorous proof for the attack in a simplified model. Let We give a brief description of the correlation attack as L = xi1 + xi2 + · · · + xim + a (2) introduced in [4]. Let F (x1,...,xn) be a balanced Boolean be an affine Boolean function of m variables, 1 ≤ m ≤ n. combining function that is correlation immune of order 4, say. Select an integer h with 1 ≤ h ≤ m and decompose the Let L = x1 + x2 + x3 + x4 + x5 be a linear approximation to set M = {i1,i2,...,im} into h mutually disjoint subsets F , so that Pr(F = L)= 1 (1 + ) with a nonzero correlation 2 M1,...,Mh. Compute the least common multiples coefficient . Let σ1,...,σn be the input sequences to F ∞ and let ζ = (zi)i=0 be the keystream. Since F and L are qj = lcm(pi : i ∈ Mj ), 1 ≤ j ≤ h. correlated, the sequences ζ and σ = σ1 +σ2 +σ3 +σ4 +σ5 are Choose nonnegative integers t1,...,th, and set rj = tj qj for correlated. Let pj be the least period of σj , 1 ≤ j ≤ 5, and let ∞ ∞ 1 ≤ j ≤ h. Consider the binary polynomial T : (bi)i=0 → (bi+1)i=0 be the shift operator, defined on the vector space of all binary sequences under termwise operations h rj d 5 pj g(x)= (x − 1) = x . on sequences. The polynomial g(x) = j=1(x − 1) is a j=1 d D characteristic polynomial of σ, so that g(T )σ = 0. Since Y X∈ Q Z ∞ the polynomial g(x) has 32 terms, g(T )[ζ + σ] = g(T )ζ The linear operator g(T ) and the sequence = (Zi)i=0 define Y Z is the termwise sum of 32 sequences. It has been assumed a new sequence = g(T ) with terms Yi = d∈D Zi+d. P h If m ≤ c +1 and |Dmod pj | = 2 for all 1 ≤ j ≤ n with and similar subsets of V : j∈ / M, then V0 ={x ∈ V : G(x)=0} = {x ∈ V : F (x)=1}, 1 h x x x x Pr(Y =0)= 1+ 2 for i =0, 1,..., (3) V1 ={ ∈ V : G( )=1} = { ∈ V : F ( )=0}. i 2 It suffices to show that Pr(G = 0|x = 0) = Pr(G = 0|x = where is the correlation coefficient between F and L, that 1 1 1). Equivalently, that |U | = |V |. Since F is balanced, is, = 2 Pr(F = L) − 1. 0 0 n−1 The special case m = c +1 and tj = 1 for 1 ≤ j ≤ h |U0| + |V1| =2 . corresponds to the method of Naya-Plasencia suggested in [5, n−1 We trivially have |V0| + |V1| = |V | = 2 . Hence, |U0| = page 5]. The special case m = c +1, h = m, and tj = 1 n−1 n−1 n−1 . for 1 ≤ j ≤ m, corresponds to the method of Meier et al. 2 − |V1| =2 − (2 − |V0|)= |V0| described in [4, page 10]. Lemma 3: Let the Boolean function F (x1,...,xn) be bal- Formula (3) need not hold if the stated assumptions in anced and correlation immune of order c. For 1 ≤ k ≤ c +1 Theorem 1 are not fulfilled. and 1 ≤ j1 < · · · < jk ≤ n, consider the Boolean function G(x1,...,xn)= F (x1,...,xn)+ xj1 + · · · + xjk . Then Example 1. The Boolean Function F (x1, x2, x3)= x1x2 + x1x3 + x2x3 is balanced and correlation immune of order Pr(G = e|xj1 = e1,...,xjk = ek) = Pr(G = e) c = 0. The linear function L = x1 + x2 is uncorrelated to k F , that is = 0. We have m = 2, so that the assumption for all e ∈{0, 1} and (ej1 ,...,ejk ) ∈{0, 1} . m ≤ c +1 is not fulfilled. Let g(x) = (xp1 − 1)(xp2 − 1) and Proof: It suffices to proof the assertion for D = {0,p1,p2,p1 + p2}. Assume that |Dmod p3 | = 4. One G(x1,...,xn)= F (x1,...,xn)+ x1 + · · · + xc+1. readily checks that the random variable Y0 satisfies Pr(Y0 = 0)=9/16. This result clearly contradicts formula (3). Since F is balanced and correlation immune of order c, any Example 2. Let F be the Boolean function from Exam- subfunction of F obtained by replacing arbitrary c variables ple 1. We use the linear approximation L = x1. We have of F with arbitrary binary constants is balanced. It follows Pr(F = L)=3/4 so that = 1/2. Assume that the periods (compare the proof of Lemma 2) that p1 p1,p2,p3 are distinct with p3 dividing p1. Let g(x)= x −1. Then D = {0,p1} and Dmod p3 = {0}, so that the second Pr(F =0|x1 = e1,...,xc+1 = ec+1) assumption in Theorem 1 is not fulfilled. In fact, we find for a/b if e1 + · · · + ec+1 =0 Y = F (X ,X ,X )+ F (X ,X ,X ) that Pr(Y = = 0 10 20 30 10 2p1 30 0 (b − a)/b if e + · · · + e =1 0)=3/4. This again contradicts formula (3). ( 1 c+1 For the proof of Theorem 1 we need some auxiliary results. with b = 2n−c−1, for some a ∈ {0, 1,...,b}, and for all The proof of the next lemma is straightforward and can be c+1 (e1,...,ec+1) ∈{0, 1} . It follows that skipped. Lemma 1: Let Rij , 1 ≤ i ≤ k, 1 ≤ j ≤ n, be a Pr(G =0|x1 = e1,...,xc+1 = ec+1)= a/b collection of k × n statistically independent binary-valued for all (e ,...,e ) ∈{0, 1}c+1. random variables, and let F be an arbitrary Boolean function 1 c+1 We are now ready for the proof of Theorem 1. of n variables. Then the k random variables S ,...,S defined 1 k Proof: All random variables of the sequence ∞ by (Yi)i=0 = g(T )(Z )∞ have the same probability distribution. It there- S = F (R , R ,...,R ) for 1 ≤ i ≤ k i i=0 i i1 i2 in fore suffices to examine one of those random variables, say are statistically independent. Y0. Let us denote Y0 by Y . Thus, Y = d∈D Zd. Lemma 2: Let F be a balanced Boolean function of The case m = n is trivial.