WAGNER, F. Generování kryptograficky-bezpečných prvočísel pomocí hardware [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2023.
Bakalárska práca sa zameriava na implementáciu generátora kryptograficky bezpečných prvočísel respektíve testu prvočíselnosti pre platformu FPGA v jazyku VHDL. V teoretickom úvode sa spočiatku venuje a do hĺbky popisuje matematický pohľad na prvočísla kde popisuje aj metódy hľadania prvočísel. Následne popisuje využitie prvočísel v kryptografii Práca obsahuje v sumáre 29 zdrojov, ale niektoré časti, hlavne v teoretickom úvode, sa opierajú vždy iba o jeden špecifický zdroj, uvítal by som ich viac na podporenie daných tvrdení. Formálna stránka práce splňuje náležitosti. Jednotlivé časti obsahujú schémy, grafy alebo tabuľky s obsahom podporujúcim pochopenie danej problematiky. Popisuje taktiež súčasné kryptosystémy na integrovaných obvodoch a ich využitie - konkrétne aj cieľovú technológiu použitú v praktickej časti a to FPGA. Následne zoznamuje čitateľa s jazykmi pre popis hardware. Praktické riešenie sa na začiatku zaoberá samotným výberom vhodného testu prvočíselnosti na následnú implementáciu, pričom sa opiera aj o údaje z vytvoreného modelu a porovnania týchto testov v jazyku python. Následne definuje a popisuje bezpečnosť prvočísel vzhľadom na ich využitie v kryptografii. Finálny kandidát a teda aj implementovaný test je Miller-Rabinův test prvočíselnosti pre 160 bitová čísla, overovaný 40 behmi. Študent popisuje jednotlivé časti praktickej implementácie ako aj limitácie a problémy ktorým čelil počas implementácie. Študent implementoval viacero modelov a stupňov optimalizácie pre daný test, kde jednotlivé modely a ich dosiahnuté výstupy a možnosti syntetizovatelnosti. Praktické výstupy sú na prijateľnej úrovni, s kvalitou kódu by sa dalo ešte niečo spraviť ale neni sú tam nejake zásadné chyby. Počas testovania odovzdaných výstupov identifikujeme že asi došlo k nie nutne správnej optimalizácii Vivadom, a teda napríklad odstránenie DSP blokov, výstupy syntézy nevyzerajú úplne uveritelne. Ale ako PoC dostačujúce a je možné ich ďalej rozvíjať a zamerať sa na to. Odovzdané súbory v elektronickej prílohe obsahujú samotné zdrojové kódy riešení, zdrojový súbor pre spustenie simulácie a slovný návod/postup. Zadanie považujem formálne za splnené. Študent konzultoval ked bolo nutné, pracoval ale skôr samostatne kde proaktívne riešil jednotlivé problémy počas implementácie.
Cílem bakalářské práce byl návrh a implementace testu prvočíselnosti pro platformu FPGA splňující požadovanou kryptografickou bezpečnost. V teoretické části student vhodně postupoval při popisu nejprve prvočísel, testování prvočíselnosti, použití prvočísel v kryptografických systémech a následně kryptografie na integrovaných obvodech až po jazyky pro vývoj hardwaru. V praktické části práce student zvolil Miller-Rabinův test prvočíselnosti pro vlastní implementaci a popsal implementované algoritmy. Celkově student vytvořil 5 modelů implementace, které umožňují paralelní testování pro více svědků. Student v práci nezmiňuje jak byla testována správná funkčnost implementace a v přiložených zdrojích se nachází testbench pouze se 4 různými čísly, což nepovažuji za dostatečné pro 160 bitové čísla. Dále v šesté kapitole uvádí student výsledky pro první dva modely, které se mu podařily syntézovat, ostatní selhaly s chybou, kterou student nebyl schopen vyřešit. Prezentované výsledky využitých zdrojů a maximální frekvence vypadají až příliš dobře a neodpovídají náročnosti implementace (např. implementace využívá velký počet násobení, ale nejsou uvedeny žádné DSP bloky). Nicméně toto mohlo být nejspíše způsobeno nějakou vnitřní optimalizací během syntézy, o které student nevěděl. Po formální stránce hodnotím práci velmi dobře, objevují se zde jen občasné překlepy. Vzhledem k nedostatkům v rámci praktické implementace práci navrhuji k obhajobě s hodnocením C (75 bodů).
eVSKP id 151238