Mathematical Cryptography
Code  Completion  Credits  Range  Language 

B4M01MKR  Z,ZK  6  4P+2S  Czech 
 Course guarantor:
 Lecturer:
 Tutor:
 Supervisor:
 Department of Mathematics
 Synopsis:

The lecture sets mathematical foundations of modern cryptography (RSA, ElGamal, elliptic curve cryptography). Related algorithms for primality testing, number factorisation and discrete logarithm are treated as well.
 Requirements:
 Syllabus of lectures:

1. Introduction into cryptography. Basic notions of number theory.
2. Counting modulo n. Complexity of operations in Z_n.
3. RSA cryptosystem and attacks on it.
4. Abelian groups.
5. Element order in a group, cyclic groups.
6. Structure of Z_n^* groups.
7. Discrete logarithm, DiffieHellman protocol.
8. Elliptic curves, discrete logarithm on an elliptic curve.
9. Generating of random primes, probability algoritms.
10. Primality tests, Carmichael numbers.
11. Factorisation using the Euler function.
12. Subexponential algorithms for discrete logarithm.
13. Subexponential algorithms for factorisation, a quadratic sieve.
13. Quantum computing and satefy of cryptosystems.
 Syllabus of tutorials:
 Study Objective:
 Study materials:

[1] V.Shoup, A Computational introduction to number theory and algebra, Cambridge University Press, 2008, http://shoup.net/ntb/
[2] D.Boneh, Twenty Years of Attacks on the RSA Cryptosystem. https://crypto.stanford.edu/~dabo/papers/RSAsurvey.pdf
[3] D.Hankerson, A.J.Menezes, S.Vanstone, Guide to elliptic curve cryptography, Springer, 2004.
 Note:
 Further information:
 http://math.feld.cvut.cz/gollova/mkr.html
 No timetable has been prepared for this course
 The course is a part of the following study plans:

 Open Informatics  Cyber Security (compulsory course of the specialization)