- black box assumptions for cryptographic algorithms and block ciphers,
- mathematical cryptanalysis issues (statistical, algebraic, ...),
- efficient implementation of cryptosystems,
- physical attacks exploiting side-channels (e.g. power consumption, electromagnetic radiation, ...) or fault insertion,
- random number generation, biometrics, physically unclonable functions, ...
- integration of cryptographic hardware devices in secure systems and applications.
At the end of this learning unit, the student is able to :
In view of the LO frame of reference of the "Master Electrical Engineering", this course contributes to the development, acquisition and evaluation of the following learning outcomes :
- Define the notion of secure cipher and argue about the difficulty of building efficient block ciphers that are provably secury in come formal model,
- Identify the properties that enable guaranteeing the "practical" security of a cipher, as well as the structural weaknesses to be avoided when designing such ciphers,
- Criticize the heuristic assumptions that are used in the (mathematical and physical) security analysis of a block cipher algorithm ofr its implementation,
- Apply cryptanalytic techniques (for example statistical, algebraic, combinatorial) and evaluate their impact for the security of an encryption algorithm,
- Describe and analyze the hardware architecture of a cryptographic implementation fulfilling a number of constraints provided in terms of cost or performance,
- Implement a cryptographic algorithm in a low-cost microcontroller,
- Evaluate the physical security of a cryptographic implementation against-side-channel attacks, taking advantage of physical information leakage (e.g. the power consumption of a microelectronic device performing some sensitive crypographic computations),
- Propose countermeasures and protection mechanisms against different physical attacks and justify their relevance in function of the adversarial context considered,
- Formalize physical properties that can be constructively exploited in cryptography (e.g. for random number generation, physically unclonable functions, IP protection),
- Enumerate the pros and cons of a cryptographic algorithm in function of its compromise between (mathematical, physical) security vs. implementation efficiency,
- Understand, summarize and present the results of a scientific paper related to the design and implementation of cryptograhic algorithms (e.g. such as published in conferenes like Eurocrypt, Crypto, Asiacrypt, CHES, FSA, ACM CCS, ...)
Due to the COVID-19 crisis, the information in this section is particularly likely to change.The course is organized in 14 lectures and 14 exercice sessions (2hours each). Every lecture starts with a preliminary reading to prepare. Students will be questioned about these lectures at the beginning of the course. Exercice sessions are dedicated to solving implementation and cryptanalysis problems, and are structured as different projetcts to carry out by small (2 or 3 student) groups. The last hour will be devoted to the oral presentation of scientific papers proposed by the students
Due to the COVID-19 crisis, the information in this section is particularly likely to change.Students will be evaluated individually, based on the following elements :
- Solving of implementation and cryptanalysis problems proposed during the exercise sessions that will be structured as several short-term projects.
- Written summary and/or oral presentation of a scientific paper.
- Answers to the questions at the beginning of each course, about preliminary readings.
- Written and/or oral examination about the previously listed course goals.
The respective importance of each element of the evaluation can vary in function of the years and will be specified at the first course of each year. Under individual demand of a student, the evaluation can be limited to the written work and session examination.