TMA4160 Cryptography - Fall 2024
Lecturers: | Kristian Gjøsteen |
---|---|
Assistant: | |
Schedule | |
Lectures: | Monday 10:15-12:00 in B1 |
Friday 10:15-12:00 in El4 | |
Exercises: | Wednesday 10:15-11:00 in El1 |
Visiting hours: | Monday 1215-1300 in 848 SBII |
Exam: | see here |
Messages
(Messages)
Prerequisite
You should be familiar with basic abstract algebra such as groups, rings and fields.
You will find the lectures more interesting or enjoyable if you know something about computational complexity and the analysis of algorithms.
For the programming exercises, we require knowledge about Python.
Lecture plan
This is a plan. It will change. PMC is Practical mathematical cryptography (now with correct chapter numbering). GCAC is A Graduate Course in Applied Cryptography. HAC is Handbook of Applied Cryptography.
Week | Topic | Notes |
---|---|---|
34 | Introduction. Diffie-Hellman. Classical ciphers. Symmetric cryptography. | PMC 2.1, 1.1-2. GCAC 10.4, 2.2.1. |
35 | Defining confidentiality. Pseudo-random functions (PRF). Block ciphers (PRP). Security proofs. | PMC 7.1-2. GCAC 3.1-2, 4.1, 4.4, 5.3-5. |
36 | Defining integrity. Message authentication codes (MACs). | PMC 7.1, 7.3. GCAC 6.2-3, 7.2.1, 7.3.2, 9.1-5 |
37 | Diffie-Hellman. Discrete logarithms. Primality testing. | PMC 2.2-4. GCAC 10.5, 16.1. HAC 4.2, 4.4. |
38 | Primality testing. Discrete logarithms. | PMC 2.2-4. GCAC 10.5, 16.1. HAC 4.2, 4.4. |
39 | Elliptic curves. | PMC 2.5. GCAC 15.1-2. |
40 | Public key encryption. | PMC 3.1-3.2, 8.1. GCAC 11.4-5. |
41 | Defining confidentiality. RSA. Factoring. | PMC 3.3-4, 8.1. GCAC 11.2-3. No exercise class on Wednesday 9/10. |
42 | Learning with errors. Lattices. Key encapsulation mechanisms (KEMs). | PMC 3.5, 3.8, 7.5, 8.2. GCAC Exercises 11.9, 12.5, 12.18. |
43 | KEMs. Hybrid encryption. Random oracles. | PMC 8.2. No exercise class on Wednesday 23/10. |
44 | Digital signatures. PKI. Hash functions. | PMC 4.1-4.3, 7.4, 9.1. GCAC 8.1, 8.3-4, 13.1-2. |
45 | Hash and sign. | PMC 9.2. GCAC 13.1-5. |
46 | Repetition, old exams | |
47 | Repetition, old exams | No lecture on Friday 22/11 and no exercise class on Wednesday 20/11. |
Exercise sets
All exercises can be found in PMC. Further notes on exercises can be found in Blackboard.
Week | Exercises | Example |
---|---|---|
35 | 1.18, 1.21, 1.26, 1.29, 2.2, 2.3 | known iv for CBC mode |
36 | 1.31, 1.33, 1.34, 7.1, 7.7, 7.10, 7.13 (errata), 7.15 | fixed iv for additive stream cipher |
37 | 1.39, 1.42, 7.17, 7.19 or 7.20, 7.22, 7.23 | Kerckhoffs's law |
38 | 2.5-2.7, 2.9, 2.12, 2.13-15, 2.17, 2.45-47, 2.50 | Prime and prejudice |
39 | 2.26-27, 2.29, 2.31-33, 2.35, 2.38, Problem 2 from the 2018 exam | Weak parameters |
40 | 2.54, 2.60, 2.63-68, Problem 2 from the 2017 exam, Problem 2 from the 2019 exam | Compromise |
41 | 3.3-6, 8.1, 8.2 (large), 8.3 (hard), Problem 6 from the 2021 exam (hard) | |
42 | 3.8-9, 3.11-12, 3.15-16, 3.19, 3.28-30, Problem 3 from the 2022 exam, Problem 5 from the 2019 exam (hard) | Randomness |
43 | 3.37, 3.38, 3.47, 3.49, 3.51, 3.52, 8.31 (somewhat hard), 8.32 (somewhat hard), Problem 3 from the 2015 exam | |
44 | 8.25, 8.26, 8.27 (you must read about associated data), 8.28 (somewhat hard), 8.33, 8.34 | Randomness (again) |
45 | 4.2, 4.8, 4.9, 4.14 (tricky), 7.26 (technical), 9.1 (highly technical), Problem 4 from the 2020 exam, Problem 9(1) and (2) from the 2021 resit exam. | Privacy |
46 | 4.15, 9.10, 9.11, Problem 3 and 4 from the 2019 exam, Problem 5 from the fall 2021 exam, Problem 5 from fall 2022. |
Reference group
See Blackboard.
Course material
We will follow Practical Mathematical Cryptography by Gjøsteen, but A Graduate Course in Applied Cryptography (available online) by Boneh and Shoup will also work if you don't want to buy the book. If so, you will also want to supplement with some material from the Handbook of Applied Cryptography and A computational Introduction to Number Theory and Algebra (both available online).
There are many other sources that could be useful:
- Cryptography Made Simple, by Nigel P. Smart, Springer. Since NTNU has the Springer database, you can download it from here.
- Introduction to Modern Cryptography, 3rd edition, by Jonathan Katz and Yehuda Lindell.
- Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone.
- A Computational Introduction to Number Theory and Algebra by Victor Shoup.
The curriculum is defined to be the material covered by the lectures and the exercises.