related key attacks
play

Related-Key Attacks Orr Dunkelman Department of Computer Science, - PowerPoint PPT Presentation

Related-Key Attacks Slide Statistical RK Related-Key Attacks Orr Dunkelman Department of Computer Science, University of Haifa Faculty of Mathematics and Computer Science Weizmann Institute of Science June 2nd, 2011 Orr Dunkelman


  1. Related-Key Attacks Slide Statistical RK Related-Key Attacks Orr Dunkelman Department of Computer Science, University of Haifa Faculty of Mathematics and Computer Science Weizmann Institute of Science June 2nd, 2011 Orr Dunkelman Related-Key Attacks 1/ 42

  2. Related-Key Attacks Slide Statistical RK Outline 1 The Related-Key Model The Related-Key Model First Related-Key Attack Second Related-Key Attack 2 The Slide Attack Introduction to Slide Attacks A Slide Attack on 2K-DES Advanced Slide Attacks The SlideX Attack 3 Statistical Related-Key Attacks Related-Key Differential Attacks Certificational Attacks on AES The Key Point Orr Dunkelman Related-Key Attacks 2/ 42

  3. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK The Related-Key Model ◮ Introduced by Biham and independently by Knudsen in 1993 [B93,K93]. ◮ A block cipher is a keyed permutation, i.e., E : { 0 , 1 } n × { 0 , 1 } k → { 0 , 1 } n (or E k : { 0 , 1 } n → { 0 , 1 } n ). ◮ Regular cryptanalytic attacks attack E by controlling the input/output of E k ( · ). ◮ In related-key attacks the adversary can ask to control k (chosen key attacks). ◮ This make look like a very strong notion, but the model allows for the adversary to control only the relation between keys. Orr Dunkelman Related-Key Attacks 3/ 42

  4. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK The Related-Key Model (cont.) ◮ In standard attacks, the adversary can query an oracle for E k . ◮ In related-key attacks, the adversary can query the oracles E k 1 , E k 2 , . . . ◮ The adversary is either aware of the relation between the keys or can choose the relation. ◮ This model which may look strong is actually not so far fetched: ◮ Real life protocols allow for that. ◮ When the block cipher is used as a compression function — the adversary may control actually control the key. ◮ In some cases, there are properties so “strong”, that it is sufficient to have access to encryption under one key. Orr Dunkelman Related-Key Attacks 4/ 42

  5. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK DES’s Complementation Property ◮ If the key is bitwise complemented, so are all the subkeys. K → K 1 , K 2 , . . . , K 16 and S 1 L i R i R i L i L i R i S 2 K → K 1 , K 2 , . . . , K 16 S 3 ◮ If the input to the round function is S 4 E P also bitwise complemented, the S 5 complementation is canceled. S 6 K i K i S 7 ◮ In other words, the input to the S 8 S-boxes is the same. And the output of the S-boxes (and the round). ◮ DES’s complementation property : DES K ( P ) = DES K ( P ) L i +1 L i +1 R i +1 L i +1 R i +1 R i +1 Orr Dunkelman Related-Key Attacks 5/ 42

  6. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK Using the Complementation Property ◮ Using the complementation property it is possible to speed up exhaustive key search of DES by a factor of 2. ◮ The adversary asks for the encryption of P and P . ◮ Let C 1 = E K ( P ) and C 2 = E K ( P ), where K is the unknown key. ◮ For each possible key k whose most significant bit is 0: 1 Check whether DES k ( P ) = C 1 (if yes, k is the key). 2 Check whether DES k ( P ) = C 2 (if yes, k is the key). Note that DES k ( P ) = C 2 ⇒ ( C 2 ) = DES k ( P ). As C 2 = DES K ( P ), then DES K ( P ) = DES k ( P ), i.e., K = k . Orr Dunkelman Related-Key Attacks 6/ 42

  7. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK A Related-Key Attack on a Slightly Modified DES K ′ P ′ ◮ Assume that all the rotations in the key schedule are all by 2 bits to the K ′ P K F 1 P left. = K ′ F K 1 F 2 ◮ Consider two keys K and K ′ , such that the subkeys produced by the = K ′ K 2 F F 3 key schedule algorithm satisfy = K ′ F K 3 F K i = K ′ 4 i +1 (i.e., . . . . . . K 1 = K ′ 2 , K 2 = K ′ 3 , . . . ). . . . ◮ Then the first 15 rounds of = K ′ K 15 F F 16 encryption under K are just like the C ′ last 15 rounds of encryption under C ′ K 16 F K ′ . C Orr Dunkelman Related-Key Attacks 7/ 42

  8. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK A Related-Key Attack on a Slightly Modified DES K ′ P ′ K ′ P K F 1 ◮ Let P = F K ′ 1 ( P ′ ). P = K ′ ◮ Due to the equality between the F K 1 F 2 functions, P and P ′ share 15 = K ′ K 2 F F 3 rounds of the encryption. = K ′ F K 3 F ◮ Thus, C = F K 16 ( C ′ ). 4 . . . . . . . . . ◮ Given ( P , C ) and ( P ′ , C ′ ), deducing K ′ 1 and K 16 (given DES’s round = K ′ K 15 F F 16 function) is easy. C ′ C ′ K 16 F C Orr Dunkelman Related-Key Attacks 8/ 42

  9. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK A Related-Key Attack on a Slightly Modified DES ◮ Ask for the encryption of 2 16 plaintexts P ′ i = ( A , x ′ i ) under K ′ . Let C ′ i = E K ′ ( P ′ i ). ◮ Ask for the encryption of 2 16 plaintexts P i = ( y ′ j , A ) under K . Let C j = E K ( P j ). 1 By birthday arguments there is a pair of values P ′ i which is encrypted under one round to P j . From this point forward, they are “evolving” together, and thus, C j = F K 16 ( C ′ i ). 2 From Feistel properties, that means that the left half of C ′ i is equal to the right half of C j . Orr Dunkelman Related-Key Attacks 9/ 42

  10. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK A Related-Key Attack on a Slightly Modified DES ◮ Search for a pair of ciphertexts C ′ i and C j such that the left half of C ′ i is equal to the right half of C j . ◮ Deduce that P j = F K ′ 1 ( P ′ i ) and that C j = F K 16 ( C ′ i ), and retrieve the key. ◮ This pair is called a related-key plaintext pair . ◮ Using this pair it is easy to deduce K ′ 1 and K 16 (which are also share bits between themselves). Data complexity : 2 16 CPs under two related-keys (the relation was chosen by the adversary). Time complexity : 2 17 encryptions (the analysis phase is very efficient). Orr Dunkelman Related-Key Attacks 10/ 42

  11. Model First Attack Second Attack Related-Key Attacks Slide Statistical RK A Second Attack on a Slightly Modified DES ◮ For this modification of DES, it is possible to offer an attack which has access to only one key. ◮ The attack is an extension of the complementation property: Each key K has 5 other keys which induce a related-encryption process. ◮ Hence, using 2 34 chosen plaintexts encrypted under one , we can analyze 6 keys(!) using a trial encryption. Orr Dunkelman Related-Key Attacks 11/ 42

  12. Intro 2K-DES Advanced SlideX Related-Key Attacks Slide Statistical RK The Slide Attack ◮ Presented by Biryukov and Wagner P K in 1999. K 1 F ◮ Can be applied to ciphers with the K 1 F same keyed permutation. ◮ Independent of the number of K 1 F rounds of the cipher. . . . . . . ◮ To some extent, this attack is a related-key plaintext attack when K 1 F the key is its own related-key. F K 1 C Orr Dunkelman Related-Key Attacks 12/ 42

  13. Intro 2K-DES Advanced SlideX Related-Key Attacks Slide Statistical RK An Example — Slide Attack on 2K-DES K P ′ ◮ Consider a variant of DES with 2 r K 1 P K F rounds, where the subkeys are P ( K 1 , K 2 , K 1 , K 2 , . . . , K 1 , K 2 ). = F K 1 K 1 F ◮ This variant has 96-bit key, and if r = K 1 K 1 F F is large enough, no conventional attacks apply. = F K 1 K 1 F . . . . . . . . . = K 1 K 1 F F C ′ C ′ K 1 F C Orr Dunkelman Related-Key Attacks 13/ 42

  14. Intro 2K-DES Advanced SlideX Related-Key Attacks Slide Statistical RK A Related-Key Attack on a 2K-DES (cont.) ◮ Take 2 32 known plaintexts, P i (and their corresponding ciphertexts C i ). ◮ Let f K 1 , K 2 ( · ) be two rounds of DES with the subkeys K 1 and K 2 . ◮ Then, the data set is expected to contain two plaintexts P i and P j such that f K 1 , K 2 ( P i ) = P j and f K 1 , K 2 ( C i ) = C j (denoted as a slid pair ). Orr Dunkelman Related-Key Attacks 14/ 42

  15. Intro 2K-DES Advanced SlideX Related-Key Attacks Slide Statistical RK How do you Find the Slid Pair? ◮ Generally speaking, the best way to find the slid pairs is to try all of them. ◮ So in this attack, the adversary considers each pair ( P i , P j ) (there are 2 64 pairs, as the pair is ordered). ◮ For each pair, the adversary has two equations to solve: f K 1 , K 2 ( P i ) = P j ; f K 1 , K 2 ( C i ) = C j ◮ This can be done very easily. ◮ For each solution (if exists), verify the suggested key. ◮ Time complexity — 2 64 times solving the above set. ◮ A possible improvement: Guess some part of K 1 (or K 2 ) which gives filtering on the pairs, and then there are less pairs to analyze. Orr Dunkelman Related-Key Attacks 15/ 42

  16. Intro 2K-DES Advanced SlideX Related-Key Attacks Slide Statistical RK How do you Find the Slid Pair? (cont.) ◮ This leads to a very interesting approach in block ciphers cryptanalysis. ◮ To break a cipher X (to find the secret key), we need a slid pair. ◮ To find this slid pair, we take many candidate pairs. ◮ For each candidate pair, we analyze which key it suggests. ◮ Then, if the key suggested is correct we found the slid pair. . . . which is what we need for finding the right key. Orr Dunkelman Related-Key Attacks 16/ 42

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend