CSE 490C: Cryptography (Fall 2019)

General Information

Instructor: Huijia (Rachel) Lin, rachel(at)cs

TA: Siddharth Iyer Vaidyanathan siyer@cs.washington.edu

TA: Aditya Saraf sarafa@cs.washington.edu

Email to all staff: cse490c-staff@cs.washington.edu

Class mailing list: cse490c_au19@uw.edu

Time and location:

  • Class: Monday/Wednesday/Friday 3:30pm-4:20pm, CSE2 G04
  • Session 1: Thursday 1:30-2:20pm, AND 008
  • Session 2: Thursday 2:30-3:20pm, SAV 162

Office hours:

  • Aditya Saraf: Mon. 12:30 - 1:20pm CSE1 007
  • Rachel Lin: Wed. 2:15 - 3:15pm CSE1 652
  • Siddharth Iyer Vaidyanathan: Thursday 10-11am at CSE1 007

Discussion: We are going to use Piazza https://piazza.com/configure-classes/fall2019/cse490c.

Notes: Notes and reading material will be posted on Piazza

Accommodations: We will follow UW policies for disability accommodations and religious accommodations.

Policy: Please also refer to UW policies on conduct and academic integerity

Topics

Cryptography provides important tools for ensuring the confidentiality and integrity of sensitive digital data. This course covers the design and application of important cryptographic objects, including basic cryptographic tools, such as encryption, message authentication, and digital signatures, as well as advanced cryptographic objects and protocols, such as zero-knowledge proofs, secure multi-party computation, and fully homomorphic encryption. For each cryptographic object, we formalize its security goal, show schemes that achieve the desired security, and study security attacks or security proofs that establish the insecurity or security of the scheme at hand.

Through this course, we aim to give an overview of the discipline of cryptography, the proper usage and application of important cryptographic tools, and methodologies that modern cryptography offers for developing cryptographic solutions to natural security problems.

Pre-req: CSE 312 and CSE 332. The class will be self-contained. But students are expected to be ready to understand mathematical definitions and proofs, and write simple ones. Exposure to basic probability / algebra / number theory, and theory of computing is also expected.

Resources

There is no specific textbook. Notes and reading material will be posted on Piazza. The textbook by Katz and Lindell would be a good resource, Introduction to Modern Cryptography. Below is a list of additional lecture notes and textbooks.

Grading:

Homework 50% Midterm 15-20% Final 30-35%

Syllabus (Tentative)

WeekDatesContentAssignment
1 Sep 25 ,27
  • Introduction
    • Classical Cipher and Attacks
    • Perfect Secrecy and One-Time Pad
    • Computational Security
    2 Sep 30, Oct 02, 04
  • PRF, Block-Cipher
    • PRF definition
    • Modern block cipher, AES
    • Attacks
    Homework 1
    3 Oct 07, 09, 11
  • Secret Key Encryption
    • IND-CPA security
    • SKE from PRF
    • Modes of Operation
    • Stream Cipher
    Homework 2
    4 Oct 14, 16, 18
  • Computational Number Theory
    • Finite groups
    • Modular arithmetic: Multiplicative inverses and Z^*_P
    • Cyclic groups
    • The Discrete Logarithm problem
    • Elliptic curves
  • Discrete Logarithm, DDH, PRG and PRF from DDH
  • Introduction to integrity
    • Padding Oracle Attack
    Homework 3
    5 Oct 21, 23, 25
  • Hash Function
    • Hash function from Discrete Logarithm
    • Merkel Damgard domain extension
    • Random Oracle Model
  • Message Authentication Code (MAC)
    • Unforgibility
    • PRF implies MAC
    • Domain Extension
    • HMAC
    • Authenticated Encryption
    Homework 4
    6 Oct 28, 30, Nov 01
  • Class canceled on Oct 28th
  • Introduction to Public Key Crypto
  • Homework 5
    7 Nov 04, 06, 08
  • Public Key Cryptography
    • IND-CPA security
    • Diffie-Hellman Key Exchange
    • El Gamal Public Key Encryption
    • RSA Encryption
    • RSA OAEP & CCA2
  • Midterm on Nov. 8th
  • 8 Nov 11, 13, 15
  • No class on Nov. 11th, Veterans Day
  • Signature
    • Definition of Signature
    • RSA Signature
    • Full Domain Hash
    Homework 6
    9 Nov 18, 20, 22
  • Certificates, Public Key Infrastructure, Authenticated Key Exchange
  • Identification Protocols
  • Homework 7
    10 Nov 25, 27, 29
  • No class on Nov 27th 29th, Thanks giving!!
  • Advanced Crypto
  • Homomorphic Encryption (HE)
  • Homework 8
    11 Dec 02, 04, 06
  • Class canceled on Dec 02
  • HE cont'd
  • Multiparty Secure Computation
    • Multi-party Computation. Semi-honest and malicious security.
    • Yao's garbled circuits. 2-party computation.
    • Secret sharing. General multiparty computation.
  • 12 Dec 12
    • Final 2:30-4:20pm