This shows you the differences between two versions of the page.
sasc:laboratoare:05 [2016/04/25 13:09] sergiu.costea |
sasc:laboratoare:05 [2017/03/23 19:53] (current) marios.choudary |
||
---|---|---|---|
Line 5: | Line 5: | ||
http://cs.curs.pub.ro/2014/pluginfile.php/13095/mod_resource/content/2/sasc_curs4_5.pdf | http://cs.curs.pub.ro/2014/pluginfile.php/13095/mod_resource/content/2/sasc_curs4_5.pdf | ||
- | ==== Exercise 1 ==== | + | ==== Exercise 1 (2p) ==== |
- | Remember DESX defined as the operation DESX( (k1,k2,k3), m) = k1 ⊕ DES(k2, m ⊕ k3). | + | Remember DESX defined as the operation DESX( (k1,k2,k3), m) = k1 ⊕ DES(k2, m ⊕ k3), |
- | Show an attack on DESX that runs in time 2<sup>120</sup>. | + | where k1, k3 have 64 bits (same as input/output of DES) and k2 has 56 bits (DES key size). |
+ | Show a brute force (exhaustive key search) attack on DESX that runs in time $O(2^{120})$. | ||
- | ==== Exercise 2 ==== | + | <note tip> |
+ | Try using a couple of (message, ciphertext) pairs and see if you can get rid of k1 | ||
+ | somehow in order to speed up a brute force attack. | ||
+ | </note> | ||
+ | |||
+ | ==== Exercise 2 (3p) ==== | ||
Show why the following schemes do not bring any real advantage compared to DES: | Show why the following schemes do not bring any real advantage compared to DES: | ||
Line 17: | Line 23: | ||
* b) c = DES(k2, m ⊕ k1) | * b) c = DES(k2, m ⊕ k1) | ||
- | ==== Exercise 3 ==== | + | <note tip> |
+ | You may use a similar approach to what you did in the previous exercise. | ||
+ | </note> | ||
+ | |||
+ | ==== Exercise 3 (5p) ==== | ||
The goal of this exercise is to implement the meet-in-the-middle attack on double DES. | The goal of this exercise is to implement the meet-in-the-middle attack on double DES. |