Improved Linear Analysis on Block Cipher MULTI2⋆
Total Page:16
File Type:pdf, Size:1020Kb
Improved Linear Analysis on Block Cipher MULTI2⋆ Yi Lu, Liping Ding, and Yongji Wang National Engineering Research Center of Fundamental Software, Institute of Software, Chinese Academy of Sciences, Beijing, China Abstract. Developed by Hitachi, MULTI2 is a block cipher used mainly to secure the multimedia content. It was registered in ISO/IEC 9979 and was patented in US and Japan. MULTI2 uses the Feistel structure and operates on the 64-bit blocks. The encryption key has 256 bits. This paper studies the linear analysis on MULTI2. We give a detailed bias analysis on MULTI2 round functions. For the first time formal proofs on − their bias properties are given. This allows to find a new 4-round bias 2 2. − . Previously, the best 4-round bias 2 5 7 was proposed. Using our results on the MULTI2 round functions, we propose the linear attacks on r-round MUTLI2 to recover the encryption key. Our linear attack can recover . the 256-bit encryption key in time 246, 260 4, 283 8, 291 7, 2123 4, 2123 2 of r-round encryptions for r = 8, 12, 16, 20, 24, 28 respectively. Further, we can recover the 32-bit sub-key in last round much faster than the whole encryption key recovery, i.e., in time 237 for r = 8, 12, 16, 20, 24. Note that previously, the best linear key-recovery attack was a 20-round . attack with time 293 4 (of 20-round encryptions) and data 239 2. As ISO register recommends to use at least 32 rounds, our attacks remain to be theoretical and do not threaten security for the practical use currently. Keywords: Block Cipher, Feistel Structure, MULTI2, Linear Analysis, Bias. 1 Introduction MULTI2 is a block cipher developed by Hitachi. It has been used mainly to secure the multimedia content. It was registered in ISO/IEC 9979 in 1994 and was patented in US and Japan [7]. MULTI2 is the only cipher specified in Japanese standard ARIB [3] for conditional access systems. ARIB is the basic standard of the recent ISDB (Integrated Services Digital Broadcasting), which is the Japanese standard for digital television and ⋆ This work is supported by the National Science and Technology Major Project un- der Grant No. 2010ZX01036-001-002 & 2010ZX01037-001-002, the Knowledge Inno- vation Key Directional Program of Chinese Academy of Sciences under Grant No. KGCX2-YW-125 & KGCX2-YW-174, and the National Natural Science Foundation of China under Grant No. 61170072. digital radio. MULTI2 adopts the Feistel structure and operates on the 64- bit blocks. The encryption key has 256 bits. The ISO register recommends to use at least 32 rounds. For a survey on backgrounds and the attacks on MULTI2, we refer to [2]. Table 1. Our linear key-recovery attacks on r-round MULTI2, and the time unit is one r-round encryption key-recovery attack r time data . [2]linearattack 20 293 4 239 2 . [2]guess-and-determineattack any r 2185 4 3 [2] related-key slide attack r =0(mod8) 2128/r 233 (strong assumptions on key relations) thispaper 8 246 217 . thispaper 12 260 4 233 . thispaper 16 283 8 249 . thispaper 20 291 7 263 . thispaper 24 2123 4 263 . thispaper 28 2123 2 263 This paper gives the linear analysis on MULTI2. Our main contribu- tions are the following. First, we give a detailed bias analysis on MULTI2 round functions. In particular, we give formal proofs on the bias prop- erties for the first time. This allows to discover new interesting results. Secondly, we give a new 4-round bias 2−2. Previously, the best 4-round bias 2−5.7 was proposed in [2]. Thirdly, using our results on the MULTI2 round functions, we propose the linear attacks on r-round MUTLI2 to recover the 256-bit encryption key for r = 8, 12, 16, 20, 24, 28. In Table 1, we give our attack results and compare with the best known key-recovery attacks [2]. Note that to recover the 32-bit sub-key in the last round we need (time, data): (237, 212.4) for r = 8, (237, 223.8) for r = 12, (237, 235.2) for r = 16, (237, 246.6) for r = 20, and (237, 258) for r = 24 respectively, which are much faster than the whole key recovery. Previously, the best linear key-recovery attack was a 20-round attack [2] with time 293.4 and data 239.2. The rest of the paper is organized as following. In Sect. 2, we give preliminaries on MULTI2 and review the related work. In Sect. 3, we present detailed analysis on MULTI2 round functions with formal proofs. In Sect. 4, we give a new 4-round distinguisher. This is the best known 4-round linear attack. We give the key-recovery attacks on MULTI2 in Sect. 5. Finally, we conclude in Sect. 6. 2 2 Preliminaries on MULTI2 MULTI2 (Multi-Media Encryption Algorithm 2) is a standard balanced Feistel structured block cipher [10]. The block length is 64 bits and each half branch has 32 bits. The ISO register entry recommends at least 32 rounds. The round functions are π1,π2,π3,π4 repeatedly every 4 rounds. The basic operations are XOR (denoted by ⊕), modulo 232 addition (de- noted by +) and subtraction (denoted by −), bit-wise left rotation (de- noted by ≪) and logical OR (denoted by OR). We give detailed descrip- tion and analysis on π1,π2,π3,π4 in Sect. 3. L0 R0 π1 k1 π2 k2,k3 π3 k4 π4 π1 k5 π2 k6,k7 π3 k8 π4 L R 8 . 8 . Fig. 1. MULTI2 encryption diagram The 256-bit encryption key consists of k1,k2,...,k8 of 32 bits each. The eight sub-keys are derived from a 256-bit system key and a 64-bit data key (see [2] for details). In this paper, we restrict ourselves to the 3 encryption key. Note that by the key schedule, we always have k4 = k2 ⊕ k3, (1) k8 = k6 ⊕ k7. (2) Thus, the 256-bit encryption key only consists of 32 × 6 = 192 unknown key bits. Note that Round 1 through Round 4 use sub-keys k1,...,k4 and Round 5 through Round 8 use sub-keys k5,...,k8. The eight sub- keys are used repeatedly every 8 rounds. Throughout the paper, let the 32-bit L0,R0 be the left half and right half of the plaintext respectively. We let Ln,Rn denote the left half and right half of the n-round MULTI2 output. Figure 1 shows MULTI2 encryption diagram. Previously, [1,2] studied linear analysis on MULTI2. Based on the 4- round bias 2−5.7 in [2], the best linear key-recovery attack [2] was proposed for 20-round MULTI2 to recover the encryption key. For this 20-round 1 attack, [2] proposes to recover k1,...,k4 with 32 × 3 = 96 unknown bits all together using 239.2 data, which needs 293.4 computations2 of 20-round encryptions. 3 Detailed Analysis on MULTI2 Round Functions We define the bias (also called imbalance [6, page 14]) of a binary random variable X by def bias(X) = | Pr(X = 0) − Pr(X = 1)|. (3) In this section, we discuss the bias properties for each of MULTI2 round functions in details. We not only give the detailed experimental results, but more importantly, we present formal proofs for our important results for the first time. The round function π1 is an identity function without def key mixing, π1(L) = L, which directly outputs the left half input to the right half. It is trivial to see that regardless of the distribution of L, we always have the bias 1 for α · (L ⊕ π1(L)) for any 32-bit α. Below, we discuss the bias properties for the other round functions. 1 By Eq.(1), k1, . , k4 only contain 96 unknown bits. 2 Throughout the paper, we adopt the conventional time unit of one r-round encryp- tion for time estimate of the r-round attack; this makes easy to compare with the L time complexity O(2 ) of exhaustive search, where L denotes the key size. 4 3.1 Analysis of π2 The function π2 takes two inputs of 32 bits each, R and ki, and it is defined by π2(R,ki)=(x ≪ 4) ⊕ x, (4) and x = ((R + ki) ≪ 1) + R + ki − 1. (5) 3 Previously, [2] reported the bias 1 for 0xaaaaaaaa · π2(R,ki) by experi- ments. Below, we give the complete results with formal proofs on the bias properties of π2. Note that x as defined in (5) is not uniformly distributed assuming R,ki are random with uniform distribution. We first analyze a simplified case, in which we let x come from a truly random source rather than generated by R,ki. ′ Property 1. Given 32-bit x, let π2(x)=(x ≪ 4) ⊕ x. We assume that x ′ is random with uniform distribution. Then, the bias for α · π2(x) is 1, if α is in the set E1 defined below {0x11111111, 0x22222222, 0x33333333, 0x44444444, 0x55555555, 0x66666666, 0x77777777, 0x88888888, 0x99999999, 0xaaaaaaaa, 0xbbbbbbbb, 0xcccccccc, 0xdddddddd, 0xeeeeeeee, 0xffffffff}; ′ and the bias for α · π2(x) is 0, if α∈E / 1 ∪ {0}. Proof. For the first half of the results, we show a more general result, ′ i.e., the bias for α · π2(x) is 1 with any distribution of x if α ∈ E1. We demonstrate with the input mask α = 0x11111111 assuming x complies with any distribution as follows. On one hand, we have α · (x ≪ 4) = x[28] ⊕ x[0] ⊕ x[4] ⊕ x[8] ⊕ x[12] ⊕ x[16] ⊕ x[20] ⊕ x[24], where x[0] denotes the Least Significant Bit (LSB) of x.