This course offers an introduction to this fascinating subject. After a quick treatment of historic cryptographic schemes, we will set out the formal definitions to be able to investigate perfectly-secret and computationally-secure encryption, pseudorandomness, hash functions, and message authentication codes and block ciphers. While these primitives are referred to as symmetric-key primitives (because the involved parties use the same keys), another important class are public-key (or asymmetric) primitives which allow for public-key encryption and digital signatures. The most well-known example is the widely-used RSA system.
If time allows, we will cover more advanced cryptographic notions such as secret sharing, bit commitment, zero-knowledge and multi-party computation.
Over the last years, cryptography has been transformed from an ad-hoc collection of mysterious tricks into a rigorous science based on firm mathematical grounds. Our treatment will therefore be rather formal and precise in the mathematical definitions. In particular, this is NOT a course in computer security. You will not learn how to break or hack systems. We will not teach you "how to secure your system"; cryptography is only one aspect of security.
There will be material and research articles to read which are not in the book. Here is a useful list of other text books and references by Jon Katz.
There will be homework exercises every week, handed out after the Tuesday lecture, to be handed in one week later before the start of the exercise session on Wednesday. The answers should be in English (feel free to use LaTeX, but readable handwritten solutions are fine). Cooperation while solving the exercises is allowed and encouraged, but everyone has to hand in their own solution set in their own words. Exercises can be handed over to Maria at the werkcollege on Wednesday or should be put in Christian Schaffner's mailbox at the ILLC on Wednesdays before 10:55.
There will be a final written exam on
Wednesday, December 19, 2012 from 13:00 - 16:00, probably in Science
Park, B0.208. The final exam will consist of student presentations
about slightly more advanced cryptologic topics. The detailed
procedure and list of topics can be found here.
The final grade for the course consists by 1/2 of the average homework grade (ignoring the worst grade) and 1/2 of the grade obtained at the final exam.
Questions about the material are always welcome, and should be sent to Maria.
Tue, 30 Oct |
Overview of the course, historical crypto systems
Chapter 1 of [KL] (available online). |
Thu, 1 Nov |
Perfectly-Secure Encryption, Shannon's theorem
Chapter 2 of [KL] Slides (including possibly useful information about probability theory) |
Tue, 6 Nov |
Computationally Secure Private-Key Encryption and Pseudorandomness
Chapters 3.1-3.4 of [KL] Homework #2, Slides (including possibly useful information about poly-time Turing machines) |
Thu, 8 Nov |
Pseudorandom Functions and Chosen-Plaintext Security
rest of Chapter 3 of [KL] |
Tue, 13 Nov |
Message Authentication Codes, CBC-MAC and CCA encryption
Chapters 4.1-4.5 and 4.9 of [KL] Homework #3, Slides (CBC encryption vs CBC-MAC, CCA security) |
Thu, 15 Nov |
Collision-Resistant Hash Functions, Merkle-Damgaard construction, Application to MACs
rest of Chapter 4 of [KL] |
Tue, 20 Nov |
Practical Block Ciphers: DES and AES
Chapter 5 of [KL] |
Thu, 22 Nov |
Private-Key Management and the Public-Key Revolution
Chapter 9 of [KL] Slides (Key Distribution Centers) A good read: New Directions in Cryptography by Whitfield Diffie and Martin Hellman, 1976. |
Tue, 27 Nov |
Algorithmic Number Theory
Chapters 7 and 8 of [KL] |
Thu, 29 Nov |
Discrete Logarithms, Public-Key Encryption
Chapter 10 in [KL] (Sections 10.1 to 10.3)
|
Tue, 4 Dec |
Public-Key Encryption: RSA and El Gamal Encryption
Sections 10.4, 10.5 |
Thu, 6 Dec |
Homomorphic Public-Key Encryption: Paillier Encryption
Section 11.3 in [KL] |
Tue, 11 Dec |
Digital Signature Schemes: Definitions, RSA Full-Domain Hash,
Public-Key Infrastructures
Sections 12.1-12.3, 13.3, 12.8 in [KL]
|
Thu, 13 Dec | free for preparations of presentations |
Wed, 19 Dec 13:00 - 16:00 |
Exam: Student Presentations |
end of semester |