Mathematical Cryptography - B4M01MKR

Credits 6
Semesters Summer
Completion Assessment + Examination
Language of teaching Czech
Extent of teaching 4P+2S
Annotation
The lecture sets mathematical foundations of modern cryptography (RSA, El-Gamal, elliptic curve cryptography). Related algorithms for primality testing, number factorisation and discrete logarithm are treated as well.
Course outlines
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, Diffie-Hellman 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.
Literature
[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/RSA-survey.pdf
[3] D.Hankerson, A.J.Menezes, S.Vanstone, Guide to elliptic curve cryptography, Springer, 2004.