Mathematics for Cryptology
Code  Completion  Credits  Range  Language 

MIMKY.16  Z,ZK  5  3P+1C  Czech 
 Lecturer:
 Tutor:
 Supervisor:
 Department of Information Security
 Synopsis:

Students become familiar with parts of mathematics necessary for deeper understanding of the methods used in symmetric and asymmetric cryptography. They learn the mathematical principles on which security of encryption systems, cryptanalysis methods, cryptography over elliptic curves, and quantum cryptography are based.
 Requirements:

Good knowledge of algebra, linear algebra and basics of number theory (BILIN, BIZDM, MIMPI).
 Syllabus of lectures:

1. General Algebra: Group, ring, eld, vector space.
2. Extension of nite elds and choice of their bases.
3. (2) Algebraic equations: Grobner bases.
4. (2) Solving algebraic equations over nite elds.
5. Discrete logarithm: DieHellman key exchange, ElGamal encryption system.
6. Discrete logarithm: Babystepgiantstep algorithm, Pollard's rho method.
7. Discrete logarithm: PohligHellman algorithm.
8. Elliptic curves over real numbers and Galois elds.
9. Factoring using elliptic curves, the MOV algorithm.
10. Quantum computing: foundations of quantum mechanics, qubit and operations with it.
 Syllabus of tutorials:

Examples of various mathematical structures will be discussed.
 Study Objective:
 Study materials:

1. Hoffstein, J.  Pipher, J.  Silverman, J. H. An Introduction to Mathematical Cryptography. Springer, 2008. ISBN 9781441926746.
2. Lidl, R.  Niederreiter, H. Finite Fields. Cambridge University Press, 2008. ISBN 9780521065672.
3. Menezes, A.J.  van Oorschot, P. C.  Vanstone, S. A. Handbook of Applied Cryptography. CRC Press, 1996. ISBN 0849385237.
4. Nielsen, M. A.  Chuang, I. L. Quantum Computation and Quantum Information. Cambridge University Press, 2011. ISBN 9781107002173
 Note:
 Further information:
 https://courses.fit.cvut.cz/MIMKY/
 No timetable has been prepared for this course
 The course is a part of the following study plans:

 Master branch Knowledge Engineering, in Czech, 20162017 (elective course)
 Master branch Computer Security, in Czech, 20162019 (compulsory course of the specialization)
 Master branch Computer Systems and Networks, in Czech, 20162019 (elective course)
 Master branch Design and Programming of Embedded Systems, in Czech, 20162019 (elective course)
 Master branch Web and Software Engineering, spec. Info. Systems and Management, in Czech, 20162019 (elective course)
 Master branch Web and Software Engineering, spec. Software Engineering, in Czech, 20162019 (elective course)
 Master branch Web and Software Engineering, spec. Web Engineering, in Czech, 20162019 (elective course)
 Master program Informatics, unspecified branch, in Czech, version 20162019 (VO)
 Master branch System Programming, spec. System Programming, in Czech, 20162019 (elective course)
 Master branch System Programming, spec. Computer Science, in Czech, 20162017 (elective course)
 Master specialization Computer Science, in Czech, 20182019 (elective course)
 Master branch Knowledge Engineering, in Czech, 20182019 (elective course)