NDSTRNG: Non-Deterministic Sampling-Based True Random Number Generator on SoC FPGA Systems

被引:4
作者
Chen, Yucong [1 ]
Tian, Yanshan [1 ,2 ]
Zhou, Rui [1 ]
Castro, Diego Martinez [3 ]
Guo, Deke [3 ]
Zhou, Qingguo [1 ]
机构
[1] Lanzhou Univ, Sch Informat Sci & Engn, Lanzhou 730000, Gansu, Peoples R China
[2] Ningxia Normal Univ, Sch Math & Comp Sci, Guyuan 756000, Ningxia, Peoples R China
[3] Natl Univ Def Technol, Sci & Technol Lab Informat Syst Engn, Changsha 410073, Hunan, Peoples R China
关键词
Random number generator; inherent non-determinism; sampling; latency jitter; SoC FPGA;
D O I
10.1109/TC.2024.3365955
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Random number generation is essential for applications in simulation, numerical analysis, and data encryption. The ubiquitous presence of system-on-chip (SoC) field-programmable gate array (FPGA) embedded devices in critical sectors necessitates robust random number generators (RNGs) that operate within these specialized environments. Traditional RNGs in GNU/Linux systems derive entropy from peripheral hardware events, which are scarce in SoC FPGA platforms lacking standard PC peripherals. Addressing this challenge, this paper proposes a novel random number generator named NDSTRNG that leverages the unique hardware structure of the SoC FPGA and the inherent randomness of GNU/Linux. The proposed generator employs a non-deterministic sampling model to circumvent reliance on various peripherals while ensuring unbiased output via a linear feedback shift register (LFSR)-based post-processing method. We implement this random number generator in SoC FPGA GNU/Linux using minimal FPGA resources and only one Linux task for sampling. NDSTRNG achieved a throughput exceeding 700 Kbps. Moreover, the entropy source of the generator is evaluated using NIST SP 800-90B, while the quality of the generated random numbers is assessed through ENT, NIST SP 800-22, and DIEHARDER. The results confirm that NDSTRNG meets the stringent criteria for both high-quality and high-speed random number generation, making it suitable for deployment in communication, defense, and medical domains where reliable RNGs are indispensable.
引用
收藏
页码:1313 / 1326
页数:14
相关论文
共 41 条
  • [1] Towards Linux based safety systems-A statistical approach for software execution path coverage
    Allende, Imanol
    Mc Guire, Nicholas
    Perez, Jon
    Monsalve, Lisandro G.
    Obermaisser, Roman
    [J]. JOURNAL OF SYSTEMS ARCHITECTURE, 2021, 116
  • [2] Recommendations on Statistical Randomness Test Batteries for Cryptographic Purposes
    Almaraz Luengo, Elena
    Garcia Villalba, Luis Javier
    [J]. ACM COMPUTING SURVEYS, 2021, 54 (04)
  • [3] [Anonymous], GINART Team/Diehard statistical test
  • [4] [Anonymous], True random number generator
  • [5] [Anonymous], Detailed introduction of SoC FPGA, including xilinx and altera product series
  • [6] [Anonymous], 2018, SP800-90B entropy assessment
  • [7] [Anonymous], 2012, FIPS 180-4
  • [8] PRAND: GPU accelerated parallel random number generation library: Using most reliable algorithms and applying parallelism of modern GPUs and CPUs
    Barash, L. Yu.
    Shchur, L. N.
    [J]. COMPUTER PHYSICS COMMUNICATIONS, 2014, 185 (04) : 1343 - 1353
  • [9] Brown R.G., 2014, Dieharder: a random number test suite (version 3.31.1)
  • [10] LETRNG-A Lightweight and Efficient True Random Number Generator for GNU/Linux Systems
    Chen, Yucong
    Zhu, Fangfang
    Tian, Yanshan
    Xu, Shuaixin
    Han, Lihong
    Zhou, Qingguo
    Ling, Nam
    [J]. TSINGHUA SCIENCE AND TECHNOLOGY, 2023, 28 (02): : 370 - 385