Topic outline

  • General

    This is an introductory course on lattice-based cryptography intended for doctoral, master, and senior bachelor students. 

    This course will cover:

    • mathematical background of lattices, discrete Gaussian distributions over lattices
    • computational problems over lattices and their hardness reductions
    • constructions of cryptographic primitives from lattice-based computational hardness assumptions, e.g. public-key encryption, fully homomorphic encryption, attribute-based encryption, signatures


    This course will consist of weekly in-person lectures and exercise classes.

    This course will have a pass/fail grading scale. A student will pass by collecting enough points via any combination of:

    • Online quizzes on lectures
    • Exercise sheets
    • Reviews of research papers
    • [On request] paper or mini-project presentation


    There is no mandatory prerequisites for this course. However, we expect students to be familiar with basics of cryptography (e.g. as taught in CS-E4340 Cryptography). We also expect students to be comfortable with matrix arithmetic and modular arithmetic. The ability to appreciate formal definitions and associate meaning to them, as well as familiarity with mathematical proofs, could prove to be useful. 


    All announcements will be made via Zulip. Make sure to join and follow the Zulip channel to not miss out any announcements.