技术底层:解析“随机数生成器(RNG)”的物理熵源与软件算法的博弈
在密码学世界,真正的“随机”是安全的地基。密钥、令牌、区块链签名的可信度,取决于随机数生成器(RNG)的质量。本文围绕标题,拆解物理熵源与软件算法的长期博弈,揭示它们如何共同决定系统的抗攻击能力与合规性。
RNG分为真随机(TRNG)与伪随机(PRNG/CSPRNG)。物理熵源来自热噪声、时钟抖动、光子计数、用户输入等,优势是不可预测,劣势是易受环境与偏置影响,需要健康测试与“白化”条件器。软件算法如AES-CTR、ChaCha20 DRBG则以高性能与可扩展胜出,但一旦种子不足或熵池污染,就会被预测。
因此,优质RNG不是选边站,而是架构协同。核心观点:优质RNG=稳健的熵源+经过认证的算法。常见设计是:多源采集→熵估计→条件器(如SHA-256/AES)→CSPRNG输出→周期性重播种与在线健康监测。遵循NIST SP 800-90A/90B一类指南,能把物理不稳定“提纯”为可用随机性。

案例提示风险:2013年Android的SecureRandom初始化缺陷,因熵池未正确播种导致重复输出,多个比特币钱包密钥被推断。问题不在算法本身,而在种子与熵池管理。同样,硬件TRNG若无偏置检测与熵估计,也会把“噪声”变成“模式”。
落地实践要点: