Introduction to Cryptography - Fall 2025 CSCI-GA 3210

Announcements

First class is Thursday, September 4 at 7:10 - 9:10 PM in 194 Mercer, Room 306B. See you there!


Administrative Information

  • Time/Place: Thursdays 7:10-9:10 PM in 194M 306B
  • Final: TBD
  • Instructor: Marshall Ball, Office Hours: TBD

Course Description

This is an introductory course about modern cryptography. The idea of secure communication has been around since antiquity, but in the past few decades a revolution has taken place and the new world of cryptography is filled with almost magical objects. Previously unimaginable things such as private communication without a shared secret (public key cryptography) are now not only plausible, but integral to our modern infrastructure. Many other almost paradoxical notions have emerged that go well beyond secure communication: how to perform auctions without trusting anyone, how to prove statements to someone without them learning anything (but the truth of the statement), and much much more.

In this course, we will learn how to reason about security against adversarial behavior. We will learn how to conceptualize and formalize seemingly abstract statements such as what it means for an adversary to "learn nothing." We will see how to construct secure protocols and procedures and how to prove their security in a rigorous manner. Much of cryptography requires computational hardness that is well beyond the reach of our current techniques for demonstrating. As such, cryptography requires assumptions. We will seek to understand these assumptions and how they fit together.

This course is about the theory of cryptography, computer security requires much more than cryptography and this will not be our focus. There will be no programming component. While we will touch on objects used in practice, our focus will not be on the cryptography that is deployed, but instead the constructions that are most pedagogically transparent.

A tentative list of topics:

  • Information-Theoretic Cryptography.
    Shannon's notion of security. One-time pads. One-time MAC. Limitations. Secret Sharing. Secure Multiparty Computation.
  • Foundations of (Computational) Cryptographic Theory.
    Computational Security. Indistinguishability. Hybrid Arguments. Peudorandom generators (PRG). Pseudorandom Functions (PRF). Pseudorandom Permutations (Block ciphers). Symmetric Key Cryptography. Collision Resistant Hashing (CRH). One-way functions (OWF). Weak/Strong/Universal OWF. Hardcore bits and Goldreich Levin. Public Key Cryptography.
  • Cryptography from Number Theory.
    Modular Arithmetic. Discrete Logarithms and CDH/DDH. Diffie-Hellman Key-Exchange and ElGamal Encryption. CRH from DL. RSA. Rabin.
  • Proof systems, Zero-Knowledge, and Signatures
    Interactive Proofs. Zero-Knowledge Proofs. Identification protocols. Signatures from TDPs. Signatures from OWF. Schnorr signatures.
  • Cryptography from Lattices.
    Lattices. Learning with Errors (LWE). Short Integer Solutions (SIS). Fully Homomorphic Encryption (FHE).
  • Advanced Topics (pending time/interest).
  • Secure Function Evaluation: Oblivious Transfer (OT) and Yao's Garbled Circuits. Obfuscation (VBB and IO). Private Information Retrieval (PIR). Randomness Extractors.

Disclaimer: This is a class about theoretical computer science. You are expected to understand and write proofs. While we will write extensive pseudocode, there will be no programming component.

Course Work

Homework (50%), Weekly Quizes (5%), Participation (5%), Final Project (10%), Final Exam (30%). Additionally, active participation in lecture is expected and will impact final grades that are on thresholds.

The final project is an opportunity to learn about a cryptographic topic we do not have time for in class and tell the class about it. Formally, this will consist of a short proposal (due midway through the semester) and a presentation. More details will follow.

See Course Policies for more specifics.

Prerequisites

The primary prerequisite is mathematical maturity. You should be comfortable reading and writing proofs. Some familiarity with the basics of algorithms, the theory of computation, and probability is expected.

If you are unsure about whether this class is suitable for you, please contact the instructor via email.

Resources

We will not be following a textbook for this class, however there are a plethora of incredible resources available for those interested.


Lectures

Class Date Topic Reading Homework
1 Sept 4 Intro, Perfect Secrecy, One-Time Pad Daniel Wichs' Lecture 1 (also Barak Chapter 1,
Rosulek Chapter 1 Katz Lindell Chapters 1 & 2)
2 Sept 11 Groups and Fields, Generalized One-time Pad, Authentication, One-time Message Authentication Codes (OT-MAC) Daniel Wichs' Lecture 1 (also Barak Chapter 1, Katz Lindell Chapters 1 & 2)Daniel Wichs' Lecture 2
3 Sept 18 optimality of OT-MAC key length, OT-MAC with short tag, Secret Sharing, Access Structures, Additive (n-out-of-n) Secret Sharing Daniel Wichs' Lecture 2, Rosulek Chapter 3
4 Sept 25 Shamir Secret Sharing, Secure Multiparty Computation, Ben-Or Goldwasser and Wigderson's protocol (BGW Protocol) Daniel Wichs' Lectures 2 and 3, Rosulek Chapter 3

Course Policies

Homework

Homework should be submitted in PDF form in Gradescope. We prefer homework submissions typeset in LaTex. If you are not familiar with LaTex, it is a great skill to learn. Overleaf provides a simple web interface for writing and compiling LaTex (as well as extensive documentation). We will provide LaTex source for you to edit. You are encouraged to insert scanned figures or illustrations where appropriate. Scanned handwritten submissions will only be graded if perfectly legible. If you are unsure about your handwriting, I strongly suggest you type your solutions.

An important part of this class is about learning to communicate your mathematical ideas and proofs clearly and concisely. Accordingly, you will be graded not simply for correctness, but also clarity. If you do not understand how to solve a question, you may write "I don't know how to do this," and you will receive 15% credit for that question.

Collaboration

We strongly encourage you to discuss assignments with your peers, but you must (a) list the names of your discussion partners on your submission, and (b) you must write up your solution on your own. You may not look at the written solutions of any other student before submitting your own solution. If you do not not list the names of your collaborators, you will be penalized.

Late Policy

You will be allotted a total of 5 late days for the semester. Late days cannot be subdivided. Beyond this, submissions will be graded with a 20% penalty per day.

External Resources

I encourage you to consult outside resources to deepen your understanding both of material we cover in class, and the many things we will (regrettably) not have time to cover. You must explicitly acknowledge any external resources consulted in your homework.

However, you are not allowed to consult any resource for the purpose of finding homework solutions. For example, you may not consult homework solutions for a previous version of this class. Violations to this policy is plagiarism and will not be tolerated.

Religious Observance

As a nonsectarian, inclusive institution, NYU policy permits members of any religious group to absent themselves from classes without penalty when required for compliance with their religious obligations. The policy and principles to be followed by students and faculty may be found in the University Calendar Policy on Religious Holidays.

Disability Disclosure

Academic accommodations are available to any student with a chronic, psychological, visual, mobility, learning disability, or who is deaf or hard of hearing. Students should please register with the Moses Center for Students with Disabilities.