I am interested in all areas of theoretical computer science, particularly cryptography and computational complexity.

Electronic versions of my papers are below. See also non-technical writing - surveys, presentations, including essays for a non-expert audience. You can also download my thesis Non-Black-Box Techniques in Cryptography (pdf, 186 pages, 1.9MB) and view a draft of my complexity textbook with Sanjeev Arora. I am currently writing an undergraduate textbook: Introduction to Theoretical Computer Science. I also wrote extensive notes on the sum of squares algorithm (with David Steurer).