Tools for Statistical Testing of Pseudorandom Number Arrays

Abstract

Generirani brojevi dobiveni pomoću generatora slučajnih brojeva su statistički nezavisni i nepredvidivi, ali pošto se takvi brojevi generiraju po nekome algoritmu ipak se može zaključiti da ti brojevi nisu sasvim slučajni. U idealnom svijetu koristili bi se pravi slučajni brojevi, no kako svijet nije idealan, tako je i prave slučajne brojeve jako teško pronaći. U ovome radu obrađena su četiri najčešća generatora slučajnih brojeva, a to su : LCF, LFG, ANSI X9.17 i RSA generator. Kako bi se provjeriti slučajnost generiranog niza koriste se standardizirani testovi slučajnosti kao što su ENT, Diehard i NIST koji su također opisani u radu. Pomoću ovih setova testova moguće je utvrditi dali je generirani niz slučajan to jest dali zadovoljava određene testove slučajnosti. U ovisnosti u rezultatima testova, testirane algoritme kasnije je moguće koristiti za potrebe šifriranja u kriptografiji ukoliko su testirani nizovi zaista slučajni ili ih koristiti u neke druge svrhe gdje sigurnost nije toliko bitna stavka.Generated numbers obtained by a random number generator are statistically independent and unpredictable, but since such numbers are generated by some algorithm, it can be concluded that these numbers are not quite random. In ideal world we would use real random numbers, but the world is not ideal, so real random numbers are really hard to find. In this paper, four most common random number generators are described: LCF, LFG, ANSI X9.17 and RSA generator. In order to check the randomness of generated sequence, standardized random tests such as ENT, Diehard and NIST are used, which are also described in the paper. Using these sets of tests, it is possible to determine whether the generated sequence is random or not. Depending on test results, tested algorithms can later be used for encryption purposes in cryptography, if the tested arrays are really random, or they can be used for other purposes where security is not so important

    Similar works