Admission requirements
A course on Linear Algebra
Description
Lattices (roosters) are mathematical objects becoming more and more important in cryptography, as they are about to replace factoring and elliptic-curves in the ongoing transition to quantum-resistant cryptography. Despite their mathematical simplicity, lattices provide hard computational problems that appear to resist quantum computers.
Informally, lattices are regular grids of point in (Euclidean) spaces, and they have played key role in algebraic number theory, coding theory, and now cryptography. Like vector spaces, lattices can be described using basis, yet not all basis are equally good. Lattice reduction (the task of finding a good basis) will be the main objectives of the considered algorithm.
The course will also explain the principle behind lattice-based cryptography from a geometric perspective.
Course Objectives
This course aims at providing the basic mathematical and algorithmic tools related to lattices, in particular for their use in cryptography.
Timetable
In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.
Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.
Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.
Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.
Mode of instruction
Lectures, exercises and programming labs: some of the werkcollege will be dedicated to implement the algorithms considered in class. These programming labs will be prepared in python. No programming course is formally required, but some minimal experience with programming is recommended.
Assessment method
The final grade consists of a participation grade (20%) and a written (retake) exam (80%).
Reading list
Various related advanced courses can be found online:
Daniel Dadush & Leo Ducas on “Intro to Lattices, Algorithms and Cryptography “ https://homepages.cwi.nl/~dadush/teaching/lattices-2018/
Daniele Micciancio's course on "Lattice Algorithms and Applications": http://cseweb.ucsd.edu/classes/fa17/cse206A-a/
More specialized courses and books on cryptographic applications and complexity theory include:
Oded Regev's course on "Lattices in Computer Science": https://cims.nyu.edu/~regev/teaching/lattices_fall_2009/index.html.
Daniele Micciancio and Shafi Goldwasser: “Complexity of Lattice Problems: A Cryptographic Perspective “ https://cseweb.ucsd.edu/~daniele/papers/book.html
Registration
As a student, you are responsible for enrolling on time through MyStudyMap.
In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.
There are two enrolment periods per year:
Enrolment for the fall opens in July
Enrolment for the spring opens in December
See this page for more information about deadlines and enrolling for courses and exams.
Note:
It is mandatory to enrol for all activities of a course that you are going to follow.
Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.
Not being enrolled for an exam/resit means that you are not allowed to participate in the exam/resit.
Contact
Prof. Léo Ducas: ducas@cwi.nl
Remarks
Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.