Table of Contents
Techniques in Cryptography and CryptanalysisInstructors for 2021 - 2022: Phong Nguyen (DR @ Inria) and Brice Minaud (CR @ Inria) Language of Instruction: English for slides. English or French for lectures, depending on the audience. Preliminary schedule for 2021-2022Time: Wednesdays, from 14h15 to 15h45 Location: Room 1004, in the Sophie Germain building. For now, the slides given below are from last year (2020-2021). They should give a good idea of the material that will be covered. Of course, there may be minor changes.
List of 2020-2021 slides: The Midterm Exam is tentatively scheduled for Wednesday, 24 November 2021, from 14h15 to 15h45 in the usual room.
The Final Exam is scheduled for Wednesday, 9 March 2022, from 14h15 to 15h45 in the usual room. Overview
The main objective of the course is to introduce students to a few important tools and techniques relevant to modern cryptography.
These techniques will belong both to the constructive side of cryptography (building cryptographic schemes whose security is mathematically proven based on hardness assumptions), and the cryptanalytic side (how to attack and evaluate the security of these schemes). During the first half of the course, the main focus will be on lattice-based cryptography. In the past 25 years, lattice-based cryptography has emerged as the most powerful alternative to classical public-key cryptography based on factoring (RSA, Rabin) and discrete logarithm (Diffie-Hellman, El Gamal, DSA, ECDSA). It is currently the most popular candidate for post-quantum cryptography, but it is also the key technique for homomorphic encryption. Its origins go back to the Merkle-Hellman knapsack cryptosystem from 1978, but it officially started in 1996 with Ajtai's worst-case to average-case reduction and the invention of the NTRU cryptosystem. The second half of the course will cover zero-knowledge proofs, oblivious algorithms, and searchable encryption. Zero-knowledge proofs are another important technique in modern cryptography. They are both of theoretical interest, and deployed in a variety of applications, ranging from identification protocols to electronic voting and cryptocurrencies. We will then examine several aspects of computing on encrypted data, starting with oblivious algorithms. Oblivious algorithms are algorithms whose memory accesses are independent of their input, and serve as a building block in a variety of cryptographic applications. As a special case of practical interest, we will discuss constructions of Searchable Encryption provable in relevant security models, as well as attacks showcasing the limitations of those models. At the end of the course, students should have the necessary tools to conduct research in academic-level cryptography. Pre-RequisitesThe main requirement is being comfortable with mathematical proofs. Some knowledge of basic mathematical topics such probability, number theory, and linear algebra will also be assumed. For the first part of the course on lattice-based cryptography, we plan to adapt to the audience. However, it will be helpful if students are familiar with: group theory, linear algebra, Euclidean spaces, probability. Notes
For the first part of the course on lattice-based cryptography, here are useful external notes on lattices:
Textbooks on Lattices:
Reference articles related to the course, in chronological order: Notes below are from previous years, and no longer directly relevant to the course. They are still provided here for the benefit of curious students. Notes 1: http://www.di.ens.fr/~mabdalla/coursedocs/provablesecurity.pdf Notes 2: Reference for the Goldreich-Levin Theorem: http://www-cse.ucsd.edu/users/mihir/papers/gl.pdf Notes 3: References for the Naor-Reingold PRF: Original paper, Game-based proof (see Appendix A) Notes 4: Reference for the CHK transform: https://eprint.iacr.org/2003/182.pdf (see Sections 1—3) Notes 5: Reference for the BBG scheme: https://eprint.iacr.org/2005/015.pdf (see Pages 5—8) Notes 6: Lecture Notes on the Complexity of Some Problems in Number Theory: https://people.csail.mit.edu/vinodv/6892-Fall2013/Angluin.pdf Slides on identity-based encryption: http://www.di.ens.fr/~mabdalla/coursedocs/IBE.pdf Slides on hierarchical identity-based encryption: http://www.di.ens.fr/~mabdalla/coursedocs/HIBE.pdf Slides on identity-based encryption with wildcards: http://www.di.ens.fr/~mabdalla/coursedocs/WIBE.pdf Lecturers
To contact us: firstname.lastname@ens.fr |