Table of Contents
## Algorithmes arithmétiques pour la cryptologie / Arithmetic algorithms for cryptography (24h, 3 ECTS)Responsable : F. Morain. ## Équipe pédagogique
## Planning, année/year 2020-2021
Thursday evenings from
## Course ObjectivesThis course aims to present the concepts and tools of modern number-theoretic public-key cryptography, whose mathematical building blocks are finite fields and algebraic curves (elliptic and hyperelliptic). We consider not only contemporary discrete-logarithm-based cryptosystems, but also newer isogeny-based cryptosystems designed to resist quantum attacks. This course also forms an introduction to algorithmic number theory, an alliance of classical number theory with algorithms and complexity theory, with applications in cryptography. This course forms a solid introduction to contemporary crypto when taken together with the other MPRI cryptography courses, including 2-12-1, 2-13-1, 2-13-2, and 2-30. ## PlanThe course is split into two parts: ## Cryptographic groups, factorization, and discrete logarithms: 9 hours (François Morain)## Modern and postmodern elliptic curve cryptography – 15 hours (Ben Smith)The second part of the course is an introduction to contemporary elliptic-curve cryptography (ECC), including hyperelliptic cryptosystems and pairings. It also describes a new generation of isogeny-based cryptosystems, which are designed to resist attacks by quantum algorithms. After describing the basic properties and arithmetic of elliptic curves, we consider the current state-of-the-art in elliptic-curve cryptographic primitives. This requires a study of basic algorithms including efficient arithmetic, point-counting, and the hardness of the discrete logarithm problem, as well as deeper problems like the computation of isogenies and the navigation of isogeny graphs. We also give an introduction to cryptographic pairings, used in many more advanced cryptosystems. ## Prerequisites## Specific requirementsWe assume that students have already followed an introductory course in cryptography, and are familiar with modular arithmetic and finite fields. No prior knowledge of algebraic curves is assumed. ## General backgroundThese prerequisites are not specific to cryptography, and are already essentially included in the list of general prerequisites for MPRI. Students must be familiar with complexity classes, Turing machines, and NP problems. Basic notions in algebra and probability are also required, together with a mastery of common foundational algorithms. ## Language
All course materials (documentation and slides) will be given ## Useful references- A. Menezes, P. van Oorschot, S. Vanstone,
*Handbook of Applied Cryptography*, CRC Press. - J. von zur Gathen, J. Gehrard,
*Modern Computer Algebra*, Cambridge University press, 1999, seconde édition 2003. - V. Shoup,
*A Computational Introduction to Number Theory and Algebra*, Cambridge University Press, 2005, 2nd ed. 2008. - R. P. Brent, P. Zimmermann,
*Modern Computer Arithmetic*, manuscrit en préparation, disponible en ligne. - G. H. Hardy and E. M. Wright,
*An introduction to the theory of numbers*, Clarendon Press, 5th edition, 1985. - D. E. Knuth,
*The Art of Computer Programming: Seminumerical Algorithms*, Addison-Wesley, 2nd edition, 1981. - H. Cohen,
*A course in computational algebraic number theory*, volume 138 of Graduate Texts in Mathematics. Springer–Verlag, 1996. - P. Ribenboim,
*The new book of prime number records*, Springer-Verlag, 1996. - R. Crandall and C. Pomerance,
*Primes – A Computational Perspective*, Springer Verlag, 2000. - F. Morain,
*La primalité en temps polynomial (d'après Adleman, Huang; Agrawal, Kayal, Saxena)*, S\'eminaire Bourbaki, Mars 2003. - H. Riesel,
*Prime numbers and computational methods for factorization*, Progress in Mathematics, 57. Birkhauser 1985.
## Course notesSee the reference list. ## Assessment / ExaminationsThere will be one midterm and one final exam, both on paper. Documents and course notes are authorised; calculators and electronic devices are not. ## Past exams |