block ciphers
Feistel ciphers
- give example of a Feistel cipher
with F_k(x) = f(k^x) and f(w) = w*w mod 2^32
- differential attack: f(w) ^ f(w^(1<<31)) = 0
with F_k(x) = f(k^x) and f(w) = w(2w+1) mod 2^32
- diff. attack: f(w) ^ f(w^(1<<31)) = 1<<31
with F_k(x) is the DES f function without the E or S box
with F_k(x) is the DES f function without the E box
SPN networks
- give example of 16-bit cipher,
with 4 4-bit S-boxes and butterly bit permutation between S-box layers
example: S(x) = k*x mod 16 where k is a key (an odd value mod 16)
- differential attack: S(x) ^ S(x^8) = 8
- linear attack: S(x)&1 = x&1
differential cryptanalysis
- probabilistic version
- how to distinguish
- how to do key-recovery attacks (1-R attacks)
- characteristics vs. differentials
- known-plaintext attacks
- structures