论文标题
TURAN:使用SRAM中的电源电压下降的真正随机数生成
TuRaN: True Random Number Generation Using Supply Voltage Underscaling in SRAMs
论文作者
论文摘要
先前的工作提出了基于SRAM的TRNG,可从SRAM阵列中提取熵。 SRAM阵列被广泛用于执行计算以将数据存储在芯片中的大多数专用或通用芯片中。因此,基于SRAM的TRNG提出了专用硬件TRNG的低成本替代品。但是,现有的基于SRAM的TRNG患有1)低TRNG吞吐量,2)高能量消耗,3)高trng延迟和4)无法连续生成真实的随机数,这限制了基于SRAM的TRNG的应用空间。本文我们的目标是设计一个基于SRAM的TRNG,该TRN克服了这四个关键局限性,因此扩展了基于SRAM的TRNG的应用空间。为此,我们提出了Turan,这是一种新的高通量,节能和低延迟的基于SRAM的TRNG,可以维持连续的运行。 Turan利用了关键观察,即访问SRAM细胞会导致供应电压在制造商征用的电源电压下方降低时会导致随机访问故障。 Turan通过反复访问SRAM细胞的电源电压降低并使用SHA-256 Hash函数来进行后处理,从而在高吞吐量下生成随机数。为了证明Turan的可行性,我们在不同的过程节点上进行香料模拟,并分析使用作为熵源的访问失败的潜力。我们通过在两个商业现成的FPGA板上进行现实世界实验来验证和支持我们的仿真结果。我们使用广泛的NIST标准随机性测试评估Turan产生的随机数质量,并观察到Turan通过所有测试。 Turan以(i)平均(最大)吞吐量为1.6Gbps(1.812Gbps),(ii)0.11NJ/BIT能量消耗,以及(iii)278.46 us延迟。
Prior works propose SRAM-based TRNGs that extract entropy from SRAM arrays. SRAM arrays are widely used in a majority of specialized or general-purpose chips that perform the computation to store data inside the chip. Thus, SRAM-based TRNGs present a low-cost alternative to dedicated hardware TRNGs. However, existing SRAM-based TRNGs suffer from 1) low TRNG throughput, 2) high energy consumption, 3) high TRNG latency, and 4) the inability to generate true random numbers continuously, which limits the application space of SRAM-based TRNGs. Our goal in this paper is to design an SRAM-based TRNG that overcomes these four key limitations and thus, extends the application space of SRAM-based TRNGs. To this end, we propose TuRaN, a new high-throughput, energy-efficient, and low-latency SRAM-based TRNG that can sustain continuous operation. TuRaN leverages the key observation that accessing SRAM cells results in random access failures when the supply voltage is reduced below the manufacturer-recommended supply voltage. TuRaN generates random numbers at high throughput by repeatedly accessing SRAM cells with reduced supply voltage and post-processing the resulting random faults using the SHA-256 hash function. To demonstrate the feasibility of TuRaN, we conduct SPICE simulations on different process nodes and analyze the potential of access failure for use as an entropy source. We verify and support our simulation results by conducting real-world experiments on two commercial off-the-shelf FPGA boards. We evaluate the quality of the random numbers generated by TuRaN using the widely-adopted NIST standard randomness tests and observe that TuRaN passes all tests. TuRaN generates true random numbers with (i) an average (maximum) throughput of 1.6Gbps (1.812Gbps), (ii) 0.11nJ/bit energy consumption, and (iii) 278.46us latency.