跳转至

真随机数发生器TRNG原理与IoT安全应用

难度:🔴 高级 | 领域:嵌入式安全 | 关键词:TRNG, 熵, CSPRNG, NIST | 阅读时间:约 16 分钟

日常类比

掷公平骰子得真随机;用固定公式算“随机”是伪随机。真随机数发生器(True Random Number Generator, TRNG)采集物理噪声当熵,再健康检测与调理,供密钥与 nonce[1][2]。

摘要

区分熵源、TRNG 与密码学安全伪随机(CSPRNG)、常见电路噪声源、健康测试与物联网(IoT)使用模式。安全声明需对照标准与认证,而非仅有“TRNG”外设名[2][3]。

1. 架构

作用
熵源 热噪声、抖动、亚稳态等
数字化 采样比较
健康测试 卡死/重复检测
调理 压缩偏差
CSPRNG 用种子扩展大量比特
用途 要求
密钥生成 高熵、保密
Nonce/IV 不重复
协议挑战 不可预测
抖动延迟 可用较弱熵(视威胁)

2. IoT 实践

上电先积累熵再生成密钥;种子注入安全元件更佳。无 TRNG 时慎用仅 ADC 噪声,需评估攻击面[3][4]。

3. 局限、挑战与可改进方向

1. 熵枯竭与启动

局限:冷启动熵不足仍出密钥。 改进:阻塞至健康通过;外部熵种子[2]。

2. 实现漏洞

局限:偏置或可操纵噪声。 改进:遵循 NIST SP 800-90B 等评估;认证芯片[1]。

3. 侧信道

局限:功耗泄露随机操作。 改进:常量时间;安全元件内生成[4]。

4. 把 PRNG 当 TRNG

局限:可预测种子导致全盘崩溃。 改进:架构审查;独立熵路径[3]。

总结

随机性是安全协议的燃料。IoT 设备应把 TRNG 健康状态当安全依赖,密钥在受保护环境中派生,并避免“裸 ADC 噪声”幻想。

参考文献

[1] NIST SP 800-90B, Entropy Sources. [2] NIST SP 800-90A, DRBG 机制. [3] ARM / MCU TRNG 外设应用笔记. [4] 安全元件密钥生成最佳实践. [5] AIS 31 / 欧洲随机数评估方法概述. [6] 抖动熵源设计文献. [7] IoT 设备身份与设备密钥生命周期. [8] 侧信道与随机数实现安全. [9] PUF 与 TRNG 分工说明. [10] FIPS 140 随机数相关要求概述. [11] 健康测试失效模式案例. [12] TLS 中的随机数使用注意.