COMP 7120/8120 Cryptography and Data Security - sp2020

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 self-contained, 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 2-3 days in advance)

Recommended Textbook

Evaluation

Grading: Your final grade will come from the following sources: class attendance (CA), homework assignments (HA), in-class presentations (IP), and one in-class exam (IE). Here is the grading formula:

Grade = 0.1*CA + 0.2*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 (letter-sized 8.5-by-11) 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 well-formatted PDF files.

Homework

  • Homework 1 (PDF, WORD, Due: March 15th 23:59pm)
  • Homework 2

Presentation Schedule

Course Schedule

  • Week 01:
    • Jan 22 - Lecture 1: Introduction to Cryptography and Data Security (Slides 1)
  • Week 02:
    • Jan 27 - Lecture 2: One Time Pad and Perfect Secrecy (Slides 2)
    • Jan 29 - Lecture 3: One Time Pad and Stream Cipher (Slides 3)
  • Week 03:
    • Feb 03 - Lecture 4: Semantic Security (Slides 4)
    • Feb 05 - Lecture 5: Block Cipher – The Data Encryption Standard (DES) (Slides 5)
  • Week 04:
    • Feb 10 - Lecture 6: Block Cipher – The Advanced Encryption Standard (AES) (Slides 6)
    • Feb 12 - Lecture 7: How to use Block Cipher (one-time key) (Slides 7)
  • Week 05:
    • Feb 17 - Lecture 8: How to use Block Cipher (many-time key) (Slides 8)
    • Feb 19 - Lecture 9: Basic Key Exchange (Slides 9)
  • Week 06:
  • Week 07:
    • Mar 02 - Lecture 12: Public Key Encryption - RSA (Slides 12)
    • Mar 04 - Lecture 13: Public Key Encryption - ElGamal
  • Week 08:
    • Spring Break
  • Week 09:
    • Mar 16 - Lecture 14: Message Integrity - Message Authentication Codes
    • Mar 18 - Lecture 15: Collision Resistance and HMAC
  • Week 10:
    • Mar 23 - Lecture 16: Digital Signature
    • Mar 25 - Lecture 17: Authenticated Encryption I
  • Week 11:
    • Mar 30 - Lecture 18: Authenticated Encryption II
    • Mar 01 - Lecture 19: Cloud Security and Attribute-based Encryption
  • Week 13:
    • Apr 06 - Presentation 1
    • Apr 08 - Presentation 2
  • Week 14:
    • Apr 13 - Presentation 3
    • Apr 15 - Presentation 4
  • Week 15:
    • Apr 20 - Presentation 5
    • Apr 22 - Presentation 6
  • Week 16:
    • Apr 27 - Review
    • Apr 29 - In-class Exam
Acknowledgment: Thanks all the authors for the textbook and slides. The copyright belongs to the original authors.