CSCI 6331 / 4331 · Cryptography

Course Syllabus (Tentative)

Spring 2012

 
Lecture 1:
01.18
History and overview of cryptography   [pdf]
Reading: KL 3-18 ; HAC 11-20.
Basic symmetric-key encryption
 
Lecture 2:
01.25
One time pad and stream ciphers  [pdf]
perfect secrecy and the one time pad.
semantic security and stream ciphers.
Reading: KL 29-40, 61-77 ; HAC 20-21, 191-194.
 
Lecture 3:
01.25
Block ciphers  [pdf]
Case studies: Feistel networks, DES, 3DES, and AES.
basic modes of operation: CBC and counter mode.
Reading: KL 159-187; HAC 233-237, 250-259
 
Lecture 4:
01.25
Block cipher abstractions: PRPs and PRFs
Pseudo Random Permutations (PRP); Pseudo Random Functions (PRF);
security against chosen plaintext attacks (CPA);
nonce-based CBC encryption and nonce-based counter mode.
Reading: KL 86-88, 94-102 ; HAC 228-230
 
Lecture 5:
01.25
Attacks on block ciphers   [pdf]
exhaustive search, time-space tradeoffs,
differential & linear cryptanalysis, meet in the middle, side channels.
Reading: KL 82-85, 89-90
Message integrity
 
Lecture 5:
02.15
Message integrity: definition and applications   [pdf]
CBC-MAC and PMAC.
Reading: KL 111-126
 
Lecture 6:
02.22
Collision resistant hashing   [pdf]
Merkle-Damgard. MACs from collision resistance.
Reading: KL 127-143 ; HAC 333-335, 339-341, 348
 
Lecture 7:
02.29
Authenticated encryption: security against active attacks   [pdf]
also: intro to session setup using a key distribution center (KDC).
Reading: KL 148-154, 315-320
Public key cryptography
 
Lecture 8:
03.07
Arithmetic modulo primes
Reading: KL Ch. 7.
Summary of relevant facts: pdf.
 
Lecture 8:
03.07
Cryptography using arithmetic modulo primes
vanilla key exchange (Diffie-Hellman); the CDH and discrete-log assumptions
Reading: KL 315-339, 364-368
 
Lecture 9:
03.21
Public key encryption
semantically secure ElGamal encryption; CCA security
Reading: KL 315-339, 364-368
 
Lecture 9:
03.21
Arithmetic modulo composites   [pdf]
RSA and Rabin functions.
Reading: KL 355-364
Summary of relevant facts: pdf.
Digital signatures
 
Lecture 10:
03.28
Digital signatures: definitions and applications
How to sign using RSA.
Reading: KL 421-432
 
Lecture 11:
04.04
More signature schemes
Lamport and Merkle schemes.
overview of signatures based on discrete-log.
certificates and trust management.
Reading: KL 432-453
Crypto in Practice (TBD)