Téma t2: Principy kryptografie

Zadáno v čísle 25.1.

Zadání

S jakýmikoli dotazy se nebojte ozvat do naší e-mailové konference krypto@mam.mff.cuni.cz. Příspěvky zaslané do této konference dostanou organizátoři i všichni účastníci, kteří k tématu poslali nějaké řešení.

5. díl: Elektronický podpis

Text vydaný v čísle (PDF)

Ve třetím problému je úkolem najít RSA klíč (veřejnou a případně i privátní část), který byl využit pro podepsání PDF dokumentu se zadáním tématu v pátém čísle, který je též odkazován výše.

Pro vyřešení čtvrtého problému budete potřebovat tento privátní klíč ve formátu PEM. Některé prohlížeče nejsou ochotné stahovat soubory s příponou PEM, nabízíme proto též ten samý soubor pouze se změněnou příponou. Použitý je asi nejrozšířenější formát souboru pro uchovávání privátního klíče definovaný ve standardu PKCS#1 a popsaný v RFC 3447.

4. díl: Asymetrické šifrování

Text vydaný v čísle (PDF)

3. díl: Módy blokových šifer

Text vydaný v čísle (PDF)

Cílem problémů 1 a 2 ve třetím čísle je ověřit, jaký má vliv mód blokové šifry na výsledek šifrování. Kvůli snadné vizualizaci výsledků jsme se rozhodli šifrovat obrázky.

Aby byla práce s obrázky co nejjednodušší, doporučujeme využít obrázky ve formátu PPM. Pro převod libovolného obrázku do tohoto formátu lze využít grafický editor Gimp (při převodu vyberte binární variantu formátu). Zobrazení obrázku je možné buďto opět Gimpem nebo celou řadou dalších programů. Pro uživatele Windows můžeme doporučit například IrFanView, na Linuxu dobře poslouží eog.

Formát PPM obsahuje krátkou hlavičku definující nezbytné vlastnosti obrázku, za kterou následují vlastní obrazová data. Aby bylo možné zašifrované obrázky opět zobrazit, budeme šifrovat pouze obrazová data. Můžete zašifrovat libovolný obrázek, který si vyberete, a nebo využít náš předpřipravený portrét Rikiho. V tomto obrázku zabírá hlavička 15 bytů. U předpřipraveného obrázku se tedy vnitřní strukturou formátu PPM nemusíte vůbec zabývat. Stačí když při šifrování přeskočíte prvních 15 bytů.

2. díl: Hashovací funkce

Text vydaný v čísle (PDF)

Pro zájemce nabízíme přímo ke stažení implementaci hashovací funkce RIKSHA v jazyku Python.

1. díl: Substitučně-permutační sítě a AES

Text vydaný v čísle (PDF)