Úvod do kryptografie (NMMB212)
Organizace
Cvičení se bude konat každý týden ve čtvrtek od 17:20 v učebně K6.Pokud mě budete chtít kontaktovat, pak nejlépe při/po cvičení nebo e-mailem na adrese adolf.[prijmeni]@matfyz.cz. V předmětu e-mailu prosím použijte kód předmětu, snížíte pravděpodobnost, že e-mail zapadne.
Stránky přednášky jsou zde.
1. cvičení
Historie kryptografie, základní pojmy, louskání strých šifer (Vigenere), typy útoků2. cvičení
Útok na Vigenereovu šifru, Vernamova šifra, Python type hints, Pythoní datové typy, předávání referencí3. cvičení
Huffmanovo kódování, entropie, konstrukce moderních šifer, implementace SPN4. cvičení
DES, meet-in-the-middle attack5. cvičení
meet-in-the-middle attack, AES, inverz v GF(2^n)6. cvičení
operační módy blokových šifer, padding oracle, compression oracle7. cvičení
Hashovací funkce7. cvičení
Hashovací funkce, MAC, TOTPZápočet
Vyřešit alespoň 3/4 úloh vyvěšovaných každý týden s občasnou přestávkou (řešení + postup). Hard deadline červenec. Dále vyžaduji buďto aktivní účast na cvičeních anebo odevzdání řešení zadávaných úloh do 2 týdnů od zadání.Domácí úlohy
- Vigenere: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 1.3.
- WPS: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 14.3. Prodloužený deadline 3 týdny.
- Linearní SPN: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 14.3.
- Compression oracle: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 28.3. (soft-deadline 3 týdny)
- Padding oracle: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 28.3. (soft-deadline 3 týdny)
- A5/1: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 12.4.
- TOTP: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 26.4.
- Bestest RSA: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Platí až hard deadline.
- Short task: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Platí až hard deadline
- RSA po čínsku: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Platí až hard deadline