Posudek oponenta bakalářské práce
Studijní program:Aplikovaná informatika Studijní obor:Aplikovaná informatika Akademický rok:2020/2021
Název práce:Práce se šifrovacímí knihovnami v Javě Řešitel:Miloslav Fico
Vedoucí práce:Ing. Tomáš Bruckner, Ph.D.
Oponent:Ing. Vojtěch Růžička
Hlediska Stupeň
hodnocení
1. Jasnost a srozumitelnost formulace tématu a cíle práce 1
2. Rozsah a relevance popisu současného poznání 2
3. Náročnost řešeného tématu práce 1
4. Adekvátnost metod k řešení stanoveného problému, správnost jejich výběru a použití 2
5. Rozsah, hloubka a preciznost popisu výsledku 2
6. Relevance a správnost diskuse výsledku 2
7. Věcný přínos výsledku dosaženého v práci 2
8. Relevance informačních zdrojů a korektnost jejich citování 1
9. Logická stavba práce a vzájemná konzistence jednotlivých částí 2 10. Gramatika, jazykový styl, terminologie a celková úprava práce 2
Konkrétní připomínky a dotazy k práci:
Práce zahrnuje úvod do JCA a JCE a popis dvou nejpoužívanějších knihoven třetích stran. Vzhledem k tomu, že se jedná o hlavní zaměření práce, byla by zde vhodná vyšší úroveň detailu. Kladně hodnotím zahrnutí legislativních aspektů, jejichž zmínění je důležité, vzhledem k omezením a podmínkám, které přinášejí.
Waterfall metodika je vzhledem k povaze aplikace adekvátní.
Popis cílového stavu a technického stacku aplikace by zasloužil vyšší úroveň detailu a zdůvodnění výběru konkrétních možností a jejich alternativ. Zároveň je diskutabilní, zda by tyto konkrétní implementační detaily neměly následovat až po analýze a vycházet z ní.
Návrh aplikace je redukován pouze na diagram tříd a popis jednotlivých balíčků. Bylo by vhodné zahrnout i další aspekty návrhu aplikace.
Kladně hodnotím zahrnutí unit testů, na které se často opomíjejí. Otázkou je ale, zda je vhodné kód testů vkládat přímo do práce.
Kladně hodnotím zahrnutí i sekce o bezpečném uchovávání dat, které není vždy správně zpracováno a to i v profesionálních aplikacích.
Sekce o hostingu je přinejmenším diskutabilní a zcela nezapadá do rámce práce. V práci o použití šifrovacích knihoven v Javě je irelevantní porovnávat cloudové poskytovatele, dostupné velikosti instancí, prvotní nastavení, údržbu nebo cenovou politiku. V této sekci se řeší bezpečnost na obecné úrovni, jako je firewall, malware detection, separace účtů k databázi nebo fyzické zabezpečení serverů. Zaměření na obecnou bezpečnost je zde v kontextu šifrování irelevantní.
V závěru autor sám přiznává, že implementované řešení není vhodné a lepší volbou by bylo použití Java Secure Socket Extension. K takovému závěru by měl autor dospět již při úvodním studiu problematiky a ne až po zpracování celé práce.
Celkově se práce málo věnuje jádru problému, kterým je práce s šifrovacími knihovnami v Javě a zbytečně na úkor toho rozpracovává vzdálenější oblasti, jako je hosting a deployment.
Otázky k obhajobě: Jaké výhody přináší použití Java Secure Socket Extension, oproti Vámi zvolenému přístupu? Má použití JSSE také nějaké nevýhody a úskalí?
Závěr: Bakalářskou práci doporučuji k obhajobě.
Navrhovaná výsledná klasifikace práce: 2
Datum: 4. 6. 2021 Ing. Vojtěch Růžička
oponent práce