ITC8240 Cryptography (2021)
Course information
Code: ITC8240 Cryptography
ECTS: 6
Assessment: examination
Instructors:
- Ahto Buldas ahto dot buldas at taltech dot ee
- Nikita Snetkov nikita dot snetkov at taltech dot ee
Topics
1. Introduction to the course 2. Simple (classical) ciphers: substitution, permutation, shift, affine, Vigenere 3. Attacks against classical ciphers: attack types, basic attacks, attacks against Vigenere 4. Theory of unbreakable ciphers I: basic conceptes of information theory 5. Theory of unbreakable ciphers II: proof that one-time pad is unbreakable, attacks against imperfect ciprers, unicity distance 6. Block ciphers: basic architectures, execution modes, etc. 7. Key establishment: definition, proof that no key establishment protocol is secure against unlimited adversaries, DH key exchange idea 8. Limited adversaries I: complexity theoretic approach to adversaries, complexity classes P and NP 9. Limited adversaries II: randomized computations, related complexity classes, Chernoff bounds, etc. 10. RSA cryptosystem: definition and related mathematical concepts 11. RSA implementation failures: some examples how RSA should not be implemented 12. Some other public key cryptosystems: ElGamal and related, EC cryptosystems, Paillier? 13. Digital signature schemes and hash functions: security notions, paddings, hash function basics 14. Cryptographic protocols: authentication, zero knowledge, etc. 15. Quantum adversaries: concept, some results without proofs (Shor, Grover) and their security implications. Post-quantum cryptosystems (overview)
E-learning process and grading criteria
Lectures:
Practice:
Homeworks:
Grading:
Communication: