General information
Course type | AMUPIE |
Module title | Elements Of Cryptanalysis |
Language | English |
Module lecturer | dr Bartosz Naskręcki |
Lecturer's email | bartnas@amu.edu.pl |
Lecturer position | |
Faculty | Faculty of Mathematics and Computer Science |
Semester | 2025/2026 (summer) |
Duration | 60 |
ECTS | 5 |
USOS code | 06-DELCLI0-E |
Timetable
Module aim (aims)
The goal of this course is to familiarize the students with modern techniques of cryptanalysis. Our starting point is a discussion of classical attacks on substitution systems like Vignere or Enigma. By developing tools from information theory, probability and algebra we will build a toolbox necessary to attack familiar block cryptosystems (e.g. DES or AES). In further parts we will discuss the safety of public key cryptosystems including RSA and elliptic curve cryptography. Each discussed attack will be implemented in Python and explained in detail. We will explore the topics up to the latest cryptography standards which were implemented just recently (Kyber).
Pre-requisites in terms of knowledge, skills and social competences (where relevant)
Some basic knowledge of modular arithmetic, acquaintance with notions from the probability theory, polynomials and some elementary programming skills.
Syllabus
Week 1: introductory notions from cryptanalysis
Week 2: attacks on classical substitution ciphers
Week 3: Enigma cipher
Week 4: linear cryptanalysis
Week 5: differential cryptanalysis
Week 6: AES standard and attacks on block ciphers
Week 7: RSA security
Week 8: Diffie-Hellman exchange: elliptic curve based cryptography - security and prospects
Week 9: algebraic cryptanalysis - applications of Groebner bases
Week 10: post-quantum cryptography: a primer
Week 11: lattice based cryptography and new hard problems
Week 12: NIST new standards (Kyber and related)
Week 13: attacks on Kyber and its implementation
Week 14: code based cryptography, Patterson attack on McElliece
Week 15: summary and projects presentations