bakalářská práce

Zabezpečení a vzdálená správa na mikrokontroleru ESP32

Text práce 2.93 MB

Autor práce: Bc. Marek Novota

Ak. rok: 2025/2026

Vedoucí: Ing. Martin Štůsek, Ph.D.

Oponent: doc. Ing. Pavel Mašek, Ph.D.

Abstrakt:

Táto bakalárska práca sa zaoberá analýzou a praktickým overením bezpečnostných mechanizmov mikrokontroléra ESP32 a návrhom systému bezpečnej aktualizácie firmware. V teoretickej časti sú popísané mechanizmy Secure Boot v2, Flash Encryption a podpisovanie firmware, ako aj možnosti lokálnej a vzdialenej aktualizácie zariadenia. Pozornosť je venovaná aj OTA aktualizáciám, organizácii flash pamäte, OTA partíciám, rollback a anti-rollback mechanizmom. V praktickej časti sú uvedené bezpečnostné mechanizmy implementované a overené na mikrokontroléri ESP32. Súčasťou riešenia je
webová aplikácia na správu a distribúciu firmware, ktorá umožňuje nahrávanie nových verzií, generovanie manifestu, výpočet SHA-256 hashu a poskytovanie firmware súborov zariadeniu. Aplikácia podporuje lokálnu aktualizáciu v servisnom režime cez UART a vzdialenú OTA aktualizáciu cez Wi-Fi sieť. OTA mechanizmus umožňuje automatickú distribúciu aktualizácií v prípade existencie novšej verzie firmware. Práca ďalej hodnotí dopad bezpečnostných mechanizmov na výkon zariadenia, najmä na rýchlosť čítania a zápisu do flash pamäte, vyťaženie procesora, dostupnú SRAM pamäť a čas štartu systému. Výsledky ukazujú, že bezpečnostné mechanizmy zvyšujú ochranu zariadenia za
cenu mierneho obmedzenia výkonu.

Klíčová slova:

ESP32, mikrokontrolér, ESP-IDF, Secure Boot v2, Flash Encryption, podpisovanie firmware, OTA aktualizácia, UART, webová aplikácia, Flask, manifest, SHA-256, rollback, anti-rollback, eFuse, FreeRTOS

Termín obhajoby

16.06.2026

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znamkaBznamka

Klasifikace

B

Průběh obhajoby

Otázky oponenta: Jakým způsobem je možné využít hardwarovou akceleraci na ESP32 pro operace zápis/šifrování a čtení/dešifrování? Pro jaké další šifrovací operace (kromě samotného dešifrování obsahu flash paměti) využívá architektura ESP32 hardwarovou akceleraci? V zadání práce není specifikována bezdrátová technologie pro vzdálenou aktualizaci zařízení. Z jakého důvodu byl zvolen standard IEEE 802.11? Existují možné alternativy? Student prezentoval výsledky své práce a komise byla seznámena s posudky. Student obhájil bakalářskou práci a odpověděl na otázky členů komise a oponenta.

Jazyk práce

slovenština

Fakulta

Ústav

Studijní program

Informační bezpečnost (BPC-IBE)

Složení komise

doc. Ing. Jiří Hošek, Ph.D. (předseda)
doc. Ing. Petr Sysel, Ph.D. (místopředseda)
Mgr. Andrej Krištofík, Ph.D. (člen)
Ing. Martin Štůsek, Ph.D. (člen)
Ing. Radek Možný, Ph.D. (člen)
Ing. Michal Lares, Ph.D. (člen)
Ing. Patrik Dobiáš (člen)

Posudek vedoucího
Ing. Martin Štůsek, Ph.D.

Bakalářská práce studenta Marka Novoty se zabývá popisem a implementací bezpečnostních mechanismů na mikrokontroléru ESP32. Student v průběhu celého semestru aktivně konzultoval průběh prací a připomínky v rámci praktické části implementace zapracoval. Z praktického hlediska jsou všechny cíle práce splněny v plné míře.

To však nelze konstatovat o výsledné textovém dokumentu, který vykazuje množství typografických chyb. Jedná se zejména o chybějící tečky na konci popisků obrázků, nepoužívání nezlomitelných mezer a nevhodné strukturování nadpisů sekcí a kapitol. Celkově by mělo být dělení do sekcí a strukturování v práci vylepšeno. Práce také obsahuje obrázky, které nebyly přeloženy, a i v textu se občas vyskytují anglické výrazy bez patřičného překladu. Z hlediska obsahového by práce měla více do hloubky popisovat vytvořenou aplikaci. Aktuální popis působí velmi stroze v porovnání s popisem bezpečnostních mechanismů.

Jako celek však práci hodnotím pozitivně a doporučuji k obhajobě se známkou B/85 bodů. Výsledný počet bodů navržený vedoucím: 85

Známka navržená vedoucím: B

Bakalářská práce studenta Marka Novoty zpracovává téma „Zabezpečení a vzdálená správa na mikrokontroleru ESP32“. V teoretické části práce se student dle zadání nejprve zaměřuje na zvolený mikrokontroler ESP32 a následně na zabezpečovací mechanismy. Konkrétně je pozornost soustředěna na (i) Secure Boot v2 (pro zajištění spuštění pouze důvěryhodného firmware), (ii) Flash Encryption (pro šifrování paměti) a (iii) mechanismy podepisování firmware. Nakonec student diskutuje problematiku lokálních a vzdálených aktualizací OTA, rozložení flash paměti (OTA partition) a mechanismy rollback a anti-rollback pro zabránění přechodu na starší, potenciálně zranitelnou, verzi firmware.

V praktické části bakalářské práce student provedl implementaci diskutovaných mechanismů pro zvýšení zabezpečení. Pro účely vzdálené správy byla naprogramována webová aplikace, která slouží k administraci a distribuci firmware. Aplikace umožňuje (i) nahrávání nových verzí firmware, (ii) generování manifestu a výpočet kontrolního SHA-256 hashe, (iii) lokální aktualizaci přes rozhraní UART v servisním režimu, (vi) vzdálenou automatickou distribuci OTA aktualizací přes Wi-Fi, pokud systém podle manifestu detekuje existenci novější verze firmware na serveru. Součástí praktické části práce je také porovnání výkonnosti zvoleného mikrokontroleru před a po implementaci diskutovaných zabezpečovacích mechanismů.

Z pohledu oponenta je zadání bakalářské práce splněno, nicméně oponent má následující komentáře:

• Studentův vlastní přínos, který je popsán v kapitole 3 „Webová aplikace pro aktualizaci firmware“, obsahuje pouze základní popis fungování aplikace, bez detailního popisu. Zcela např. chybí analýza bezpečnosti samotného serveru (např. řízení přístupu, autorizace pro nahrání nového firmware) a explicitní popis šifrování samotného komunikačního kanálu mezi serverem a ESP32 (např. implementace TLS a ověřování certifikátů). Přestože je v textu práce uveden odkaz na GitHub, považuje oponent technický popis implementace za průměrný.
• Lokální aktualizace přímým zápisem přes UART byla ověřena pouze jako servisní mechanismus pro vývojovou konfiguraci zařízení. Pro produkční režim se zapnutým zabezpečením student odkazuje na nutnost využití ESP-IDF OTA API, což znamená, že implementovaný UART mechanismus není připraven pro nasazení se zapnutým šifrováním.
• Práce po formální stránce obsahuje řadu překlepů, gramatických chyb, a nelogických souvětí. Bakalářská práce obsahuje 21 referencí, které ve většině odkazují na webové stránky – namísto ověřených vědeckých publikací či knih. Dále je nutné zmínit nejednotný styl zápisu referencí, který neodpovídá normě ISO ČSN 690 pro bibliografické citace.

Na základě výše uvedeného je bakalářská práce z pozice oponenta hodnocena 80 body/B a doporučena k obhajobě. Otázky k obhajobě:
  1. Jakým způsobem je možné využít hardwarovou akceleraci na ESP32 pro operace zápis/šifrování a čtení/dešifrování?
  2. Pro jaké další šifrovací operace (kromě samotného dešifrování obsahu flash paměti) využívá architektura ESP32 hardwarovou akceleraci?
  3. V zadání práce není specifikována bezdrátová technologie pro vzdálenou aktualizaci zařízení. Z jakého důvodu byl zvolen standard IEEE 802.11? Existují možné alternativy?
Výsledný počet bodů navržený oponentem: 80

Známka navržená oponentem: B

Odpovědnost: Mgr. et Mgr. Hana Odstrčilová