Kryptografické systémy

Kryptografické systémy (NMMB201)

Organizace

Cvičení se bude konat každý druhý týden v úterý od 17:20 v učebně K2.
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.

Zápočet

Obyčejně každé cvičení bude zveřejněna sada úloh, jejímž vyřešením bude možné získat kolem 14 bodů. Na odevzdání bude zpravidla dva týdny. Při pozdním odevzdání budou úlohy ohodnoceny polovičním počtem bodů. Na zápočet budete potřebovat alespoň 60 bodů a celkem bude možné nasbírat až 100 bodů. Celkový počet bodů se promítne i do výsledné známky zkoušky.

Dění na cvičení

1. cvičení (19. 2.)

    Skytalé, Caesar, Vigenere, Vernam, afinní šifra, Hillova šifra

2. cvičení (4. 3.)

    Druhy útočníku, COA na Vigenerovu šifru, entropie a Huffmanovo kódování

3. cvičení (19. 3.)

    Rundovní funkce, ne/linearita S-Boxu, DES

4. cvičení (2. 4.)

    DES útoky, Inverz v GF(256), AES, Vaudenayův útok na CBC padding
5. cvičení (16. 4.)
    Pokus o vysvětlení lineární kryptanalýzy, LFSR, Booleovské funkce (ANF)
6. cvičení (30. 4.)
    Hashovací fce (Merkle-Damgard, length-extension attack), ospravedlnění konstrukce HMACu, Sponge construction, RSA optimalizace přes ČVOZ

Domácí úkoly

Písemné úlohy odevzdávejte na cvičení nebo emailem, zdrojové kódy (ve vašem oblíbeném programovacím jazyku) pouze emailem. Elektronickou cestou nelze posílat naskenovaný rukopis. Postup řešení (v případě zdrojového kódu stručné komentáře klíčových kusů kódu) jsou nezbytnou součástí řešení. Pokud je za úlohu (x + y bodů), pak první hodnota odpovídá "početní" části, druhá odpovídá části programovací.
Výsledky domácích úkolů

Literatura

  • Cryptography Engineering: Design Principles and Practical Applications (Ferguson, Schneier, Kohno)