CS 758: Cryptography / Network Security (Fall 2021)


Course Overview:

This course covers a selection of modern topics in cryptography. A main theme of the course is carrying out rigorous proofs of security based on well-studied cryptographic assumptions. The course will be about both modern principles and tools (such as private/public key encryption) and the use of these tools in the design of secure computation protocols.

For the most part, we will follow the textbook Introduction to Modern Cryptography by Jonathan Katz and Yehuda Lindell, 3rd edition. 

==== Syllabus ===

Topics include:

-- Symmetric cryptography: one-way functions, pseudorandom generators/functions and private-key encryption.

-- Hardness amplification: strong one-way functions/hardcore bits from weak one-way functions/hardcore bits.

-- Commitment schemes

-- Cryptographic assumptions: number-theoretic (discrete log, factoring, pairings) and post-quantum secure assumptions (lattices and learning with errors)

-- Signature schemes

-- Public-key encryption

-- Advanced public-key encryption schemes: identity-based encryption, attribute-based encryption and fully-homomorphic encryption

-- Introduction to Multi-Party Secure (MPC) Computation


Relations to CO 487/687: The course CS 489/689 gives a modern treatment of the foundations of cryptography: how to use hardness assumptions (e.g., hardness of factoring) in order to build secure cryptosystems and protocols. A main focus of the course is on security reductions: rigorously showing that to reduce purported attacks against a constructed scheme into an attack against the hardness assumption. We will also cover topics (e.g., zero knowledge proofs) that aren't covered in any other courses. The course CS 487/687 is on mathematical tools behind cryptography. For example, when building a cryptosystem from the discrete-log assumptions, we simply assume such groups exist and use those groups generically in our constructions. Whereas CO 487/687 discusses how to build such groups in practice and what are the mathematical reasons behind the belief that those groups are deemed secure.


 ==== Grading policy =====

(1) Homework: There will be five assignments, each worth 12% of your final grade, for a total of 60%. You must use Latex to typeset your homework, using a template that I will provide later. 

(2) Two take-home exam: 40%


Course Information:

Time: Monday 1-4 pm

Instructor: Mohammad Hajiabadi 

Instruction mode: online

Office hours: Thursday 9-10 am.