Kryptografické systémy

Ú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, Jupyter

3. 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čnosti

5. cvičení

DES a jeho varianty, implementace Meet-in-the-middle (kód)

6. cvičení

AES, operační módy, orákula

7. cvičení

LFSR (definice, polynomy, převod F<->G)

8. cvičení

Hashovací fce - Merkle-Damgard, Sponges, KDF, bruteforce na SHA256

9. cvičení

Rainbow tables, MAC, RSA (side-channels, phi(N), přehled)

10. cvičení

Kód

Zá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.