Course detail

Foundations of Cryptography

FEKT-BKC-ZKRAcad. year: 2024/2025

Basic terminology in cryptology, cryptology categorization, algebraic structures used in cryptography. Generation, testing and use of prime numbers. Group arithmetics. Complexity theory fundamentals. Computationally hard problems used in cryptography – discrete logarithm, RSA problem, EC discrete logarithm. The overview of basic algorithms used in cryptography. Symmetric and asymmetric cryptosystems (DES, AES, RSA, DH, ECDH, SHA2, 3) and their practical use. Provable security concept – proofs, formal models, zero-knowledge, Sigma-protocols.  

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Entry knowledge

The course is designed as an introduction to the subject of cryptography thus no prerequisites are required. Only high school knowledge and general PC usage experience is expected.

Rules for evaluation and completion of the course

The maximum of 15 points is given upon completion of the theoretical test in laboratories. The correct completion of all tasks in laboratories adds 15 points. The requirements on the completion of the tasks in laboratories are described in the annual supervisor’s notice. The maximum of 70 points can be gained during the final exam.
The conditions for the successful course completion are stated in the yearly updated supervisor’s notice.

Aims

The goal of the course is to provide students with the basic knowledge of cryptography and to provide them with information necessary in more advanced courses in information and communication security. During the course, students will study the theoretical foundations (mainly the algebraic structures and their properties), the most common algorithms and concepts used in modern cryptography.
Students will obtain theoretical foundations of cryptography and computer security. Based on these foundations, students will be able to analyze and design security solutions for information and communication technologies (ICT). Students will be able to explain basic principles of algebraic structures used in cryptography, basic cryptographic primitives (hashes, RNG, provably secure protocols), basic algorithms and describe the internals of symmetric and asymmetric algorithms. Students will be theoretically prepared for follow-up courses from data transfer and ICT security areas.

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

OCHODKOVÁ, Eliška. Matematické základy kryptografických algoritmů [online]. [cit. 2013-06-11]. Dostupné z: http://mi21.vsb.cz/sites/mi21.vsb.cz/files/unit/mat_zaklady_kryptografickych_algoritmu.pdf
BURDA, K. Úvod do kryptografie. Úvod do kryptografie. Brno: Akademické nakladatelství CERM, 2015. ISBN: 978-80-7204-925- 7.

Recommended literature

SINGH, Simon. Kniha kódů a šifer: tajná komunikace od starého Egypta po kvantovou kryptografii. Praha: Dokořán, 2003, 382 s. ISBN 80-865-6918-7.
LEVICKÝ, Dušan. Kryptografia v informačnej bezpečnosti. Košice: Elfa, 2005, 266 s. ISBN 80-808-6022-X.
MENEZES, Alfred J. Handbook of applied cryptography. Vyd. 1. Boca Raton: CRC Press, 1997, 780 s. ISBN 08-493-8523-7. Online https://cacr.uwaterloo.ca/hac/.
STALLINGS, William. Cryptography and network security: principles and practice. Seventh edition. xix, 731 pages. ISBN 01-333-5469-5.
GARRETT, Paul. Making, breaking codes: an introduction to cryptology. Vyd. 1. Upper Saddle River: Prentice Hall, 2001, xix, 523 s. ISBN 01-303-0369-0.

Classification of course in study plans

  • Programme BKC-TLI Bachelor's 3 year of study, winter semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

1. Úvod do kryptografie, historie
2. Úvod do teorie čísel
3. Prvočísla a jejich využití v kryptografii
4. Základy struktur používaných v kryptografii
5. Základy struktur používaných v kryptografii II
6. Modulární aritmetika
7. Výpočetní problémy, jejich klasifikace a využití
8. Algoritmy pro kryptografii I
9. Algoritmy pro kryptografii II
10. Šifrování v praxi
11. Autentizace a digitální podpis v praxi
12. Prokazatelná bezpečnost I
13. Prokazatelná bezpečnost II

Exercise in computer lab

39 hod., compulsory

Teacher / Lecturer

Syllabus

1. Úvod do cvičení
2. Základní operace a jejich softwarová implementace
3. Generování a testování prvočísel
4. Generování grup a jejich vlastnosti
5. Diskrétní logaritmus a jeho využití v kryptografii
6. RSA problém a jeho využití v kryptografii
7. Eliptické křivky a jejich využití v kryptografii
8. Základní algoritmy
9. Základy práce v kryptografickém simulačním softwaru
10. Simulace jednoduchých kryptosystémů
11. Simulace moderních šifrovacích algoritmů
12. Simulace moderních autentizačních protokolů