揭秘助记词中随机数生成的门道

JonasJonas
/2025年11月4日
揭秘助记词中随机数生成的门道

要点总结

助记词由 BIP-39 标准定义,本质是从随机数“翻译”成单词序列

随机数的生成方式分为伪随机(PRNG)与真随机(TRNG)两种

伪随机依赖算法与种子,可被预测;真随机则取样于物理噪声

硬件钱包通过 SE 安全芯片的 TRNG 模块实现真正随机性

OneKey 使用通过 EAL6+ 安全认证的 SE 芯片,并符合 NIST / FIPS 标准

软件钱包端调用操作系统安全模块,确保随机数同样达标

“越随机,越安全”:这是加密工程学的底层真理

近日,加密社区再次热议一起「旧案」。

Milk Sad 研究员披露,早在 2020 年底,一个与矿池 Lubian.com 相关的钱包集群在短短两小时内被清空,

13 万多枚比特币消失殆尽,价值超过 30 亿美元。

原因钱包在生成私钥时使用了有缺陷的伪随机算法,攻击者通过暴力破解推算出了所有私钥。

「助记词是怎么生成的?」

当你创建一个新的钱包时,屏幕上出现的那串 12 或 24 个单词,并不是随机挑的。它们是钱包按照一套规则,从一段纯随机数中「翻译」出来的结果。这套规则叫 BIP-39,几乎所有主流钱包都在用。

首先,钱包会在本地生成一段随机数,长度一般是 128 到 256 位。这段随机数就像钱包的「基因」,所有私钥和地址都是从它推算出来的。

接着,钱包会给随机数加上一个短校验码,用来防止输入错误。做法是:把随机数通过 SHA-256 哈希算法「包裹」一遍,取结果的前几位字符,并拼到随机数的末尾。

可以把它想象成我们日常看到的身份证最后一位校验码:身份证前 17 位是你的出生年月、地区编码等,最后一位则是根据前面数字计算出来的「校验」。

最后一步是将处理过随机数以每 11 位为长度进行切割,并分别转化为一个 0-1023 以内的数字,再从字典表中找出对应的单词作为助记词。可以把随机数看成一个超长的数字串,钱包把它切成一段一段,每一段都查词表找对应的单词,最后拼成一句你能读懂的话。

「助记词的随机性来自哪里?」

助记词的核心是那段随机数。如果那串随机数能被预测,钱包的安全也就不复存在。
所以,问题的关键是——这些随机数究竟从哪里来?

在计算机世界里,随机数分两种:伪随机数(PRNG) 和 真随机数(TRNG)。
它们的区别,就在于「有没有足够密码学强度的随机性」。

伪随机数是「算」出来的。

程序先给自己一个起点,叫作「种子 seed」,再按照固定算法算出一串看似杂乱的数字。

如果你用同样的算法和同样的种子重新运行一次,结果会一模一样。

这在普通应用里没问题,比如游戏掉宝或数据模拟,但在加密世界却是灾难。

因为只要有人能猜出算法或种子,就能把你的「随机数」完全重现。这类问题在历史上真发生过,比如一些钱包使用了错误的随机算法,攻击者从算法特征中推算出了私钥,造成巨额损失。

真随机数则完全不同。

它不仅是「算」出来的,而是「测」出来的——直接从物理世界中取样。

例如电子噪声、晶体振荡的轻微抖动、电压波动、热噪声……

这些微小变化没有任何可预测的规律,就像自然界的混沌。 真随机数生成器(TRNG)会用专门的电路去采集这些微小的物理信号,比如电流的噪声或晶体的轻微抖动。

但原始信号也可能带着一点点规律或偏差,所以芯片会再进行处理,把这些细微的不平衡「搅拌」得更彻底、更平均,生成一个真随机的序列。

硬件钱包中的助记词生成就是基于经过 EAL6+ 高规格安全认证 SE 中的 随机数生成器。

「硬件钱包如何做到纯粹的随机性?」

要理解硬件钱包的安全,就得从它最底层的「物理随机」说起。在一台硬件钱包里,有一颗专门负责安全的芯片,叫安全芯片(Secure Element, SE)。它和普通的主控芯片不同,是为防篡改、防攻击而设计的独立模块,广泛应用在银行IC卡、SIM卡和电子护照等对安全要求极高的场景中。

在这颗安全芯片里,有一个核心的小模块,叫真随机数生成器(TRNG)。它可以直接从物理世界里「抓」出随机,也可以结合满足 FIPS / NIST (两个美国国家级安全标准体系)的算法去生成一个真随机数。

芯片内部有一堆极其敏感的电子电路,会捕捉像电流噪声、微小振动这种连人都察觉不到的波动。这些信号天生混乱、无法预测,就像你录下一段风声——每一秒都不一样。

芯片会把这些「风声」再搅拌几遍,去掉可能存在的微小规律,最后留下的,才是一串真正随机、谁也无法预料的数字。这一切都在芯片的封闭环境中完成,不依赖电脑或手机,外界也无法干预。

你可以把它想成一个装在保险柜里的「掷骰子机」。每当钱包需要生成助记词时,这台机器就在保险柜里自动摇骰子、记录结果、再锁上柜门。

从助记词的第一位开始,它就诞生在一个外界无法进入的安全空间里。

「OneKey 是怎么做的」

在随机数这件事上,OneKey 选择了最底层、最硬核的方案。

在硬件钱包 上,新款 OneKey 采用了带有 EAL6+ 级安全认证的安全芯片。它的真随机数生成器(TRNG)完全符合密码学安全要求。
旧款 OneKey 设备的设计也延续了同样的理念。它使用主控芯片(MCU)内置的 TRNG 模块生成随机数,并经过了符合 NIST SP800-22 和 FIPS 140-2 标准的随机性测试。这些标准是密码学领域的「金尺子」,用来检验一个随机数序列是否真的没有规律、无法预测。

而在软件钱包这边,OneKey 也没有掉以轻心。不管是桌面端、浏览器插件,还是手机 App,它们在生成助记词时都会向设备本身「借」随机数——不是自己写算法去算,而是直接调用操作系统的安全模块。

举个例子,当你在电脑上用 OneKey 创建钱包时,程序会让系统来帮忙「摇骰子」。macOS、Windows 都内置了专门的加密级随机引擎,它们平时会不断从各种来源收集噪声:键盘输入、时钟抖动、网络延迟……这些杂乱的信息混在一起,就成了高质量的随机源。手机也同理。或者如果硬件本身就支持了 TRNG 模块,那么也可以直接拿来用。

总而言之,即便是在普通设备上,也能保证随机性达到加密级的安全标准。

「End」

加密安全从不是玄学,而是工程学。

对于助记词来说,越随机,越混沌,越安全!

使用 OneKey 保护您的加密之旅

View details for 选购 OneKey选购 OneKey

选购 OneKey

全球最先进的硬件钱包。

View details for 下载应用程序下载应用程序

下载应用程序

诈骗预警。支持所有币种。

View details for OneKey SifuOneKey Sifu

OneKey Sifu

即刻咨询,扫除疑虑。

继续阅读