ZÁHORSKÝ, M. Asymetrické kryptografické algoritmy ve vestavěných systémech [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2023.
Navrhuji ohodnotit práci stupněm A. Důvodem je použití inovativního přístupu k implementaci a akceleraci algoritmů asymetrické kryptografie. Rovněž si velmi cením precizní práce studenta během celého roku. Student se dále zaměřil na netriviální oblast akcelerace algoritmů s využitím syntézy na systémové úrovni pro FPGA. S touto úlohou se student velmi dobře vypořádal, důkladně prozkoumal platformu a její využitelnost. Získané znalosti z obou oblastí vhodně spojil a vytvořil řešení, které s nízkým nárokem na zdroje dokáže realizovat kryptografické podpisy pro obrazová data. Informace z této diplomové práce budou dále využity ve výzkumných projektech. Výsledná práce je velmi pečlivě provedená a vyhodnocena. Navíc je napsaná v anglickém jazyce.
| Kritérium | Známka | Body | Slovní hodnocení |
|---|---|---|---|
| Informace k zadání | Téma je relativně volné, avšak student zvolil netriviální řešení založené na kombinaci "soft-core" mikrokontroléru MicroBlaze a přidruženého akcelerátoru pro výpočet klíčových částí asymetrické kryptografie. Student pečlivě analyzoval výkonnost kryptografického algoritmu pro MicroBlaze, identifikoval časově náročné výpočty a následně je akceleroval pomocí nástroje Vivado HLS. Celkově hodnotím diplomovou práci jako obtížnou. Zadání práce bylo splněno a jsem spokojený s výsledkem. Student v rámci diplomové práce spolupracoval na projektu SECUSEN II, kde je jeho řešení součástí výsledků projektu. | ||
| Práce s literaturou | Student samostatně vyhledal a využil dostatečný počet studijních materiálů a relevantních vědeckých prací potřebných pro úspěšné zpracování práce. | ||
| Aktivita během řešení, konzultace, komunikace | Student pracoval samostatně a pravidelně se účastnil konzultací. Byl aktivní po celý rok. Na konzultace chodil vždy řádně připraven a projevoval zájem o danou problematiku. | ||
| Aktivita při dokončování | Práce byla dokončena v předstihu a byla dostatečně konzultována. | ||
| Publikační činnost, ocenění | Část práce byla využita projektu "SECUSEN II". Student přispěl k vyhodnocení výsledků, vypracování funkčního vzorků a software. |
I přes některé výhrady ve formální a prezentační úrovni práce je technická zpráva na velice dobré úrovni. V rámci tvorby realizačního výstupu autor provedl řadu experimentální i implementační práce, která vedla k výraznému urychlení výpočtů podpisu senzorových dat prostřednictvím ECDSA na platformě Zynq ZC702. Díky kvalitě technické zprávy i realizačního výstupu proto navrhuji hodnocení známkou A (92 bodů).
| Kritérium | Známka | Body | Slovní hodnocení |
|---|---|---|---|
| Náročnost zadání | Zadání práce je poměrně obecně napsané a má průměrnou obtížnost. | ||
| Rozsah splnění požadavků zadání | Zadání je splněno v plném rozsahu. Autor se v práci zaměřil na algoritmy pro hashování a podepisování senzorových dat, které navíc nad rámec zadání akceleroval prostřednictvím FPGA. | ||
| Rozsah technické zprávy | |||
| Prezentační úroveň technické zprávy | 88 | Práce je čtivá a kapitoly na sebe navazují, ke struktuře mám však několik výhrad. U kapitoly 3 by bylo vhodnější hierarchické členění podkapitol (např. kapitola "3.5 Rivest-Shamir-Adleman (RSA)" a kapitola "3.6 Digital Signature Algorithm (DSA)" by měly být podkapitolou kapitoly "3.3 Asymmetric cryptography"). Kapitola "2.2 FPGA" obsahuje nejprve rozdělení na funkční bloky a poté popis jednotlivých částí. Některé bloky ale nejsou na začátku vyjmenovány (např. BRAM a v textu popisované DSP) a některé bloky nejsou popsány vůbec (BRAM), přitom se o nich v textu dále autor zmiňuje. Na některé obrázky není v textu explicitní odkaz, ale jsou v práci umístěny vhodně. | |
| Formální úprava technické zprávy | 90 | Práce je po typografické stránce v pořádku, až na několik výhrad. Název projektu SECUSEN je vysázen fontem používaným pro zdrojové kódy. V textu se vyskytuje nekonzistentní způsob navázání textu na obrázky a zdrojové kódy (v některých případech je ukončená věta před obrázkem dvojtečkou, v některých tečkou). Delší zdrojové kódy (např. Listing 5) by bylo vhodnější umístit do příloh. Zpráva je napsána v anglickém jazyce. Jazyková stránka je na dobré úrovni. | |
| Práce s literaturou | 90 | V literárním přehledu zprávy se vyskytuje 22 literárních zdrojů, které doplňuje dalších 18 zdrojů vyskytujících se v textu pod čarou. Zdroje jsou vzhledem k zaměření práce relevantní a vyskytují se mezi nimi kvalitní knihy a články zaměřující se na kryptografii a akceleraci algoritmů na FPGA. Všechny zdroje jsou v práci řádně ocitovány. | |
| Realizační výstup | 98 | Realizačním výstupem je kompletní řešení pro podepisování senzorových dat prostřednictvím algoritmu ECDSA na FPGA se zaměřením na platformu Zynq ZC702. Součástí výstupu jsou algoritmy pro generování pseudonáhodných čísel, hashování vstupních dat, kombinování hashů prostřednictvím Merkleova stromu a pro podepisování dat prostřednictvím FPGA. Práce obsahuje řadu experimentů s výše zmíněnými algoritmy s různým nastavením syntézy microblaze procesoru, nastavením kompilátoru, nastavením frekvence a s použitím různých eliptických křivek pro ECDSA. Po profilování optimální konfigurace z experimentální části výstupu autor akceleroval nejpřínosnější část algoritmu prostřednictvím high-level syntézy. | |
| Využitelnost výsledků | Realizační výstup je možné využít pro podepisování senzorových dat na FPGA. Část realizačního výstupu je využitelná v projektu SECUSEN. |
eVSKP id 148408