COMP 7120/8120 Cryptography and Data Security
Course Description
This course is an introduction to the basic concepts and mechanisms of applied cryptography and data security. It will cover both cryptographic primitives (secret key encryption, public key encryption, digital signatures) and security protocols (user authentication). It also emphasizes on discussing the challenges when applying cryptographic building blocks to solve practical security problems, including cloud computing, mobile crowdsourcing networks, and distributed systems. (The content and syllabus are subject to adjustment during the semester.)
Prerequisites: The course is selfcontained, however a basic understanding of probability theory and modular arithmetic will be helpful.
Lecture
Monday/Wednesday, 2:20 pm  3:45 pm, Dunn Hall 109
Office Hours
By appointment only (Please arrange by email 23 days in advance)
Recommended Textbook
 A Graduate Course in Applied Cryptography by D. Boneh and V. Shoup. Free!
 Handbook of Applied Cryptography by A. Menezes, P. Van Oorschot, S. Vanstone. Free!
 Introduction to Modern Cryptography by J. Katz and Y. Lindell.
Evaluation
Grading: Your final grade will come from the following sources: class attendance (CA), homework assignments (HA), inclass presentations (IP), and one inclass exam (IE). Here is the grading formula:
Grade = 0.05*CA + 0.25*HA + 0.3*IP + 0.4*IE
Grading Scale: A: 85 – 100, B: 70 – 84, C: 60 – 69, D: 50 – 59, F: 49 and below. (Plus/minus grading will be used).
Course Policy
 Late Policy: Without prior request, no late work will be accepted. All late submission maybe accepted at a penalty of 15% per day for no more than THREE days.
 Testing Policy: The exam given is closed book/note/laptop/neighbor. But students are allowed to bring one cheat sheet (lettersized 8.5by11) for quick reference. There will NOT be any makeup exams unless there is a documented emergency.
 Homework Assignment and Project Report Policy: It is recommended that students use a word processing software (e.g., Word or LaTeX) to type their homework solutions or project report, then submit wellformatted PDF files.
Course Schedule

Week 1:
 JAN 18  Lecture 1: Introduction (slides 1)

Week 2:
 JAN 23  Lecture 2: Brief History of Cryptography
 JAN 25  Lecture 3: One Time Pad and Stream Cipher

Week 3:
 JAN 30  Lecture 4: Attacks on One Time Pad and Stream Cipher
 Feb 01  Lecture 5: Block Cipher – The Data Encryption Standard (DES)

Week 4:
 Feb 06  Lecture 6: Block Cipher – The Advanced Encryption Standard (AES)
 Feb 08  Lecture 7: Semantic Security

Week 5:
 Feb 13  Lecture 8: How to use Block Cipher: onetime key
 Feb 15  Lecture 9: How to use Block Cipher: manytime key

Week 6:
 Feb 20  Lecture 10: Basic Key Exchange
 Feb 22  Lecture 11: Some Number Theory

Week 7:
 Feb 27  Lecture 12: Hard problems and Public Key Encryption
 Mar 01  Lecture 13: Public Key Encryption: RSA

Week 8:
 Spring Break

Week 9:
 Mar 13  Lecture 14: Public Key Encryption: ElGamal
 Mar 15  Lecture 15: Message Integrity

Week 10:
 Mar 20  Lecture 16: Collision Resistance and HMAC
 Mar 22  Lecture 17: Digital Signature

Week 11:
 Mar 27  Lecture 18: Authenticated Encryption I
 Mar 29  Lecture 19: Authenticated Encryption II

Week 12:
 April 03  Presentation 1
 April 05  Presentation 2

Week 13:
 April 10 – Presentation 3
 April 12 – Presentation 4

Week 14:
 April 17 – Presentation 5
 April 19 – Presentation 6

Week 15:
 April 24 – Review
 April 26 – Inclass Exam