Deterministic RNG 按固定算法产生序列。只比较 seed 是否相同不足以比较任意实现:算法、参数、调用顺序和附加输入也很重要。确定性既不等于薄弱,也不会自动证明安全。
NIST SP 800-90A 描述了具有初始化、生成和重新播种过程的有状态 DRBG。可重现性针对相同的机制、状态和输入序列。即使原始 seed 相同,新鲜熵或不同附加输入也可能改变输出。 [NIST SP 800-90A Rev. 1 — State, inputs and reseeding]
RFC 4086 提醒,传统模拟生成器可能无法抵抗攻击者。密码学强序列应在部分输出已知时仍不可预测。周期长或通过统计测试本身不能证明这一性质。 [RFC 4086 — Pseudorandom sequences and unpredictability]
libsodium randombytes_buf_deterministic() 对相同 seed 返回相同序列,适合测试。公开的测试 seed 也能被其他人重现。因此,这类输入不是实际钱包可用的秘密材料。 [libsodium — Deterministic output and VM snapshots]
BIP32 从一个 seed 建立密钥树;派生路径也决定具体分支。恢复相同 seed 和路径可以恢复相同密钥。另一个派生地址本身不会为原始秘密增加独立熵。 [BIP32 — Hierarchical deterministic key derivation]
BIP39 通过 PBKDF2 从 mnemonic 和 passphrase 派生 seed。相同词语配合不同 passphrase 会得到不同结果。因此,可恢复性取决于完整输入及后续密钥派生,而不只是词语列表。 [BIP39 — Mnemonic and passphrase to seed]
RFC 6979 从秘密密钥和消息确定性地产生签名值 k。文档明确保留生成密钥对时对随机性的需求。从此签名步骤中去掉新鲜随机输入,并不会消除对强初始秘密的需求。 [RFC 6979 — Deterministic signing and initial key generation]
libsodium 警告,恢复虚拟机快照可能重复生成器输出。这不同于有意恢复 BIP32 密钥。评估时应区分恢复钱包身份和意外重复新请求的值。 [libsodium — Deterministic output and VM snapshots] [BIP32 — Hierarchical deterministic key derivation]
记录算法、版本、输入、重新播种行为和预期测试向量。与向量一致只确认该例子,不证明实际设备的熵质量。NIST SP 800-90A 将机制与输入熵要求分开。 [NIST SP 800-90A Rev. 1 — State, inputs and reseeding]
要获得更完整的理解,请将本词条与以下词条结合阅读: CSPRNG, Random Number Generator, HD Wallet, Seed Generation. 反向关联还来自: CSPRNG, COLDCARD RNG Incident (2026).