Mathematical Cryptography
Code  Completion  Credits  Range  Language 

BE4M01MKR  Z,ZK  6  4P+2S 
 Lecturer:
 Tutor:
 Supervisor:
 Department of Mathematics
 Synopsis:

The lecture will set mathematical foundations of modern cryptography (RSA, ElGamal, elliptic curve cryptography, hashing). Also, the related algorithms for primality testing (numbers sieves) and discrete logarithms will be treated.
 Requirements:
 Syllabus of lectures:

1. Basic notions of number theory, generators of random numbers and random primes.
2. A review of basic cryptosystems (RSA, ElGamal).
3. RabinMiller test for generating random primes.
4. Using Euler's totient function for factorisation, generator of Z_m^*.
5. Hashing and message authentication.
6. Subexponential algorithms for factorisation and discrete logarithm.
7. Basic ideas of quadratic sieve.
8. Basic ideas of deterministic primality test.
9. Elliptic curves and their Abelian group.
10. Discrete logarithm on an elliptic curve. Generators of random elliptic curves.
11. Attacks on RSA cryptosytem and its implementation.
12. Quantum computing and satefy of cryptosystems.
13. Stockpile.
 Syllabus of tutorials:
 Study Objective:
 Study materials:

[1] D.Hankerson, A.J.Menezes, S.Vanstone, Guide to elliptic curve cryptography, Springer, 2004.
[2] V.Shoup, A Computational introduction to number theory and algebra, Cambridge University Press, 2008, http://shoup.net/ntb/
 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)
 Open Informatics  Cyber Security (compulsory course of the specialization)