An average case analysis of a dierential attack. on a class of SP-networks. Distributed Systems Technology Centre, and

Similar documents
Towards Provable Security of Substitution-Permutation Encryption Networks

Differential-Linear Cryptanalysis of Serpent

Substitution-Permutation Networks Resistant to Differential and Linear Cryptanalysis

Algebraic Techniques in Differential Cryptanalysis

DK-2800 Lyngby, Denmark, Mercierlaan 94, B{3001 Heverlee, Belgium,

SOBER Cryptanalysis. Daniel Bleichenbacher and Sarvar Patel Bell Laboratories Lucent Technologies

Structural Cryptanalysis of SASAS

AES side channel attacks protection using random isomorphisms

Technion - Computer Science Department - Technical Report CS0816.revised

of the Data Encryption Standard Fauzan Mirza

Ciphertext-only Cryptanalysis of a Substitution Permutation Network

7 Cryptanalysis. 7.1 Structural Attacks CA642: CRYPTOGRAPHY AND NUMBER THEORY 1

Cryptanalysis of Patarin s 2-Round Public Key System with S Boxes (2R)

Improved Impossible Differential Cryptanalysis of Rijndael and Crypton

Lecture 12: Block ciphers

On Correlation Between the Order of S-boxes and the Strength of DES

Smart Hill Climbing Finds Better Boolean Functions

An Extended DES. National Chiao Tung University Hsinchu, 300 Taiwan

Linear Cryptanalysis

Virtual isomorphisms of ciphers: is AES secure against differential / linear attack?

hold or a eistel cipher. We nevertheless prove that the bound given by Nyberg and Knudsen still holds or any round keys. This stronger result implies

Chapter 1 - Linear cryptanalysis.

Linear Cryptanalysis Using Multiple Approximations

Diffusion Analysis of F-function on KASUMI Algorithm Rizki Yugitama, Bety Hayat Susanti, Magfirawaty

Impossible Differential Cryptanalysis of Mini-AES

Correlation Attack to the Block Cipher RC5. and the Simplied Variants of RC6. 3 Fujitsu Laboratories LTD.

On the Distribution of Characteristics

Transform Domain Analysis of DES. Guang Gong and Solomon W. Golomb. University of Southern California. Tels and

Differential Attack on Five Rounds of the SC2000 Block Cipher

The rest of this paper is organized as follows. In x2 we explain how both detectable and undetectable trapdoors can be built into S-boxes. x3 deals wi

Cryptanalysis of Akelarre Niels Ferguson Bruce Schneier DigiCash bv Counterpane Systems Kruislaan E Minnehaha Parkway 1098 VA Amsterdam, Nethe

Codes and Cryptography. Jorge L. Villar. MAMME, Fall 2015 PART XII

New Results on Boomerang and Rectangle Attacks

Cube attack in finite fields of higher order

Block Cipher Cryptanalysis: An Overview

Lecture 4: DES and block ciphers

Avalanche Characteristics of Substitution- Permutation Encryption Networks

Automatic Search of Truncated Impossible Differentials for Word-Oriented Block Ciphers (Full Version)

Revisit and Cryptanalysis of a CAST Cipher

Division Property: a New Attack Against Block Ciphers

Stream ciphers I. Thomas Johansson. May 16, Dept. of EIT, Lund University, P.O. Box 118, Lund, Sweden

A Weak Cipher that Generates the Symmetric Group

Distinguishing Attacks on a Kind of Generalized Unbalanced Feistel Network

Experiments on the Multiple Linear Cryptanalysis of Reduced Round Serpent

Enhancing the Signal to Noise Ratio

Mitsuru Matsui , Ofuna, Kamakura, Kanagawa, 247, Japan. which are block ciphers with a 128-bit key, a 64-bit block and a variable

Impossible Differential-Linear Cryptanalysis of Reduced-Round CLEFIA-128

A SIMPLIFIED RIJNDAEL ALGORITHM AND ITS LINEAR AND DIFFERENTIAL CRYPTANALYSES

Linear Cryptanalysis of Reduced-Round PRESENT

Klein s and PTW Attacks on WEP

Chapter 2 - Differential cryptanalysis.

Complementing Feistel Ciphers

Algebraic nonlinearity and its applications to cryptography

A NEW ALGORITHM TO CONSTRUCT S-BOXES WITH HIGH DIFFUSION

Cellular Automata in Cryptography" Information Security Group,Royal Holloway, Abstract The cipher systems based on Cellular Automata proposed by Nandi

Cryptographically Robust Large Boolean Functions. Debdeep Mukhopadhyay CSE, IIT Kharagpur

Affine equivalence in the AES round function

Statistical and Algebraic Properties of DES

A Unified Method for Finding Impossible Differentials of Block Cipher Structures

New Results in the Linear Cryptanalysis of DES

Extended Criterion for Absence of Fixed Points

Thesis Research Notes

Differential properties of power functions

Cryptanalysis of the Stream Cipher ABC v2

On Reverse-Engineering S-boxes with Hidden Design Criteria or Structure

Truncated and Higher Order Differentials

S-box (Substitution box) is a basic component of symmetric

Cryptanalysis of a Generalized Unbalanced Feistel Network Structure

jorge 2 LSI-TEC, PKI Certification department

Analysis of SHA-1 in Encryption Mode

Improved Analysis of Some Simplified Variants of RC6

Related-Key Rectangle Attack on Round-reduced Khudra Block Cipher

Structural Cryptanalysis of SASAS

Impossible Differential Attacks on 13-Round CLEFIA-128

MasterMath Cryptology /2 - Cryptanalysis

Linear Cryptanalysis Using Multiple Linear Approximations

New Combined Attacks on Block Ciphers

Exercise Sheet Cryptography 1, 2011

Concurrent Error Detection in S-boxes 1

Linear Cryptanalysis of Reduced-Round Speck

Improved Slide Attacks

Improved Cascaded Stream Ciphers Using Feedback

Bit-Pattern Based Integral Attack

Key Recovery with Probabilistic Neutral Bits

Block Ciphers and Systems of Quadratic Equations

GENERALIZED NONLINEARITY OF S-BOXES. Sugata Gangopadhyay

Optimized Interpolation Attacks on LowMC

Well known bent functions satisfy both SAC and PC(l) for all l n, b not necessarily SAC(k) nor PC(l) of order k for k 1. On the other hand, balancedne

Security of the SMS4 Block Cipher Against Differential Cryptanalysis

Differential Cryptanalysis of the Stream Ciphers Py, Py6 and Pypy

Maximum Correlation Analysis of Nonlinear S-boxes in Stream Ciphers

Fast Correlation Attacks: an Algorithmic Point of View

Truncated differential cryptanalysis of five rounds of Salsa20

Impossible Boomerang Attack for Block Cipher Structures

A Five-Round Algebraic Property of the Advanced Encryption Standard

Classical Cryptography

KFC - The Krazy Feistel Cipher

Linear Cryptanalysis of RC5 and RC6

Cryptanalysis of the Light-Weight Cipher A2U2 First Draft version

DD2448 Foundations of Cryptography Lecture 3

Transcription:

An average case analysis of a dierential attack on a class of SP-networks Luke O'Connor Distributed Systems Technology Centre, and Information Security Research Center, QUT Brisbane, Australia Abstract We propose a dierential attack on tree-structured substitution-permutation networks. The number of chosen plaintexts required for the dierential attack to succeed is called the complexity. Our main result is to show that the expected complexity of the attack is linear in the size of the network. This is the rst rigorous result concerning the complexity of a dierential attack for a general class of product ciphers. 1 Introduction Dierential cryptanalysis [4] has been applied to a considerable number of block ciphers, with great success in most cases. The attack proceeds by nding a series of dierences known as a characteristic, or a set of related of characteristics known as a dierential, which then gives information about the secret key used in a cipher, when a sucient number of plaintext/ciphertext pairs are examined. Assume that we wish to determine the subkey K R that is being used in round R. The method of dierential cryptanalysis can be summarized as Step 1 Find a highly probable r-round characteristic (P; C 1 ; C 2 ; : : : ; C r ) which gives (partial) information about the input and output dierences of the round mapping F at round R ; Correspondence should be sent to DSTC, Level 12 ITE Building, QUT, Gardens Point, 2 George Street, GPO Box 2434, Brisbane Q 4001, Australia; Email oconnor@dstc.edu.au. 1

Step 2 Uniformly select a plaintext pair P; P 0 with dierence P and encrypt this pair, and assume that P; P 0 is a right pair in that correctly predicts the ciphertext dierences at each round. Determine the candidate subkeys K 0; K 0; : : : ; K 0 such 1 2 d that each Ki 0 could have caused the observed output dierence. Increment a counter for each candidate subkey Ki 0 ; Step 3 Repeat Step 2 until one subkey K 0 R is distinguished as being counted signicantly more often than other subkeys. Take K 0 R to be the actual subkey. If P; P 0 is a right pair then one of the candidate subkeys K1; 0 K2; 0 : : : ; Kd 0 is the actual subkey K R, and K R will be counted for each right pair. On the other hand, if P; P 0 is a wrong pair (not a right pair) then we assume that the candidate keys are independent of K R. So when P; P 0 is a right pair we record some information about K R, by incrementing its counter, but record only random information for wrong pairs, by incrementing counters of random keys. The attack succeeds if we can examine enough plaintext/ciphertext pairs so that the true key is counted `signicantly more times' than we expect a random key to be counted. It is then natural to dene the complexity M of a dierential cryptanalysis to be the number of encrypted plaintext pairs of a specied dierence required to determine the key or subkey. One of the shortcomings of the general dierential method as described above is the absence of a formula relating the probability p of a right pair to the complexity M of the attack. In general the complexity must be determined by trial and error. The signalto-noise ratio introduced by Biham and Shamir [3] determines the ratio between the number of times the right key is counted as compared to a random key, which inuences the complexity of the attack, but does not formally relate p and M. Miyano [8] has made progress is relating p and M, but his analysis is very heuristic. On the other hand, in linear cryptanalysis [7], for a parity relation of probability p, a data complexity of jp 1 2 j2 suces to determine information about the key with high probability. The main result of this paper is to display a dierential attack on a class of SPnetworks devised by Kam and Davida [6]. These SP-networks have the property that each ciphertext bit is provably a function of each plaintext bit, known as completeness or nondegeneracy. We prove (Theorem 4.1) that the expected complexity of our dierential attack to recover the keying information is M = O(Rn=m) where n = m R is the block size and the SP-network is constructed from m-bit bijections. Since the expected value of M is linear in the size of the network, we have a polynomial-time dierential attack for all such networks. This result is the rst rigorous analysis of a dierential attack on a large class of ciphers with no heuristic assumptions. Several other authors have also indicated weaknesses in the SP-network construction of Kam and Davida. Adams [1] observed that these networks exhibited a poor `avalanche eect' due to the specic permutations in the construction. Also, Heys and Tavares [5], by extending the work of Anderson [2], have been able to cryptanalyze a larger class of 2

SP-networks which contain the Kam and Davida networks. However, the attack we will present in this paper requires less the least chosen plaintext to recover the key in a Kam and Davida network. 2 The SP-networks of Kam and Davida From now on in the paper when we refer to SP-networks, or simply networks, we mean the SP-networks of Kam and Davida [6]. Assume that the network maps n-bit plaintexts P = p 1 ; p 2 ; : : : ; p n 2 Z n 2 to n-bit ciphertexts C = c 1 ; c 2 ; : : : ; c n 2 Z n 2. The network has R rounds, where each round consists of a substitution followed by a permutation. There are n=m S-boxes S in each round, comprised of two randomly selected m-to-m-bit invertible mappings 0 ; 1, one of which is selected by a key bit (see Figure 1). Such S-boxes will be called keyed S-boxes. Let the S-boxes at round r be S1; r S2; r : : : ; S r n=m for 1 r R, such that key bit k rj selects the substitution performed by Sj r, 1 r R, 1 j n=m. The network is constructed to have the following property (proven in [6]). S key bit... 0-1... S(X) S-box Figure 1: Keyed S-box in an SP-network. Lemma 2.1 For every S-box S r i at round r; 1 r < R, for the jth input to S r i, 1 j m, there exists a subset of network inputs A r ij fp 1; p 2 ; : : : ; p n g; ja r ij j = mr1, 3

for which complementing any bits in A r ij only eects the jth input to S r i. Moreover, the A r ij are disjoint, so that jar i j = mr when A r i = [ 1jmA r ij. 2 It can be shown that after round r, plaintext bit x i will inuence 3 r ciphertext bits. The spread of this inuence can be represented as a 3-ary tree of depth 3 having x i as its root, and all the ciphertext bits c j as leaves. Anderson [2] has called ciphers which exhibit this type of inuence for each variable tree ciphers. Essentially, tree ciphers are those ciphers for which the inuence of all variables increases geometrically from one round to the next. For this reason, the block size n is of the form n = m R. A recent attack by Heys and Tavares [5] on networks for tree ciphers, extending the initial work of Anderson [2], has a complexity of M = 2 m n1. We will prove that a dierential method can m1 be used to yield an attack with expected complexity M = O(Rn=m) when the network consists of keyed S-boxes. 3 Properties of XOR tables We will review those notions from dierential cryptanalysis [3] that will be required for our purposes. Let [] be a boolean predicate that evaluates to 0 or 1 such as [n is prime]. Let S 2 m be the set of all invertible m-bit mappings, which are called m-bit permutations or m-bit bijections. For a given 2 S 2 m and X; Y 2 Z m 2, dene (X; Y ) as (X; Y ) = X [(X) + (X 0 ) = Y ]: (1) X;X 0 2Z 2 m X=X+X 0 The distribution of (X; Y ) taken over all possible X; Y 2 Z m 2 XOR table for, denoted as XOR. is known as the Example 3.1 For a 3-bit bijection, let XOR be the 8 8 matrix where XOR (i; j) = (i; j), 0 i; j 7, where i; j are treated as 3-bit binary vectors. Observe that XOR (0; 0) = 8, and all other entries in the rst row or column of XOR() are zero. If 0 = (7; 2; 4; 1; 5; 6; 3; 0) and 1 = (5; 1; 7; 6; 2; 4; 0; 3) then XOR 0 = 2 64 8 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 75 XOR 1 = 2 64 8 2 2 2 2 4 4 2 2 2 2 4 4 2 2 2 2 4 4 2 2 2 2 To emphasize the sparseness of these tables zero entries are represented as a `'. 2 4 3 75

The XOR table for an m-bit substitution has the following general form: XOR = 2 64 2 m 0 0 0 0 a 1;1 a 1;2 a 1;2 m 1 0 a 2;1 a 2;2 a 2;2 m 1.... 0 a 2 m 1;1 a 2 m 1;2 a 2 m 1;2 m 1 3 75 = " 2 m 0 0 A # : (2) For a given mapping let X; Y be an impossible dierence if the XOR table entry of X; Y for is zero. The following theorem is due to O'Connor [9]. Theorem 3.1 Let be selected uniformly from S 2 m. Then the expected fraction of impossible dierences in XOR for which X 6= 0 is tending to e 1 2 = 0:6065. 2 Thus approximately 60% of entries in the XOR table for a bijective mapping are impossible when X 6= 0. We will use this property of the XOR tables to distinguish between the two permutations in a keyed S-box. 4 A dierential attack In networks, each S-box S i is keyed to select one of two possible substitutions 0 ; 1 2 S 2 m, that are assumed to be xed and public for each S-box. For two plaintexts P and P 0, let X i and Xi 0 be the respective inputs entering S i, such that X i = X i + Xi 0 is the input dierence, and Y i = S(X i ) + S(Xi) 0 is the output dierence. For sake of illustration let S i be keyed to implement 0 so that the XOR table for S i is actually XOR 0. Since 0 and 1 are independent, Theorem 3.1 states that approximately 60% of the time the entry for the pair X i ; Y i in XOR 1 will be zero (impossible), allowing 0 to be identied as the keyed substitution. The attack proceeds by repeatedly applying this observation to the S-boxes of the network. From Lemma 2.1 it is possible to nd P and P 0 such that w(x i ) = 1, where w() is the Hamming weight function. Since 0 and 1 are invertible, there exists a; b 2 Z m 2 such that 0 (a) = 1 (b) = Y i and a 0 ; b 0 such that 0 (a 0 ) = 1 (b 0 ) = Y 0. If a + i a0 6= b + b 0 then we will say that 0 and 1 can be distinguished by considering an input dierence of X i. Formally, two substitutions 0 ; 1 can be distinguished if there is a 6-tuple (X i ; Y i ; a; a 0 ; b; b 0 ) such that 0 (a) + 0 (a 0 ) = 1 (b) + 1 (b 0 ) = Y i and a + a 0 = X i or b + b 0 = X i but not both. Example 4.1 Let S i be a 3-bit S-box such that 0 = (7; 1; 0; 2; 5; 6; 3; 4) and 1 = (3; 2; 4; 7; 6; 1; 5; 0). If S i (X i ) = 4 then a = 7, b = 2 since 0 (7) = 4 and 1 (2) = 4. If the 2nd bit of X i can be complemented such that S(X i + 010) = 6, we then determine that a 0 = 5 and b 0 = 4. We conclude that S i is keyed to implement 0 since a + a 0 = 010 and b + b 0 = 110 6= 010. 2 5

The S-box attack outlined above can be directly applied to the S-boxes in the nal round of the network, and then to the next to nal round and so on, `peeling o' rounds until all key bits have been determined. At round r let the m inputs to S-box S r i be c 1 ; c 2 ; ; c m, where c j = f j (p 1j ; p 2j ; : : : ; p m r1 j), since by Lemma 2.1, each input depends on m r1 plaintext bits. Here f j is a boolean function which describes the dependencies between c j and the plaintext after r 1 rounds. Thus given two inputs that only dier in bit positions p ij, w(x i ) 1 since by Lemma 2.1 none of the other inputs to Si r depend on the bi ts p ij. For this reason we dene the following notation. If is an assignment to the m r1 plaintext bits p ij, 1 i m r1, then let P denote an assignment to the n plaintext bits p i where and P agree for the assignments of th e bits p ij, 1 i m r1. Similarly dene 0 P 0. Figure 2 shows our attack for nding the key at round r of an network based on distinguishing substitutions, assuming that the keys for rounds r + 1; : : : ; R 1; R have already been determined. For each S-box Si r at round r, the algorithm searches for two plaintexts P; P 0 such that X i = X i +Xi 0 = e j (the jth unit vector), determines a; a 0 ; b; b 0 as in Example 4.1, and attempts to distinguish between 0 and 1. 4.1 Analysis of the dierential attack The success of the attack outlined in Figure 2 depends on two quantities: (i) the number of plaintexts that are required to cause the input of an S-box to complement in one bit position, and (ii) the probability that S(X i ) and S(X 0), i w(x i) = 1, will permit 0 and 1 to be distinguished. To answer (i), observe that for any xed key, the network implements an invertible mapping, even if the number of rounds is truncated at r < R. Using this observation and the fact that c j is described by a balanced function f j, then after two random assignments to the p ij we expect the output of f j to be complemented. This implies that the repeat loop of Figure 2 will is expected to terminate after a constant number of iterations. Then if substitutions can be distinguished with high probability, only O(1) encryptions will be required to determine the key bit of a given S-box. To answer (ii), we note that the probability of 0 and 1 being distinguished is bounded from below by the probability that X i ; Y i is an impossible dierence in XOR 0 or XOR 1. If S i is keyed to implement j0 ; j 0 2 f0; 1g, it then follows that j0 (X i = X i + X 0 i; Y i = Y i + Y 0 i ) 2: (3) But as j1 ; j 1 = (j 0 + 1) mod 2, is chosen independently of j0 then X i ; Y i is an impossible dierence in j1 about 60% of the time from Theorem 3.1. Thus we expect only two dierences X 1;j ; Y 1;j and X 2;j ; Y 2;j to be selected before at least one of these dierences is impossible in j1. If this is the case then it follows that 0 and 1 can be distinguished and the key bit for S i determined. We can now prove the following theorem. 6

for i 1 to n=m do distinguished false ; j 1 while not distinguished and j m do repeat random assignment to p 1j ; p 2j ; : : : ; p m r1 j 0 random assignment to p 1j ; p 2j ; : : : ; p m r1 j P random assignment to p 1 ; p 2 ; : : : ; p n such that P P 0 such that 0 P 0 and P 0 agrees with P on the assignments of the bits outside of 0 Y i output of S r i on encrypting P Yi 0 output of Si r on encrypting P 0 until Y i 6= Y 0 i f X i = e j = X i + X 0 i g od od a solve( 0 (a) = Y i ); a 0 solve( 0 (a 0 ) = Yi 0) ; b solve( 1 (b) = Y i ) ; b 0 solve( 1 (b 0 ) = Yi 0 ) ; if a + a 0 6= b + b 0 then distinguished true if a + a 0 = e j then output key bit is 0 for S r i else output key bit is 1 for Si r else j j + 1 Figure 2: Distinguishing substitutions at round r. 7

Theorem 4.1 Assuming all substitutions in the network are selected uniformly from S 2 m, then the number of encryptions required to recover the key for an network with Rn=m S-boxes is expected to be O(Rn=m). Proof. The expected number of encryptions required to generate two plaintexts whose input to a given S-box diers by one bit is a constant. Also, the expected number of encryptions required to distinguish between two independent permutations in any single S-box is expected to be a constant. Since the permutations in each S-box are chosen independently then O(Rn=m) encryptions are required to recover the key. 2 Our attack is probabilistic and samples at most m entries from the two XOR tables comprising a substitution, where the m possible input dierences are X i ; w(x i ) = 1. On average, only a constant number of these dierences need be examined to distinguish the substitution. Further, in the worst case, the probability that a substitution is not distinguished after considering all m such input dierences is approximately (1 e 1 2 ) m. In any case, if a particular sample of m XOR table entries fails to distinguish a substitution, the attack can be repeated with new sample entries until the substitution is distinguished. Also, in practice, the plaintext in Figure 2 could be chosen to maximize the probability of distinguishing the substitutions, rather than at random, since the S-boxes can be studied o-line. We have generated pairs 0 ; 1 of random m-bit substitutions and attempted to distinguish between these substitutions by using all characteristics X, w(x) = 1. The results of these experiments for m = 4; 5; 6; 7 are given in Table 1. For each value of m, 30,000 pairs of substitutions 0 ; 1 were generated, and let be the set of such pairs of substitutions. The rst two columns of the table are dened as Pr(not distinguish) = 1 jj max Pr(not distinguish) = max 0 ; 1 2 w(x)=1 X 0 ; 1 2 X w(x)=1 [ a + a 0 = b + b 0 ] m 2 m (4) [ a + a 0 = b + b 0 ] m 2 m : (5) Then Pr(not distinguish) is the probability that a random pair of substitutions will not be distinguished for some w(x) = 1. The third column gives the fraction of the XOR table that is zero which is approaching 0:6065 as expected from Theorem 3.1. Also, the fourth column gives the probability that exactly one of 0 (X; Y ) and 1 (X; Y ) is zero, which is approaching 2 (1 e 1 2 ) e 1 2 = 0:4773, also as expected by Theorem 3.1. Thus the probability of distinguishing the substitutions is high. 8

m Pr(not distinguish) max Pr(not distinguish) m;0 one zero 4 0.0666 0.7500 0.5873 0.4848 5 0.0323 0.3750 0.5968 0.4812 6 0.0158 0.1875 0.6017 0.4792 7 0.0078 0.1093 0.6041 0.4783 Table 1: Properties of XOR table for random m-bit substitutions. 5 Conclusion Dierential cryptanalysis is a method for recovering the key associated with an iterated mapping using dierences. In general it is dicult to determine the expected complexity of a dierential attack against a general class of product ciphers. We have presented a dierential attack on the SP-networks devised by Kam and Davida, and have also been able to provide a rigorous analysis of the expected complexity of this attack. Kam and Davida [6] have also proposed a variant of the basic SP-network where in addition to the substitution and permutation at each round, a key vector is XORed with the ciphertext before the substitution. Unfortunately this variant is also susceptible to a dierential attack. Let K i be the portion of the key vector that is XORed with the inputs to S-box S i. If X i = X i + X 0 i are the inputs to S i, then X i + K i and X 0 i + K i will be the actual inputs to S i, and the dierence of the inputs will still be X i. Thus the previously outlined attack can be applied to distinguish substitutions. Once the substitution that an S-box implements has been determined, the key vector K i to an S-box S i can be recovered using similar dierential methods that have been applied to the S-boxes of DES [3]. References [1] C. M. Adams. A formal and practical design procedure for Substitution-Permutation network cryptosystem. PhD thesis, Department of Electrical Engineering, Queen's Univeristy at Kingston, 1990. [2] R. J. Anderson. Tree functions and cipher systems. Cryptologia, XV(3):194{202, 1991. [3] E. Biham and A. Shamir. Dierential cryptanalysis of DES-like cryptosystems. Journal of Cryptology, 4(1):3{72, 1991. 9

[4] E. Biham and A. Shamir. Dierential cryptanalysis of Data Encryption Standard. Springer{Verlag, 1993. [5] H. M. Heys and S. E. Tavares. Cryptanalysis of tree-structured substitutionpermutation networks. IEE Electronics Letters, 29(1):40{41, 1993. [6] J. B. Kam and G. I. Davida. A structured design of substitution-permutation encryption networks. IEEE Transactions on Computers, 28(10):747{753, 1979. [7] M. Matsui. Linear cryptanalysis method for DES cipher. Advances in Cryptology, EUROCRYPT 93, Lecture Notes in Computer Science, vol. 765, T. Helleseth ed., Springer-Verlag, pages 386{397, 1994. [8] H. Miyano. A method to estimate the number of ciphertext pairs for dierential cryptanalysis. Advances in Cryptology, ASIACRYPT 91, Lecture Notes in Computer Science, vol. 739, H. Imai et al. ed., Springer-Verlag, pages 51{58, 1993. [9] L. J. O'Connor. On the distribution of characteristics in bijective mappings. Advances in Cryptology, EUROCRYPT 93, Lecture Notes in Computer Science, vol. 765, T. Helleseth ed., Springer-Verlag, pages 360{370, 1994. 10