IA174 Fundaments of Cryptography
Faculty of InformaticsAutumn 2024
- Extent and Intensity
- 2/0/1. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- Teacher(s)
- doc. RNDr. Petr Novotný, Ph.D. (lecturer)
RNDr. Antonín Dufka (assistant)
RNDr. Ján Jančár (assistant)
Mgr. Jan Kvapil (assistant)
RNDr. Vojtěch Suchánek (assistant)
Mgr. Marek Sýs, Ph.D. (assistant) - Guaranteed by
- doc. RNDr. Petr Novotný, Ph.D.
Department of Computer Science – Faculty of Informatics
Supplier department: Department of Computer Science – Faculty of Informatics - Prerequisites
- Grasp of basic concepts from discrete mathematics (e.g. groups, see the MB154 and MV008 courses). Awareness of basic aims and building blocks of cryptography, corresponding to the respective parts of the PV080 course.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 31 fields of study the course is directly associated with, display
- Course objectives
- The course covers theoretical foundations of cryptography. We will learn why are the state-of-the-art cryptographic algorithms constructed in the way they are, and how to reason about their mechanics and security guarantees via the language of mathematics.
- Learning outcomes
- Upon a successful completion of the course, the student will be able to:
*Explain and understand the mechanics of basic primitives of both symmetric and asymmetric cryptography, including the underlying mathematics.
*Explain and understand the function, construction, and the use of cryptographic hash functions.
*Explain and understand cryptographic techniques for ensuring data authenticity and integrity, including digital signature schemes.
*Understand possible weaknesses of cryptosystems and various trade-offs in their design.
*Analyse weaknesses of simple cryptosystems. - Syllabus
- Symmetric cryptography:
- *Symmetric block ciphers: design principles and basic notions (boolean functions, random permutations, confusion, diffusion, non-linearity); design of iterated block ciphers, rounds, key schedules; AES; modes of operations of block ciphers.
- *Symmetric stream ciphers: General principles, ChaCha cipher, relation to pseudorandom number generators.
- Asymmetric cryptography:
- *General principles and design elements, "reductions" to hard problems.
- *RSA algorithm: math foundations (modular arithmetic, multiplicative Z_n^x groups, Euler's theorem, Chinese remainder theorem, extended Euclidean algorithm); RSA encryption, possible attacks, relationship to integer factorization.
- *Cryptography based on discrete logarithm (DL): refresher of basic group theory; DL in (Z_n )^x groups, Diffie-Hellman key exchange, DSA; discrete logarithm on elliptic curve groups, elliptic curve cryptography, ECDSA.
- Cryptographic hash functions: Design principles, Merkle–Damgård construction, sponge construction, collision-resistant CHFs, Keccak CHF, attacks against CHFs.
- Authentication, signatures:
- *Message authentication codes (MACs): integrity, authenticity, construction from block ciphers, construction from hash functions; authenticated encryption, AEAD.
- *Digital signatures: non-repudiation, signature schemes (RSA, DSA, Schnorr), attacks against dig. signature schemes, blind signatures.
- *Integrity of data structures: hash trees, their use in Bitcoin.
- *Basics of post-quantum cryptography.
- *Zero-knowledge proofs.
- Literature
- MENEZES, A. J., Paul van OORSCHOT and Scott A. VANSTONE. Handbook of applied cryptography. Boca Raton: CRC Press, 1997, xiii, 780. ISBN 0-8493-8523-7. info
- Teaching methods
- lecture, homework assignments
- Assessment methods
- homework assignments, final written exam
- Language of instruction
- English
- Further Comments
- The course is taught annually.
The course is taught: every week. - Listed among pre-requisites of other courses
- Teacher's information
- https://www.fi.muni.cz/~xnovot18/IA174_student_info.html
IA174 Fundaments of Cryptography
Faculty of InformaticsAutumn 2023
- Extent and Intensity
- 2/0/1. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- Teacher(s)
- doc. RNDr. Petr Novotný, Ph.D. (lecturer)
RNDr. Antonín Dufka (assistant)
RNDr. Ján Jančár (assistant)
Mgr. Jan Kvapil (assistant)
RNDr. Vojtěch Suchánek (assistant)
Mgr. Marek Sýs, Ph.D. (assistant) - Guaranteed by
- doc. RNDr. Petr Novotný, Ph.D.
Department of Computer Science – Faculty of Informatics
Supplier department: Department of Computer Science – Faculty of Informatics - Timetable
- Mon 16:00–17:50 D3
- Timetable of Seminar Groups:
- Prerequisites
- Grasp of basic concepts from discrete mathematics (e.g. groups, see the MB154 and MV008 courses). Awareness of basic aims and building blocks of cryptography, corresponding to the respective parts of the PV080 course.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 32 fields of study the course is directly associated with, display
- Course objectives
- The course covers theoretical foundations of cryptography. We will learn why are the state-of-the-art cryptographic algorithms constructed in the way they are, and how to reason about their mechanics and security guarantees via the language of mathematics.
- Learning outcomes
- Upon a successful completion of the course, the student will be able to:
*Explain and understand the mechanics of basic primitives of both symmetric and asymmetric cryptography, including the underlying mathematics.
*Explain and understand the function, construction, and the use of cryptographic hash functions.
*Explain and understand cryptographic techniques for ensuring data authenticity and integrity, including digital signature schemes.
*Understand possible weaknesses of cryptosystems and various trade-offs in their design.
*Analyse weaknesses of simple cryptosystems. - Syllabus
- Symmetric cryptography:
- *Symmetric block ciphers: design principles and basic notions (boolean functions, random permutations, confusion, diffusion, non-linearity); design of iterated block ciphers, rounds, key schedules; AES; modes of operations of block ciphers.
- *Symmetric stream ciphers: General principles, ChaCha cipher, relation to pseudorandom number generators.
- Asymmetric cryptography:
- *General principles and design elements, "reductions" to hard problems.
- *RSA algorithm: math foundations (modular arithmetic, multiplicative Z_n^x groups, Euler's theorem, Chinese remainder theorem, extended Euclidean algorithm); RSA encryption, possible attacks, relationship to integer factorization.
- *Cryptography based on discrete logarithm (DL): refresher of basic group theory; DL in (Z_n )^x groups, Diffie-Hellman key exchange, DSA; discrete logarithm on elliptic curve groups, elliptic curve cryptography, ECDSA.
- Cryptographic hash functions: Design principles, Merkle–Damgård construction, sponge construction, collision-resistant CHFs, Keccak CHF, attacks against CHFs.
- Authentication, signatures:
- *Message authentication codes (MACs): integrity, authenticity, construction from block ciphers, construction from hash functions; authenticated encryption, AEAD.
- *Digital signatures: non-repudiation, signature schemes (RSA, DSA, ElGamal), attacks against dig. signature schemes, blind signatures.
- *Integrity of data structures: hash trees, their use in Bitcoin.
- *Basics of post-quantum cryptography.
- *Zero-knowledge proofs.
- Literature
- MENEZES, A. J., Paul van OORSCHOT and Scott A. VANSTONE. Handbook of applied cryptography. Boca Raton: CRC Press, 1997, xiii, 780. ISBN 0-8493-8523-7. info
- Teaching methods
- lecture, homework assignments
- Assessment methods
- homework assignments, final written exam
- Language of instruction
- English
- Further Comments
- Study Materials
The course is taught annually. - Listed among pre-requisites of other courses
- Teacher's information
- https://www.fi.muni.cz/~xnovot18/IA174_student_info.html
IA174 Fundaments of Cryptography
Faculty of InformaticsAutumn 2022
- Extent and Intensity
- 2/0/1. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- Teacher(s)
- doc. RNDr. Petr Novotný, Ph.D. (lecturer)
RNDr. Antonín Dufka (assistant)
RNDr. Ján Jančár (assistant)
Mgr. Jan Kvapil (assistant)
RNDr. Vladimír Sedláček, Ph.D. (assistant)
RNDr. Vojtěch Suchánek (assistant)
Mgr. Marek Sýs, Ph.D. (assistant) - Guaranteed by
- doc. RNDr. Petr Novotný, Ph.D.
Department of Computer Science – Faculty of Informatics - Timetable
- Tue 8:00–9:50 D3
- Timetable of Seminar Groups:
- Prerequisites
- Grasp of basic concepts from discrete mathematics (e.g. groups, see the MB154 and MV008 courses). Awareness of basic aims and building blocks of cryptography, corresponding to the respective parts of the PV080 course.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 32 fields of study the course is directly associated with, display
- Course objectives
- The course covers theoretical foundations of cryptography, ranging from encryption and hashing primitives to more modern topics such as post-quantum cryptography. We will learn why are the state-of-the-art cryptographic algorithms constructed in the way they are, and how to reason about their mechanics and security guarantees via the language of mathematics.
- Learning outcomes
- Upon a successful completion of the course, the student will be able to:
*Explain and understand the mechanics of basic primitives of both symmetric and asymmetric cryptography, including the underlying mathematics.
*Explain and understand the function, construction, and the use of cryptographic hash functions.
*Explain and understand cryptographic techniques for ensuring data authenticity and integrity, including digital signature schemes.
*Understand, at an abstract level, the purpose and foundations of post-quantum cryptography and zero-knowledge proofs, so as to be able to learn further details of these topics on her/his own.
*Understand possible weaknesses of cryptosystems and various trade-offs in their design.
*Analyse weaknesses of simple cryptosystems. - Syllabus
- Symmetric cryptography:
- *Symmetric block ciphers: design principles and basic notions (boolean functions, random permutations, confusion, diffusion, non-linearity); design of iterated block ciphers, rounds, key schedules; AES; modes of operations of block ciphers.
- *Symmetric stream ciphers: General principles, ChaCha cipher, relation to pseudorandom number generators.
- Asymmetric cryptography:
- *General principles and design elements, "reductions" to hard problems.
- *RSA algorithm: math foundations (modular arithmetic, multiplicative Z_n^x groups, Euler's theorem, Chinese remainder theorem, extended Euclidean algorithm); RSA encryption, possible attacks, relationship to integer factorization.
- *Cryptography based on discrete logarithm (DL): refresher of basic group theory; DL in (Z_n )^x groups, Diffie-Hellman key exchange, DSA; discrete logarithm on elliptic curve groups, elliptic curve cryptography, ECDSA.
- Cryptographic hash functions: Design principles, Merkle–Damgård construction, sponge construction, collision-resistant CHFs, Keccak CHF, attacks against CHFs.
- Data integrity, message authentication, signatures (2 lectures):
- *Message authentication codes (MACs): integrity, authenticity, construction from block ciphers, construction from hash functions; authenticated encryption, AEAD.
- *Digital signatures: non-repudiation, signature schemes (RSA, DSA, ElGamal), attacks against dig. signature schemes, blind signatures.
- *Integrity of data structures: hash trees, their use in Bitcoin.
- Post-quantum cryptography: Quantum-computer attacks on RSA and discrete logarithm schemes, overview of candidate techniques for post-quantum cryptography, standardization of post-quantum cryptography.
- Zero-knowledge proofs: mathematical foundations, connection to complexity classes, illustration on concrete problems.
- Literature
- MENEZES, A. J., Paul van OORSCHOT and Scott A. VANSTONE. Handbook of applied cryptography. Boca Raton: CRC Press, 1997, xiii, 780. ISBN 0-8493-8523-7. info
- Teaching methods (in Czech)
- lecture, homework assignments
- Assessment methods (in Czech)
- mandatory homework assignments, final written exam
- Language of instruction
- English
- Further Comments
- Study Materials
The course is taught annually. - Listed among pre-requisites of other courses
- Teacher's information
- https://www.fi.muni.cz/~xnovot18/IA174_student_info.html
IA174 Fundaments of Cryptography
Faculty of InformaticsAutumn 2021
- Extent and Intensity
- 2/0/1. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- Teacher(s)
- doc. RNDr. Petr Novotný, Ph.D. (lecturer)
RNDr. Antonín Dufka (assistant)
RNDr. Ján Jančár (assistant)
Mgr. Jan Kvapil (assistant)
RNDr. Vladimír Sedláček, Ph.D. (assistant)
RNDr. Vojtěch Suchánek (assistant)
Mgr. Marek Sýs, Ph.D. (assistant) - Guaranteed by
- doc. RNDr. Petr Novotný, Ph.D.
Department of Computer Science – Faculty of Informatics - Timetable
- Mon 13. 9. to Mon 6. 12. Mon 14:00–15:50 D3
- Prerequisites (in Czech)
- Grasp of basic mathematical concepts (e.g. MB154 course). Awareness of basic aims and building blocks of cryptography, corresponding to the respective parts of the PV080 course.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 32 fields of study the course is directly associated with, display
- Course objectives (in Czech)
- The course covers theoretical foundations of cryptography, ranging from encryption and hashing primitives to more modern topics such as blockchain technologies. We will learn why are the state-of-the-art cryptographic algorithms constructed in the way they are, and how to reason about their mechanics and security guarantees via the language of mathematics.
- Learning outcomes (in Czech)
- Upon a successful completion of the course, the student will be able to:
*Explain and understand the mechanics of basic primitives of both symmetric and asymmetric cryptography, including the underlying mathematics.
*Explain and understand the function, construction, and the use of cryptographic hash functions.
*Explain and understand cryptographic techniques for ensuring data authenticity and integrity, including digital signature schemes.
*Understand, at an abstract level, the purpose and foundations of post-quantum cryptography, secret sharing, homomorphic encryption, and zero-knowledge proofs, so as to be able to learn further details of these topics on her/his own.
*Understand possible weaknesses of cryptosystems and various trade-offs in their design.
*Analyse weaknesses of simple cryptosystems.
*Explain and understand the concept of block chain and smart contracts, and be aware of the design principles behind relevant blockchain protocols. - Syllabus (in Czech)
- FUNDAMENTALS (8 letcures)
- Symmetric cryptography (2 lectures):
- *Symmetric block ciphers: design principles and basic notions (boolean functions, random permutations, confusion, diffusion, non-linearity); design of iterated block ciphers, rounds, key schedules; AES; modes of operations of block ciphers.
- *Symmetric stream ciphers: General principles, ChaCha cipher, relation to pseudorandom number generators.
- Asymmetric cryptography (3 lectures):
- *General principles and design elements, "reductions" to hard problems.
- *RSA algorithm: math foundations (modular arithmetic, multiplicative Z_n^x groups, Euler's theorem, Chinese remainder theorem, extended Euclidean algorithm); RSA encryption, possible attacks, relationship to integer factorization.
- *Cryptography based on discrete logarithm (DL): refresher of basic group theory; DL in (Z_n )^x groups, Diffie-Hellman key exchange, DSA; discrete logarithm on elliptic curve groups, elliptic curve cryptography, ECDSA.
- Cryptographic hash functions (CHFs, 1 lecture): Design principles, Merkle–Damgård construction, sponge construction, collision-resistant CHFs, Keccak CHF, attacks against CHFs.
- Data integrity, message authentication, signatures (2 lectures):
- *Message authentication codes (MACs): integrity, authenticity, construction from block ciphers, construction from hash functions; authenticated encryption, AEAD.
- *Digital signatures: non-repudiation, signature schemes (RSA, DSA, ElGamal), attacks against dig. signature schemes, blind signatures.
- *Integrity of data structures: hash trees, their use in Bitcoin.
- ADVANCED TOPICS (5 lectures):
- Post-quantum cryptography (1 lecture): Quantum-computer attacks on RSA and discrete logarithm schemes, overview of candidate techniques for post-quantum cryptography (lattice-based cryptography, code-based cryptography, multivariate cryptography), standardization of post-quantum cryptography.
- Homomorphic encryption (1 lecture): basic definitions, simple examples of partially homomorphic encryption; fully homomorphic encryption, Gentry's construction, bootstrapping, recent developments.
- Secret sharing (1 lecture): basic concepts, examples of secret sharing schemes (CRR-based, Shamir,...), verifiable secret sharing, end-to-end auditable voting systems.
- Zero-knowledge proofs (1 lecture): mathematical foundations, connection to complexity classes, illustration on concrete problems, zero-knowledge proofs in blockchain systems.
- Blockchain technology (1 lecture): blockchain as a general concept of a distributed ledger; Bitcoin, its design, proof of work, mining process; Ethereum, smart contracts, proof of stake; economical and social impact of blockchain technologies.
- Literature
- MENEZES, A. J., Paul van OORSCHOT and Scott A. VANSTONE. Handbook of applied cryptography. Boca Raton: CRC Press, 1997, xiii, 780. ISBN 0-8493-8523-7. info
- Teaching methods (in Czech)
- lecture, homework assignments
- Assessment methods (in Czech)
- mandatory homework assignments, final written exam
- Language of instruction
- English
- Further Comments
- Study Materials
The course is taught annually. - Listed among pre-requisites of other courses
- Teacher's information
- https://www.fi.muni.cz/~xnovot18/IA174_student_info.html
- Enrolment Statistics (recent)