Show simple item record

Evolutionary Design of Hash Functions

dc.contributor.advisorDobai, Rolandcs
dc.contributor.authorKidoň, Marekcs
dc.date.accessioned2018-10-21T17:08:41Z
dc.date.available2018-10-21T17:08:41Z
dc.date.created2016cs
dc.identifier.citationKIDOŇ, M. Evoluční návrh hašovacích funkcí [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2016.cs
dc.identifier.other96371cs
dc.identifier.urihttp://hdl.handle.net/11012/61836
dc.description.abstractHašovací tabulky jsou rychlé vyhledávací struktury, které se staly součástí moderního světa výpočetních technologií a svou snadnou implementací si získali mnoho příznivců v řadách programátorů. Volba vhodné hašovací funkce je klíčová. Nevhodně zvolená hašovací funkce může mít za následek špatný výkon hašovací tabulky a aplikace na ní navázanou. V současné době existují velmi dobré implementace obecných hašovacích funkcí, tedy takových, jejichž vstup není omezen na konkrétní doménu. Na druhé straně, pokud známe vstupní doménu, můžeme navrhnout hašovací funkcí na míru dané aplikaci a tím dosáhnout výrazně lepších výsledků než v případě hašovací funkce obecné. Návrh hašovací funkce není triviální záležitost. Neexistují pevně dané normy, pravidla, návody ani automatizované nástroje, který by za nás tuto práci odvedly. V případě ručního návrhu se autor hašovací funkce musí spoléhat na své znalosti, zkušenosti, vynalézavost a intuici. V případě takto komplikovaných úloh je někdy vhodné se uchýlit k méně tradičním technikám návrhu jako jsou evoluční algoritmy. Evoluční algoritmy přistupují k řešení problémů způsobem prohledávání stavového prostoru, inspirují se v přírodních procesech a to konkrétně v Darwinistické reprodukci druhů. V této práci se budeme zabývat evolučním návrhem hašovacích funkcí pro doménu IP adres, unikátních identifikátorů síťového rozhraní v sítích řízených internetovým protokolem. Vybraným evolučním algoritmem je genetické programování, velmi specifická podskupina počítání podle přírody, která svými vlastnosmi umožňuje navrhnovat skutečně kvalitní hašovací funkce. Evolučně navržené hašovací funkce nabízejí velmi dobré vlastnosti s ohledem na specifickou aplikaci. A předčí své state-of-the- art obecné, člověkem navržené protějšky co se rychlosti i odolnosti vůči kolizím týče.cs
dc.description.abstractHash tables are fast associative array implementations which became part of modern world of information technology and thanks to its simplicity became very popular among computer programmers. The choice of proper hash function is very important. Improperly selected hash function can result in poor hash table performance and its application. Currently there are many exceptional implementations of general hash functions. Such functions are not constrained to a concrete set of inputs, they perform on any input. On the other hand if we know the input domain we can design a specific hash function for desired application thus reaching better levels of performance compare to a general hash function. However hash function design is not trivial. There are no rules, standards, guides nor automated tools that would help us with such a task. In case of manual design the hash function author has to rely on his/her knowledge, experience, inventiveness and intuition. In case of such complicated tasks there is sometimes advantageous to choose a different path and use techniques such as evolution algorithms. Natural computing is an approach of certain problem solutions that are inspired by the process of species reproduction as defined by Charles Darwin. In this thesis we will design hash functions for the domain of IP addresses, that serve as an unique network device interface identifier in internet protocol networks. The chosen subset of natural computing is the genetic programming, a very specific technique that is an adequate approach to our problem thanks to its properties. Evolutionary designed hash functions offer good properties. They outperform state-of-the-art generic, human-created hash functions in terms of speed and collision resistance.en
dc.language.isocscs
dc.publisherVysoké učení technické v Brně. Fakulta informačních technologiícs
dc.rightsStandardní licenční smlouva - přístup k plnému textu bez omezenícs
dc.subjectevoluční návrhcs
dc.subjecthašovací funkcecs
dc.subjectgenetické programovánícs
dc.subjectpočítání podle přírodycs
dc.subjectinterne- tový protokolcs
dc.subjectevolution designen
dc.subjecthash functionen
dc.subjectgenetic programmingen
dc.subjectnatural computingen
dc.subjectinternet protocolen
dc.titleEvoluční návrh hašovacích funkcícs
dc.title.alternativeEvolutionary Design of Hash Functionsen
dc.typeTextcs
dcterms.dateAccepted2016-06-22cs
dcterms.modified2020-05-10-16:12:28cs
thesis.disciplineMatematické metody v informačních technologiíchcs
thesis.grantorVysoké učení technické v Brně. Fakulta informačních technologií. Ústav počítačových systémůcs
thesis.levelInženýrskýcs
thesis.nameIng.cs
sync.item.dbid96371en
sync.item.dbtypeZPen
sync.item.insts2020.06.23 09:15:11en
sync.item.modts2020.06.23 08:31:58en
eprints.affiliatedInstitution.facultyFakulta informačních technologiícs
dc.contributor.refereeBidlo, Michalcs
dc.description.markBcs
dc.type.drivermasterThesisen
dc.type.evskpdiplomová prácecs
but.committeeprof. Ing. Tomáš Vojnar, Ph.D. (předseda) doc. RNDr. Jitka Kreslíková, CSc. (místopředseda) prof. RNDr. Milan Češka, CSc. (člen) Ing. Martin Hrubý, Ph.D. (člen) RNDr. Marek Rychlý, Ph.D. (člen) Doc. Ing. Oldřich Trenz, Ph.D. (člen)cs
but.defenceStudent 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. Otázky u obhajoby: Jaký je význam četnosti 0.05 u elitismu v tabulce 4.1 na str. 27? Jakým způsobem byly získány trénovací datasety a v čem se zásadně odlišují, když v řadě případů dávají značně různé výsledky při vyhodnocování výsledných hašovacích funkcí? Kolik operací (řádově) obsahují Vámi nalezené hašovací funkce? Je možné výrazy hašovacích funkcí, nalezené pomocí CGP, dále optimalizovat (zjednodušit) např. pomocí vhodného matematického SW?cs
but.resultpráce byla úspěšně obhájenacs
but.programInformační technologiecs
but.jazykčeština (Czech)


Files in this item

Thumbnail
Thumbnail
Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record