Bachelor's Thesis

Nástroj pro vizuální kontrolu uživatelů na počítačích v síti

Final Thesis 4.89 MB

Author of thesis: Martin Brázda

Acad. year: 2025/2026

Supervisor: Ing. Lukáš Semerád, Ph.D.

Reviewer: Ing. Martin Sakin

Abstract:

This thesis aims to analyze existing solutions for remote control and supervision of computers on the network, implement a new solution based on the discovered properties, and test it in a real-world scenario. The application will be implemented with a hybrid architecture, allowing deployment in self-sufficient isolated computer labs, but also in complex universities with multiple computer labs. For data transfer, protocols WebSockets and WebRTC were used. In the case of monitoring 9 computers, network trafic was on average 3,619 MB per minute, without any signs of the students' computers, or the computer that monitored them slowing down.

Keywords:

network, computer, remote view, remote control, school, supervision, WebSockets, WebRTC, JSON-RPC

Date of defence

17.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B.

Topics for thesis defence

 

  1. V kapitole 5.2 podrobně popisujete mechanismus vlastní certifikační autority a TLS zabezpečení, přičemž v kapitole 8 uvádíte, že toto zabezpečení bylo při testování vypnuto kvůli nespecifikovanému problému. Dokážete přesněji popsat, jaká chyba nastala? Byl problém na straně generování certifikátu, jeho distribuce, nebo ověření v prohlížeči/klientské aplikaci?
  2. Zvažoval jste (či zkoušel) i jiné protokoly na komunikaci mezi aplikacemi? Např. MQTT, CoAP?

Language of thesis

Slovak

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Ing. Martin Čadík, Ph.D. (předseda)
doc. Ing. Ondřej Ryšavý, Ph.D. (místopředseda)
Ing. Marcela Zachariášová, Ph.D. (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)
Ing. Vojtěch Havlena, Ph.D. (člen)

Supervisor’s report
Ing. Lukáš Semerád, Ph.D.

Student sice delší čas nekomunikoval, vývoj celé aplikace však zvládal samostatně. Jelikož je výsledná aplikace velmi kvalitně vytvořená s mnohými rozšířeními, navrhuji hodnocení stupněm výborně (A).

Evaluation criteria Verbal classification
Informace k zadání

Zadání bakalářské práce považuji za mírně náročnější, je nutné skloubit znalosti síťového provozu, komprimace videa, uživatelského rozhraní i přímých zásahů do operačního systému a ovládání počítače. Výsledná aplikace byla otestována v běžném školním provozu a je funkční a použitelná. Student si zadání sám rozšířil o spoustu detailů ve funkcionalitě aplikace. 

Práce s literaturou

Student získával studijní materiály ke své práci samostatně.

Aktivita během řešení, konzultace, komunikace

Student na první konzultaci dorazil již před rokem. Od té doby se příliš neozýval, ale v posledním měsíci představil téměř kompletní aplikaci a dokumentaci.

Aktivita při dokončování

Aplikace byla pod mým dohledem testována při běžné školní výuce. K textu práce i k aplikaci jsem mohl mít připomínky, které byly do práce zaneseny. Finální verzi jsem však už ale možnost vidět neměl.

Publikační činnost, ocenění

Nejsou mi známa žádná ocenění této práce.
Když se ale na gymnáziu mezi učiteli rozkřiklo testování této aplikace, byl o ni velký zájem.

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Martin Sakin

Práce řeší náročné zadání a student prokázal schopnost navrhnout a implementovat komplexní distribuovaný systém s využitím moderních protokolů. Navrhuji hodnocení B.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: obtížnější zadání

Zadání považuji za mírně obtížnější, jelikož student musel navrhnout a vytvořit tři vzájemně komunikující komponenty, implementovat netriviální bezpečnostní mechanismy a výsledné řešení otestovat v reálném prostředí. Práce vyžadovala znalosti ze síťové komunikace, bezpečnosti, systémového programování pod Windows.

Prezentační úroveň technické zprávy

Logická struktura práce je v pořádku, postup od analýzy přes návrh po implementaci a testování je přirozený. Technické diagramy jsou přínosné a dobře vysvětleny. V některých částech je popis nadbytečný nebo příliš detailní. Například ukázky HTTP hlaviček na straně 27, popis nastavení SQLite databáze v sekci 5.4, implementační detaily klientských deskriptorů (bloky kódu) v sekci 5.6 nebo popis přihlašovací stránky v sekci 6.2.

80
Formální úprava technické zprávy

V sekci 6.5 chybí očíslování vzorců. Poznámky pod čarou jsou hojně využívány pro citace použitých knihoven a zdrojů, což je přijatelný, i když ne zcela standardní přístup. V ostatních případech je typografická úprava práce v pořádku. Jazykovou stránku práce (slovenština) nemohu hodnotit.

85
Realizační výstup

Implementace je rozsáhlá a funkčně bohatá. Architektura je promyšlená i včetně okrajových případů a řešení dobře zdůvodněné. Největším nedostatkem je nefunkční TLS zabezpečení WebSocket spojení, které student sám přiznává v kapitole 8 Testování. Co se týče kódu, mohly zde být přidány alespoň unit testy. Naopak oceňuji vyzkoušení architektury v reálném prostředí, tedy na školních počítačích se studenty.

85
Využitelnost výsledků

Práce není kompilačního charakteru, jde o samostatné praktické řešení konkrétního problému. Výsledný nástroj má potenciál pro reálné nasazení v počítačových učebnách jako alternativa k existujícím komerčním nebo open-source nástrojům, zejména díky webovému rozhraní, které nevyžaduje instalaci učitelského softwaru. Praktická použitelnost v současném stavu je dle kapitoly 8 omezena hlavně nezprovozněným TLS.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Rozsah práce je okolo 82 normostran, tedy splňuje obvyklé rozmezí. Kapitola 2 věnovaná analýze existujících řešení je sice pečlivě vypracována, ale místy se zdá příliš popisná na úkor analytické hloubky. Kapitoly popisující implementaci jsou konkrétní a technicky detailní. 

Práce s literaturou

Seznam literatury obsahuje pouze 12 položek, převážně RFC dokumenty a akademické články. Chybí citace k použitým frameworkům a technologiím, které jsou zmiňovány pouze v poznámkách pod čarou jako URL, což neodpovídá běžným citačním normám. Dále postrádám citace k bezpečnostním aspektům práce, například k problematice self-signed certifikátů.

68
Topics for thesis defence:
  1. V kapitole 5.2 podrobně popisujete mechanismus vlastní certifikační autority a TLS zabezpečení, přičemž v kapitole 8 uvádíte, že toto zabezpečení bylo při testování vypnuto kvůli nespecifikovanému problému. Dokážete přesněji popsat, jaká chyba nastala? Byl problém na straně generování certifikátu, jeho distribuce, nebo ověření v prohlížeči/klientské aplikaci?
  2. Zvažoval jste (či zkoušel) i jiné protokoly na komunikaci mezi aplikacemi? Např. MQTT, CoAP?
Points proposed by reviewer: 82

Grade proposed by reviewer: B

Responsibility: Mgr. et Mgr. Hana Odstrčilová