Course code:
INP7766
Course:
optional
Kind of studies:
Computer Science MSc; PhD;
Course title:
Cryptography
Lecturer:
prof. dr hab Mirosław Kutyłowski
Course structure
Form of class |
Lecture |
Problems classes |
Laboratory |
Project |
Seminar |
Number of points |
Number of hours/week |
2 |
1 |
|
|
|
3 |
Course grade based on |
Test |
Test |
|
|
|
Prerequisites:
MAP3707 or MAP1704 or MAP2706
Course description:
The aim of the course is presenting modern
cryptographic techniques used in computer systems. The subject of the
course are mathematical foundations of cryptography as well as
practical implementation issues and security aspects.
Contents of lectures
- Basic application areas. (2 hours)
- Symmetric encryption, encryption modes. (2 hours)
- Standard symmetric encryption algorithms. (2 hours)
- Asymmetric encryption, RSA, ElGamal. (2 hours)
- RSA security. (2 hours)
- Hash functions and MAC. (2 hours)
- Standard hash functions. (2 hours)
- Pseudorandom generators: BBS, LFSR, A5. (2 hours)
- Security of pseudorandom generators, stream ciphers. (2 hours)
- Interactive proofs and zero knowledge proofs. (2 hours)
- Authentication, Fiat-Shamir protocol, Schnorr protocol. (2 hours)
- Key management, key agreement. (2 hours)
- Differential cryptanalysis, linear cryptanalysis, other methods. (2 hours)
- Side channel cryptanalysis. (2 hours)
- Chosen cryptographic protocols. (2 hours)
Contents of problem classes
- Presentation of cryptographic protocols and standard computer security systems. (8 hours)
- Problem solving for current topics presented during the lectures. (7 hours)
Material for self preparation:
assignments
Basic literature
- Handbook of Applied Cryptography, A. J. Menezes, P. C van Oorschot, S. A. Vanstone, CRC, 1996, ISBN 0-8493-8523-7.
(available online)
Additional literature
many textbooks available
Conditions required for a student to pass the course:
the total number of points from problem classes and written test have to exceed the minimum