Bakalářská práce

Analýza pseudonáhodných generátorov C rand() a Java Random

An analysis of pseudorandom C rand() and Java Random

Natália Jankaničová
Anotace

Práca sa zaoberá skúmaním výstupov pseduonáhodných generátorov C rand() a Java Random. Pomocou nástroja BoolTest boli pre tieto generátory nájdené funkcie - rozlišovače, ktoré dokážu odlíšiť ich výstup od náhodného. V práci sú skúmané rôzne modifikácie týchto funkcií a ich sila rozlišovania. Výsledky sú prezentované pomocou grafov a tabuliek. V teoretickej časti sú zhrnuté základné poznatky o pseudonáhodných …více

Abstract

This thesis analyses outputs of pseudorandom number generators C rand and Java Random. Functions which can distinguish pseudorandom outputs from random were found for these generators by the use of BoolTest. The thesis deals with various modifications of these functions and their power of differentation. The results are summarized in graphs and charts. In the theoretical part the basic knowledge of …více

Zadání práce
Cílem práce je analyzovat vlastnosti výstupu (nekryptografických) pseudonáhodných generátorů používaných v knihovnách jazyku C (rand) a Java (Random). Práce zmapuje nástroje pro statistického testování náhodnosti, provede rešerši literatury ohledně známých nežádoucích vlastností generátorů rand a Random a provede shrnutí dosud známých vlastností a jejich projevů, kterými tyto generátory trpí (nepředvídatelnost, uniformita distribuce...). Speciální zaměření bude na pokus o propojení rozlišování výstupu generátorů od opravdu náhodného proudu dat (tzv. distinguisher) pomocí polynomů konstruovaných nástrojem BoolTest a výsledků z existující literatury.
V praktické části dojde k pokusu o vylepšení dříve nalezeného polynomu distinguisheru tak, aby se vylepšila stávající úspěšnost rozlišování. Budou detailně diskutovány parametry zkoušeného nastavení a jejich výsledky.
Literatura:
EACirc project, https://github.com/crocs-muni/EACirc
Dieharder statistical test suite, http://www.phy.duke.edu/~rgb/General/dieharder.php
Sys et. al.: The Efficient Randomness Testing using Boolean Functions (BoolTest), https://crocs.fi.muni.cz/public/papers/secrypt2017
Práce zkontrolována:
11. 6. 2018 21:02, doc. RNDr. Petr Švenda, Ph.D., učo 4085
Jazyk práce
slovenština slovenština
Termín obhajoby
25. 6. 2018
Práce byla úspěšně obhájena

Vedoucí

doc. RNDr. Petr Švenda, Ph.D., učo 4085
KPSK FI MU

Oponent

RNDr. Dušan Klinec, Ph.D., učo 325219
KPSK FI MU

  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.