COMS E6261: Advanced Cryptography

Spring 2024: Cryptography ∩ TFNP

General Information | Lectures and Reading | Class Requirements | Lecture Presentations | Projects

General Information

Instructors:

Teaching Assistant:

Time & Place:: Thursdays 1:10-3:40pm, 327 Mudd

Administrative Notes:
This course can be used as a theory elective for the PhD program in computer science, as a track elective for MS students in the "Foundations of Computer Science" track or the "Computer Security" track, as a foundations track elective for undergraduates following the old curriculum, or an elective for undergrads following the new curriculum. COMS E-6261 Advanced Cryptography focuses around a different topic, possibly with a different format, every time it is taught. The class can be repeated for credit. Auditing the class is certainly possible but requires instructor approval.

Prerequisites

COMS-W4261 Introduction to Cryptography or COMS-W4236 Introduction to Computational Complexity or instructor approval. The most important prerequisite is mathematical maturity, and comfort with (preferably also strong affection for) rigorous definitions and proofs.

Motivation and Course Description

Many cryptographic primitives trivially imply that NP is hard in the average case, but we do not know how to show that even the weakest of these (one-way functions) exist given the assumption that NP is hard on average. A step towards resolving this fundamental problem is to show that cryptography implies hardness of problems weaker than NP. An important source of such problems is TFNP, the class of search problems that are total, namely every input is guaranteed to have a solution, and where a solution can be efficiently verified. Examples include factoring an integer, finding a Nash equilibrium, or finding a collision for a circuit that has fewer outputs than inputs. TFNP is believed to be NP-intermediate, i.e. not in P, but not NP-hard.

In this course we will survey the new and burgeoning field of cryptography ∩ TFNP, exploring the connections between cryptography and the complexity of total search problem. We will also consider connections to meta-complexity. There will be an emphasis on open problems and research techniques.

This course is an advanced graduate level seminar, where most lectures will be given by students taking the class (with prior feedback and support from the instructors and fellow students). The specific papers covered will be selected by the instructors, biased by their interests, and (especially for the later lectures) also by the interests of the students taking the class.

Lectures and Readings

Other upcoming topics are listed below (this section continues to be updated, and note that we won't necessarily cover papers in this order in class). We will also post materials (slides or notes as necessary) associated with each lecture after it takes place.

Topic 1: Number Theory and TFNP (completed by Lecture 4)

The hardness of factoring of finding discrete logarithms in cyclic groups are used to construct public-key cryptographic primitives. What do we know about the complexity of these problems in TFNP?

Papers:

Topic 2: Going from NP Hardness-on-average to TNFP hardness

Assuming that NP is hard-on-average, what can we say about the hardness of TFNP? What if we assume one-way functions do not exist, that is, is TFNP hard in Pessiland?

Papers:

Topic 3: PPAD hardness from Indistinguishability Obfuscation

One of the most important and earliest results in TFNP Cryptography was the construction of hard a PPAD distribution from iO.

Papers:

Topic 4: Beating iO: PPAD / PLS / CLS hardness from other assumptions

Papers:

Topic 5: From OWFs to TNFP hardness

iO, and even the other assumptions that have been used to construct hard TNFP instances, are quite strong. Can we hope to show TFNP hardness from the most basic cryptographic primitive: one-way functions? Some negative results (black box separations of a certain kind) are known:

Papers:

Other papers to cover later (schedule TBD):

Other topics will be chosen based on instructor and student interests. Potential topics include: cryptography and meta complexity, limits on basing cryptography on NP hardness, cryptography from learning theory, and more.

Class Requirements

The class requirements and their relative weight in the grade are as follows: Overall, we plan to grade generously, but what you get from the class in terms of the class goals -- learning of and exposure to the topics covered, research, and teaching -- is proportional to how much you put into it (and for the learning part, also proportional to how much your fellow students and teaching staff put into the teaching part). We hope for an intimate, fun class, where everyone puts forth their best effort.

Lecture Presentation Details

The team of presenter(s) and supporter(s) will work together to thoroughly understand the assigned paper, and plan how to teach it effectively. Motivation and context, as well as definitions, proofs, techniques, and open problems, are all important -- the team, with guidance and feedback from the teaching staff, should plan the right balance in teaching their particular topic to the class.

Academic Honesty

We expect that the primary goal of everyone in the class is to learn (we can imagine no other reason that you would be in this class). Hopefully this means that there will be no focus on grades (which we can tolerate but discourage in this class), and no issues of dishonesty (which we absolutely will not tolerate). In particular, students should take the quizzes on their own, and be sure to provide appropriate citations for all sources used in their project reports, as well as acknowledgements to other people who contributed (just as you should do in any academic publishing).

As in every CS class, students are expected to adhere to the academic honesty policy of the CS department. This policy has been passed by the faculty of the Department and approved by the school deans.