Bachelor's Thesis

Evolution of cryptographic functions with local search

Final Thesis 12.57 MB

Author of thesis: Tereza Kadlecová

Acad. year: 2025/2026

Supervisor: Ing. Jakub Husa, Ph.D.

Reviewer: Ing. Jiří Matoušek, Ph.D.

Abstract:

One of the most important properties of cryptographic functions is nonlinearity. Maximum nonlinearity can be achieved only for functions with an even number of inputs. If a function has an odd number of inputs, the maximum achievable nonlinearity is still an open problem. There are multiple ways in which functions with high nonlinearity can be created – one of them is heuristic construction. Evolutionary algorithms are one of these heuristic constructions and in the field of cryptography the best results are usually achieved by genetic programming. Local search is a heuristic, where problem space is searched by iterative application of operators on a candidate solution. By adding this step the efficiency of the heuristic approach to finding highly nonlinear cryptographic functions should be improved. This work is focused on searching for rotation symmetric boolean functions with nine inputs. In this work we tried many settings of two newly proposed local search algorithms and it was statistically proven that with their help the number of evaluated candidate solutions can be decreased, thus improving the efficiency of the evolutionary algorithm.

Keywords:

Genetic programming, local search, cryptography, nonlinearity, Boolean functions.

Date of defence

17.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Studentka nejprve prezentovala výsledky, kterých dosáhla v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Studentka následně odpověděla na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studentky na položené otázky rozhodla práci hodnotit stupněm A.

Topics for thesis defence

  1. Jak vypadá pravdivostní tabulka funkce XOR2 (je znázorněna na obrázku 7.20, ale není není uvedena v tabulce 5.1) a proč je důležité zahrnout do množiny povolených funkcí i funkci AND2?
  2. Vysvětlete reprezentaci pravdivostních tabulek použitou v popiscích obrázků 7.21-7.23 a stručně okomentujte vlastnosti funkcí znázorněných na těchto obrázcích. Kterou z těchto funkcí byste si vybrala pro praktické použití a jakými parametry byste se při jejím výběru řídila?
  3. Ačkoliv zadání bakalářské práce cílilo na snížení celkového počtu vyhodnocovaných kandidátních řešení prostřednictvím rozšíření evolučního algoritmu o lokální prohledávání, pro celkovou výpočetní náročnost evolučního algoritmu může být podstatný i počet provedených lokálních prohledávání. Porovnejte proto výpočetní náročnost vyhodnocení navržených fitness funkcí a navržených způsobů lokálního prohledávání a vyjádřete se k otázce, který z kroků navrženého memetického algoritmu bude mít největší vliv na jeho celkovou výpočetní náročnost.
  4. S jakými vstupy pracují použité funkce?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Ing. František Zbořil, CSc. (předseda)
doc. Ing. Michal Španěl, Ph.D. (místopředseda)
Ing. Jan Pluskal, Ph.D. (člen)
Ing. Aleš Smrčka, Ph.D. (člen)
Ing. Josef Strnadel, Ph.D. (člen)

Supervisor’s report
Ing. Jakub Husa, Ph.D.

Studentka odvedla vynikající práci a její přístup i získané výsledky výrazně překonaly moje očekávání, Práci navrhuji hodnotit stupněm výborně – 100 A.

Evaluation criteria Verbal classification
Informace k zadání

Jedná se o průměrně obtížné zadání výzkumného charakteru. Jeho cílem bylo prozkoumat některou z heuristických metod tvorby kryptografických booleovských funkcí a zvýšit její efektivitu pomocí lokálního prohledávání. Studentka musela nastudovat pokročilé evoluční algoritmy, které nejsou součástí běžného bakalářského studia, a získala výsledky, které překonávají srovnatelnou metodu v současné literatuře. Zadání bylo splněno v plném rozsahu.

Práce s literaturou

Bezproblémová. Studentka samostatně vyhledávala a využívala odbornou literaturu.

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

Studentka byla po celou dobu zimního i letního semestru velmi aktivní. Po celou dobu aktivně komunikovala, plnila zadané úkoly, a dodržovala zadané termíny. Na konzultace vždy chodila dle plánu a byla výborně připravena.

Aktivita při dokončování

Práce byla psána průběžně, už od začátku letního semestru, a dokončena v dostatečném předstihu. Obsah jednotlivých kapitol se mnou byl průbežně a často konzultován. Všechny moje připomínky byly řádně zapracovány.

Publikační činnost, ocenění

V současnoti není známa. Získané výsledky však po určitém rozšíření mají publikační potenciál.

Points proposed by supervisor: 100

Grade proposed by supervisor: A

Reviewer’s report
Ing. Jiří Matoušek, Ph.D.

I přes mírně obtížnější zadání se studentce podařilo dosáhnout všech vytyčených cílů a vytvořit nadprůměrně kvalitní bakalářskou práci. Vypracovaná technická zpráva sice obsahuje některé (spíše drobné) prezentační nedostatky a řadu (opakujících se) jazykových nedostatků, ale vzhledem k množství odvedené - především studijní a experimentální - práce předpokládám, že příčinou těchto nedostatků byla spíše absence času na finální detailní revizi technické zprávy než nedostatečné množství času věnovaného bakalářské práci. Navrhuji proto hodnocení výborně / A.

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

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

Vzhledem k rozsahu adresované problematiky vyžadovalo zadání zvýšené úsilí a hlavně pečlivý přístup ve většině fází řešení bakalářské práce.

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

Technická zpráva je vhodně členěna do kapitol, které čtenáři v logickém sledu představují jednotlivé části bakalářské práce. Navzdory teoretičtějšímu charakteru řešené problematiky a velkému množství provedených experimentů je technická zpráva jako celek pro čtenáře dobře pochopitelná. Vzhledem k celkovému rozsahu není překvapivé, že technická zpráva obsahuje drobné prezentační nedostatky, například:

  • nevysvětlení použitých zkratek ECB, CBC, OFB a CFB módů blokových šifer (str. 13);
  • opakující se popisy dílčích obrázků 7.16a, 7.16c a 7.16e, respektive 7.16b, 7.16d a 7.16f (str. 51);
  • náhodné zaměňování zavedeného pojmu simpleLS označením "jednoduché LS" a zavedeného pojmu complexLS označením "komplexní LS" bez předchozího upozornění čtenáře na jejich zaměnitelnost.

Za nejzávažnější nedostatek z pohledu pochopitelnosti pak považuji popis v sekci 7.1.3, z nějž mi není jasné, zda jsou porovnávány výsledky algoritmu při použití simpleLS s opakováním a bez opakování, nebo zda se porovnávají výsledky algoritmu s aplikací simpleLS a bez aplikace simpleLS. I přes výše uvedené nedostatky však považuji celkovou prezentační úroveň technické zprávy za nadprůměrnou.

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

Z pohledu typografie považuji technickou zprávu za vysoce nadprůměrnou a nemám jí co vytknout. Z jazykového pohledu však technická zpráva obsahuje velké množství chyb, zejména v případech:

  • psaní čárky (jak chybějící, tak přebývající);
  • shody podmětu s přísudkem či přívlastkem;
  • psaní spojky zdali (používána v podobě "zda-li").

Ve svém hodnocení nicméně zohledňuji to, že k celkově velkému množství jazykových nedostatků vede časté opakování jen relativně omezeného okruhu chyb.

80
Realizační výstup

Implementovaný nástroj pro evoluci kryptografických funkcí s pomocí lokálního prohledávání je plně funkční. Návod na jeho přeložení a použití je jak součástí technické zprávy, tak přiloženého archivu. Implementace je smysluplně členěna na dílčí části a vytvořené zdrojové kódy jsou přiměřeně komentovány.

95
Využitelnost výsledků

Témat bakalářské práce vychází z publikace [5] ze seznamu použité literatury. Oproti této publikaci se bakalářská práce zaměřuje pouze na jeden konkrétní evoluční algoritmus (genetické programování) a na jednu reprezentaci chromozomu (stromová struktura), ale věnuje větší pozornost výběru algoritmu pro lokální prohledávání. Výsledky této bakalářské práce by tedy potenciálně mohly být publikovány, například formou posteru, na (mezinárodní) vědecké konferenci.

Pro praktické využití evolučně získaných funkcí v oblasti kryptografie by se práce musela zaměřit spíše na vlastnosti takto získaných funkcí (výpočetní náročnost, implementovatelnost v HW, atd.) než na proces jejich získávání.

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

Evaluation level: zadání splněno

Zadání bylo zcela splněno.

Rozsah technické zprávy

Evaluation level: přesahuje obvyklé rozmezí

Rozsah technické zprávy (cca 85 normostran) mírně přesahuje obvyklé rozmezí. Větší rozsah je však zapříčiněný především detailním experimentálním vyhodnocením navržených a implementovaných řešení zadaného problému, takže jej nelze hodnotit negativně.

Práce s literaturou

Množství použitých zdrojů, jejich relevanci k tématu práce i kvalitu práce s nimi v rámci technické zprávy hodnotím - vzhledem k tomu, že se jedná o bakalářskou práci - jako vysoce nadprůměrnou.

100
Topics for thesis defence:
  1. Jak vypadá pravdivostní tabulka funkce XOR2 (je znázorněna na obrázku 7.20, ale není není uvedena v tabulce 5.1) a proč je důležité zahrnout do množiny povolených funkcí i funkci AND2?
  2. Ačkoliv zadání bakalářské práce cílilo na snížení celkového počtu vyhodnocovaných kandidátních řešení prostřednictvím rozšíření evolučního algoritmu o lokální prohledávání, pro celkovou výpočetní náročnost evolučního algoritmu může být podstatný i počet provedených lokálních prohledávání. Porovnejte proto výpočetní náročnost vyhodnocení navržených fitness funkcí a navržených způsobů lokálního prohledávání a vyjádřete se k otázce, který z kroků navrženého memetického algoritmu bude mít největší vliv na jeho celkovou výpočetní náročnost.
  3. Vysvětlete reprezentaci pravdivostních tabulek použitou v popiscích obrázků 7.21-7.23 a stručně okomentujte vlastnosti funkcí znázorněných na těchto obrázcích. Kterou z těchto funkcí byste si vybrala pro praktické použití a jakými parametry byste se při jejím výběru řídila?
Points proposed by reviewer: 95

Grade proposed by reviewer: A

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