Paralelní implementace generátoru pravidel RuleForge
Loading...
Date
Authors
Černý, Filip
Advisor
Referee
Mark
B
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
ORCID
Abstract
Slovníkový útok je oblíbenou praktikou při lámání hesel, jeho omezením je pouze kvalita a velikost slovníku. Lidé často za hesla volí upravená běžná slova a toho lze využít. Nástroj RuleForge pomocí strojového učení a shlukování dokáže extrahovat ze slovníku hesel časté vzory, které uživatelská hesla využívají. Tato pravidla mohou být využita pro obohacení slovníků o další relevantní slova. Slovníky se jimi rozšíří, přičemž kvalita hesel by měla být stále vysoká. Implementace nástroje RuleForge ale není perfektní. I když nabízí několik způsobů generování, některé shlukovací metody jsou velmi pomalé, až nedostatečné. Cílem této práce je vylepšit nástroj RuleForge, a to implementací v kompilovaném jazyce C++ za použití moderních přístupů k optimalizaci a paralelizaci. Nová implementace s názvem FastRuleForge nabízí zrychlení většiny shlukovacích metod hlavně díky akceleraci pomocí GPU. Přidání nových metod způsobilo v konkrétním případě urychlení běhu programu až o 96 %.
Dictionary attack is a popular practice in password cracking, its only limitation is the quality and size of the dictionary. People often choose modified common words as passwords and this can be exploited. Using machine learning and clustering, RuleForge can extract common patterns from the dictionary of passwords that users use. These rules can be used to enrich dictionaries with additional relevant words. They will expand the dictionaries while the quality of the passwords should remain high. However, the implementation of RuleForge is not perfect. Although it offers several generation methods, some of the clustering methods are very slow, even insufficient. The goal of this paper is to improve the RuleForge tool by implementing it in compiled C++ using modern approaches to optimization and parallelization. New implementation called FastRuleForge offers acceleration of most clustering methods mainly thanks to GPU acceleration. The addition of new methods caused, in a specific case, a program speed-up of up to 96 %.
Dictionary attack is a popular practice in password cracking, its only limitation is the quality and size of the dictionary. People often choose modified common words as passwords and this can be exploited. Using machine learning and clustering, RuleForge can extract common patterns from the dictionary of passwords that users use. These rules can be used to enrich dictionaries with additional relevant words. They will expand the dictionaries while the quality of the passwords should remain high. However, the implementation of RuleForge is not perfect. Although it offers several generation methods, some of the clustering methods are very slow, even insufficient. The goal of this paper is to improve the RuleForge tool by implementing it in compiled C++ using modern approaches to optimization and parallelization. New implementation called FastRuleForge offers acceleration of most clustering methods mainly thanks to GPU acceleration. The addition of new methods caused, in a specific case, a program speed-up of up to 96 %.
Description
Citation
ČERNÝ, F. Paralelní implementace generátoru pravidel RuleForge [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. Ing. Petr Matoušek, Ph.D., M.A. (předseda)
Ing. Bohuslav Křena, Ph.D. (člen)
Ing. Jan Pluskal, Ph.D. (člen)
Ing. František Grézl, Ph.D. (člen)
Ing. Jiří Matoušek, Ph.D. (člen)
Date of acceptance
2025-06-19
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 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í studenta na položené otázky rozhodla práci hodnotit stupněm B.
Result of defence
práce byla úspěšně obhájena
