CS 475: Lecture 6: Symmetric Key Cryptography
CS 475: Lecture 6: Symmetric Key Cryptography
M2 K1 E2
E1 E2
=
Old School
Cryptography
• Caesar cipher - shift cipher (each letter replaced by
one a fixed length down)
10
11
S(011001) = 6 = 0110
Cryptanalysis
• Differential cryptanalysis
• chosen plaintext attack (obtain ciphertexts for sets of plain texts of
attacker’s choice) 247 plaintext for 16 round DES
• Use similar sets of plaintexts to trace through the permutations and look
for nonrandom patterns in the ciphertexts
• Linear cryptanalysis
• known plaintext attack - attacker has samples of plaintext/ciphertext pairs,
243 pairs needed for DES
• 5 algorithms shortlisted: Rijndael won (by Joan Rijmen and Vincent Daemen
from Belgium), AES has only minor changes
• NIST estimated that a machine that could break a 56-bit DES key in 1
second would take 149 trillion years to crack a 128-bit AES key
Example:
x6 + x5 + x3 + x2 + 1 polynomial
6D hex
State - the 128-bit input
Ø State is a 4 by 4 array of bytes, initialized (col-by-col) with the 16-byte plaintext block (see
below)
State 0 1 2 3
0 in[0] in[4] in[8] in[12]
1 in[1] in[5] in[9] in[13]
2 in[2] in[6] in[10] in[14]
3 in[3] in[7] in[11] in[15]
• D.J. Bernstein showed that delays in encryption time due to cache misses can
be used to infer key, demonstrated against a custom remote server using
OpenSSL’s AES implementation, Osvik et al showed that local attacks could
infer the key in 65 milliseconds
34
Other modes of
operation
• Propagating cipher-block chaining (PCBC)-
propagate small changes in ciphertext
• Key management
• Key distribution
• Key storage and backup
• Key disposal
• Key change