PV204 Security Technologies

Fakulta informatiky
jaro 2025
Rozsah
2/2/2. 5 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: k.
Vyučováno kontaktně
Vyučující
doc. RNDr. Petr Švenda, Ph.D. (přednášející)
Ing. Milan Brož, Ph.D. (přednášející)
Mgr. Vít Bukač, Ph.D. (přednášející)
Lukasz Michal Chmielewski, PhD (přednášející)
RNDr. Václav Lorenc (přednášející), doc. RNDr. Petr Švenda, Ph.D. (zástupce)
RNDr. Antonín Dufka (pomocník)
Garance
doc. RNDr. Petr Švenda, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Kontaktní osoba: doc. RNDr. Petr Švenda, Ph.D.
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky
Předpoklady
Registration to PV204 requires: 1) long-term interest in IT security; 2) programming skills (ideally C and Java) under Unix/Linux or Windows; 3) fluent English.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Předmět si smí zapsat nejvýše 36 stud.
Momentální stav registrace a zápisu: zapsáno: 0/36, pouze zareg.: 0/36, pouze zareg. s předností (mateřské obory): 0/36
Mateřské obory/plány
předmět má 37 mateřských oborů, zobrazit
Cíle předmětu
The aim of this subject is to understand the deeper aspects of selected security and applied cryptographic topics. The topics cover cryptographic hardware security, including side-channel attacks, secure authentication, and authorization protocols, trusted boot, analysis of malware and rootkits (both black-box and gray-box), reverse engineering of binary applications, techniques used in Bitcoin cryptocurrency and file/disk encryption. Students should be able to apply the gained knowledge in practice based on experience gained from the laboratory, homework assignments, and extensive project work requiring programming skills.
Výstupy z učení
After course completion, the student will be able to:
- explain the security advantages of hardware security element to a typical desktop operating system;
- analyze the implementation of a cryptographic algorithm for a presence of the timing side-channel;
- describe and use good practices for password handling, including password alternatives and their advantages;
- explain principles of key establishment protocols and building blocks of modern secure messaging systems;
- explain principles and used technologies of trusted computing;
- describe the technology behind disk encryption and used encryption modes;
- perform basic analysis of infected computer image;
- implement security-related application utilizing cryptographic smartcard with JavaCard platform and transfer data via a secure channel;
- explain security building blocks of cryptocurrencies like Bitcoin
Osnova
  • Side-channel attacks (timing, power and fault analysis)
  • Basics of smart cards (PC/SC, APDU, basic applet – JavaCard & .net card & MULTOS), secure programs on JavaCard platform
  • Secure authentication and authorization (common protocols like FIDO U2F and Signal, secure implementation, attacks)
  • Hardware Security Modules (HSM), PKCS#11 API, cryptographic hardware in cloud deployment
  • Trusted boot (TPM, trusted boot process, remote attestation)
  • Micro-architectural attacks against modern CPU (Meltdown, Spectre attacks principle, fixes, exploitability)
  • Black-box analysis of malware (infection vectors, analysis of the environment, network analysis)
  • Grey-box analysis of malware (analysis of memory dumps, tools)
  • Reverse engineering of binary applications (decompiler, disassembler, native-code debugging, binary patching)
  • File and disk encryption (Common architectures, used cryptographic modes, typical attacks)
  • Bitcoin cryptocurrency (P2P Bitcoin network, transactions, mining, second-layer networks like Lighting Network, use of hardware wallets, attacks)
Výukové metody
lectures, hands-on seminars, homework assignments, team programming project
Metody hodnocení
Two hours per week are scheduled for a lecture, two hours per week scheduled for seminars; otherwise, students work on project and homework assignments in their free time. There are five homework assignments and a collaborative team project. 50 % of points are required to pass the course with mandatory limits also for assignments and project.
Vyučovací jazyk
Angličtina
Navazující předměty
Informace učitele
This is a relatively advanced security course with moderate programming skills and knowledge of applied cryptography basics.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024.