80 likes | 171 Views
KATEDRA SPECIÁLNÍCH KOMUNIKAČNÍCH SYSTÉMŮ. A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Application
E N D
KATEDRA SPECIÁLNÍCH KOMUNIKAČNÍCH SYSTÉMŮ A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Application This contribution discusses some aspects of testing random and pseudorandom number generators. A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications (NIST Special Publication) is presented. The software implementation of the test suite with output protocols and presents experiences from testing some random and pseudorandom generators. Jiří Sobotík and Václav Plátěnka Jiri.Sobotik@vabo.cz Department of Special Communication Systems Military Academy in Brno Brno, Czech Republic and The Military Technical Institute of Electronic Prague, Czech Republic
Applicability Cryptographic applications lay great emphasis on the statistical properties of random and pseudorandom number generators. The sequences generated by these generators must be indistinguishable from the sequences generated by “true random generators”. Any non-randomness in the generated sequences rapidly degrades the security of cryptographic systems as a whole. The test suite should be applied in the first steps of an evaluation process of generator. If the generator or other primitives do not pass the test suite then they are not suitable for cryptographic application. Tests Suite cannot substitute a detailed cryptanalysis.
The Frequency (Monobit) Test Frequency Test within a Block The Runs Tests Test for the Longest-Run-of-Ones in a Block The Binary Matrix Rank Test The Discrete Fourier Transform (Spectral) Test The Non-overlapping Template Matching Test The Overlapping Template Matching Test Maurer’s “Universal Statistical” Test The Lempel-Ziv Compression Test The linear Complexity Test The Serial Test The approximate Entropy Test The Cumulative Sums (Cusums) Test The Random Excursion Test The Random Excursion Variant Test The NIST Test Suite consists of 16 statistical tests that were developed to test the randomness of binary sequences.
The General Structure of the Statistical Test Each test is based on a calculated test statistic value, which is a function of the testing sequence. The test statistic value is use to calculate a Pvalue Pvalueis the probability that the perfect random number generator would have produced a sequence less random than the sequence that was tested. Example (Frequency test): Statistic: Pvalue: Complemntary error function Summationa statistic Decision rule: If Pvalue then accept otherwise reject. Significant level The hypothesis about randomness of tested sequences is accepted on significant level . The hypothesis about randomness of tested sequences is rejected on significant level . [0.001 – 0.01]
Software Implementation of Test Suite In publication, each test from the test suite is described in detail and an elementary example is done. The verification examples of tests of known sequences(binary expansion of e number, number,) are included so that it is not difficult to program the all tests in mathematically-oriented programming languages; e.g. MATLAB, MATHCAD or MATEMATICA.
KATEDRA SPECIÁLNÍCH KOMUNIKAČNÍCH SYSTÉMŮ Thank you for your attention