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

Reading list