Cryptology 2016
Instructor: Debrup Chakraborty
CSRU, Room 402, Deshmukh
Bhavan
debrup(at)isical (dot)ac
(dot)in
( Better fix an appointment
over email before visiting)
Gradings: 20% On assignments
30% On Midterm
50% On Final
Text: [Stinson] Cryptography Theory and
Practice by Douglas R. Stinson
[KL]
Introduction to Modern Cryptography by Jonathan Katz and Yehuda
Lindel
[MOV] Handbook of Applied
Cryptography by Menezes, Oorschot, Vanstone (available free,
online)
[Boneh-Shoup] A Graduate Course
in Applied Cryptography by Dan Boneh and Victor Shoup (draft
available free, online)
Assignment 1 :
Due January 5, 2017.
Lecture 1 (Aug 2): Introduction: Basic setting of
symmetric encryption, confidentiality, integrity. Adversarial goals
and resources.
Lecture 2 (Aug 5): Classical ciphers: Shift cipher,
affine cipher, substitution cipher, permutation cipher, Vigenere
cipher, Hill cipher. (Read Chapter 1 of Stinson)
Lecture 3 (Aug 9): Classical ciphers: Cryptanalysis
of classical ciphers. (Read chapter 1 of Stinson. Additional
reading: The Code Book by Simon Singh.)
Lecture 4: (Aug 12): Perfect Secrecy: Perfect
secrecy, One time pad, Shanon's Theorem. (read Chapter 2 of KL,
Chapter 2 of Boneh-Shoup)
Lecture 5: (Aug 16): Computational Security: Computational
security, security definition, adversarial advantage,
definition of semantic security, security
against message
recovery, relation among security notions (Read Chapter 2 of
Boneh-Shoup)
Lecture 6: (Aug 19): Computational Security: Various examples
involving semantic security, proofs by reduction. ( read Chapter
2 of Boneh-Shoup)
Lecture 7: (Aug 23): Stream Ciphers: Pseudorandom Generators,
Semantically secure cipher with PRGs. Composition of PRGs: Parallel
composition and
sequential
composition (Blum Micali construction). (Read Chapter 3 of
Boneh-Shoup)
Lecture 8: (Aug 26): Stream Ciphers: LFSRs, CCS
stream cipher, RC4 (Read Chapter 3 of Boneh-Shoup)
Lecture 9: (Aug 30): Stream Ciphers: Finite
Fields, Fibonnaci and Galois LFSRs, Maximum period of a LFSR. The
eStream candidates. Description of Cha-Cha 20 and Trivium.
Lecture 10: (September 2): Block Ciphers: Syntax
of Block ciphers, block cipher security, Pseudorandom functions and
permutations
Lecture 11: (September 6): PRP-PRF switching lemma,
IND-CPA and IND$ security definitions for symmetric encryption.
Traditional modes of operations: ECB, CBC, CFB, OFB, CTR
Lecture 12: (September 9): CTR mode and its security
proof. [Handout]
Lecture 13: (September 14): Nonce bases encryption.
Description of DES and AES
Lecture 14:(September 16): Key recovery attacks on
block ciphers, 2DES, 3DES, DESX. Meet in the middle attacks.
Lecture 15: Message
authentication codes: The problem of authentication. Syntax
and security of MAC schemes. PRFs as MACs
Lecture 16: Message
authentication codes: Almost Universal and XOR almost
universal hash functions. Carter Wegman paradigm of MAC
construction. and The problem of authentication. Syntax and security
of MAC schemes
Lecture 17: Message
authentication codes: Hash then PRF constructions of MACs.
Block cipher based MACs: CBC MAC, CMAC, PMAC
Lecture 18 : Hash Functions: Introduction and motivation,
preimage resistance, second preimage resistance and collision
resistance. Algorithms for these problems in the random oracle
model. (Read Stinson)
Lecture 19 : Hash Functions: Merkle Damgard
paradigm for iterated hash functions. Design of compression
functions: Davis Meyer construction, overview of the SHA family.
HMAC scheme. (Read Stinson and Boneh-Shoup)
Lecture 20 : Authenticated encryption: Basic definitions an
security notions, generic composition. (Read Boneh-Shoup
and Class notes)
Lecture 21 : Authenticated Encryption: OCB2 and
GCM. Variants of AE: AEAD, DAE. (Read Class notes)
Lecture 22 : Tweakable Enciphering Schemes: The
problem of disk encryption, tweakable block ciphers, tweakable
enciphering schemes, EME and XTS. (read class notes)
Lecture 23: Number theory: Algorithms to
add, subtract, multiply and divide. Computing in Z_N. (Read
class notes)
Lecture 24: Number theory: Modular
exponentiation, finding GCDs, Euclid's and extended Euclid's
algorithms. Multiplicative inverse, Fermat's and Euler's theorems
Lecture 25 : Number theory: Chinese
remainder theorem, quadratic residues, primality testing: Fermat's
test and Miller Rabin's test. (Read class notes, Stinson )
Lecture 26 : Public key Encryption: CPA and CCA
security of PKE. RSA crypto system. CCA secure scheme from trapdoor
permutations. (Read Stinson, KL)
Lecture 27: Public key Encryption: Discrete
log problem. The Diffie Hellman key exchange; CDH and DDH
asumptions. El Gamal Encryption scheme with variants.
(read KL, the El Gamal variant discussed in class
is summarized in section 1.1 of Cash
Kiltz Shoup)