Úvod do kryptografie (NMMB212)
Organizace
Cvičení se bude konat každý týden ve pátek od 9:00 v učebně K11.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)2. cvičení
Vlastnosti starých šifer, Huffmanovo kódování, pravděpodobnosti, CyberChef, Jupyter3. cvičení
Budování moderních šifer, programování substitučně permutační sítě (kód)4. cvičení
Intuitivní vhled do lineární a diferenční kryptonanalýzy, typy bezpečnosti5. cvičení
DES a jeho varianty, implementace Meet-in-the-middle (kód)6. cvičení
AES, operační módy, orákula7. cvičení
LFSR (definice, polynomy, převod F<->G)8. cvičení
Hashovací fce - Merkle-Damgard, Sponges, KDF, bruteforce na SHA2569. cvičení
Rainbow tables, MAC, RSA (side-channels, phi(N), přehled)10. cvičení
KódZá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 18.2.
- WPS: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 26.2.
- Lineární SPN: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 13.3.
- Compression oracle: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 25.3.
- Padding oracle: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 25.3. (zde místo 2 týdnů stačí měsíc jako náhrada aktivní účasti).
- A5/1: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 16.4. (zde místo 2 týdnů stačí 3 týdny jako náhrada aktivní účasti).
- TOTP: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 1.5. (neplatí omezení na 2 týdny)
- RSA made in China: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. (neplatí omezení na 2 týdny)
- Krátký úkol: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 30.4. (neplatí omezení na 2 týdny)
- Trump RSA: Najděte klíč ve tvaru KRYPTO{...} a společně s postupem mi ho pošlete na e-mail. Zadáno 30.4. (neplatí omezení na 2 týdny) Disclaimer: jde o převzatou úlohu z dob prezidentských voleb v USA, takže formát je trochu odlišný od zbytku úloh.