A new discrete Fourier transform randomness test
A new discrete Fourier transform randomness test作者机构:Trusted Computing and Information Assurance Laboratory Institute of Software Chinese Academy of Sciences University of Chinese Academy of Sciences Southern Power Grid Science Research Institute
出 版 物:《Science China(Information Sciences)》 (中国科学:信息科学(英文版))
年 卷 期:2019年第62卷第3期
页 面:90-105页
核心收录:
学科分类:07[理学] 070104[理学-应用数学] 0701[理学-数学]
基 金:supported by National Key R&D Program of China (Grant No. 2018YFB0904900) National Cryptography Development Fund (Grant Nos. MMJJ20170214, MMJJ20170211)
主 题:statistical randomness test discrete Fourier transform test NIST SP800-22 two-level test chi-square distribution
摘 要:The randomness of random number generators(RNGs) is important for the reliability of cryptographic systems since the outputs of RNGs are usually utilized to construct cryptographic *** tests are employed to evaluate the randomness of the RNG outputs. The discrete Fourier transform(DFT) test is an important test item of the most popular statistical test suite NIST SP800-22. In the standard NIST DFT test and related improved studies, there exist accuracy and efficiency issues. First, the bit sequences generated by known good RNGs have a high probability to be rejected when the sequences are long or the sequence number is large, due to the deviation between the actual distribution of the test statistic values and the assumed normal distribution. Second, the long test time and high memory consumptions of the complex DFT test algorithm also affect its practicability. To solve these problems, we propose a new DFT test method for long sequences(106 or more bits). Different from the previous DFT test methods focusing on making the distribution of the test statistic values closer to the normal distribution, we reconstruct the statistic to follow the chi-square distribution. Our experiment result shows that our method has higher reliability in the two-level test, and could effectively reduce the test time and the memory *** applying our method on randomness test, the test efficiency has been increased to about 4 times for 106-bit sequences and 7 times for 107-bit sequences. In conclusion, our method has lower probability of making errors, and is more suitable for practical application scenarios.