Applied Cryptography
Lectures:
- Luca Campa, MSc.
- Ass.-Prof. Dr. Arnab Roy
ECTS: 5
Weekly Hours: 3
Format: In-person lectures
Language: English
Prerequisites: Knowledge of Algorithm, Programming (e.g. Python), Discrete mathematics (basics)
Assessment: Quizzes and Presentation of (implementation/programming) assignments
Objectives
The students will learn basic cryptographic primitives and their real world applications for securing digital communications. They will get familiar with selected cryptographic libraries. The students will learn selected (basic) cryptanalytic attacks against cryptographic primitives and the practical effect of such attacks on real world applications (e.g. network protocols, password security). Upon successful completion of the course the students will have knowledge of fundamental cryptographic primitives and how such primitives are used in widely used real world applications and protocols.
Content
- Block cipher and encryption modes; Introduction to TLS; Message authentication and encryption in TLS; Encryption (mode) of Telegram; Cryptanalytic attacks on (selected) encryption modes and their real-world effect
- Hash functions and applications; Time memory tradeoff attacks; Cryptanalytic attacks on MD4/5
- Public key cryptography: RSA, Diffie-Hellman, Digital Signature; PKI and CA authority; Forging certificates
- PRNG, PRNG with crypto libraries; PRNG in linux systems; Breaking PRNGs
- SSL library for cryptographic functions;
- Key-derivation function (KDF); HKDF and application in Signal protocol
Recommended Readings
C. Paar, J. Pelzl: Understanding CryptographyCourse material is provided on OLAT, the e-learning platform of the University of Innsbruck.