2020年底,比特币网络出现一笔离奇巨额转账。短短两小时内,太子集团陈志的12.7万枚比特币被一扫而空。直到今天,这场“消失的比特币”案件才逐渐浮出水面。真相比想象更荒唐——没人破解比特币算法,漏洞出在钱包生成私钥时用了一个“不随机”的随机数。
一场沉默四年的劫案
这批比特币来自Lubian(鲁邦)矿池,当年掌握约6%的全网算力。2020年12月28日,Lubian的钱包余额骤降,12万枚BTC转入陌生地址,仅剩几百枚。矿池随即悄然关停。直到四年后,安全团队揭开谜底——一场由伪随机数引发的系统性灾难。
私钥并非“真随机”
安全研究团队 MilkSad 发现,Lubian 的钱包生成私钥时使用了梅森旋转算法(MT19937)——一种常见于游戏和模拟程序的伪随机数生成器,熵值仅32位。换句话说,私钥的可能性只有约4.3亿种,远低于加密安全要求的10⁷⁷级别。更糟的是,它只用系统时间作为种子。攻击者只需穷举几亿次,就能还原整个钱包体系。2020年12月28日,攻击者用脚本批量转账——交易费用相同、时间精确到秒。这不是黑客奇迹,而是算法重现。
执法机构的“重现私钥”
多年后,美国国税局(IRS-CI)与司法部技术团队介入调查,通过复刻 Lubian 钱包算法,重新生成了原始私钥。他们并非破解比特币,而是证明 Lubian 的私钥生成逻辑确实存在致命缺陷。这是加密史上罕见的案例:算法正确,随机错误。真正被攻破的,不是密码学,而是开发者的侥幸。
随机数,才是区块链的地基
再强的加密算法,也挡不住一个弱随机源。很多人以为风险来自算法,其实漏洞常常藏在实现里。2023年,Trust Wallet、Libbitcoin 等项目也因使用 MT19937 伪随机算法导致数百万美元资产被盗。如果钱包没有使用“加密级随机”(CSPRNG),而是依赖系统时间、种子或程序伪随机,那你的“钱包”其实就在裸奔。
如何判断钱包是否“真随机”?
查代码或安全报告:开源钱包如 Trezor、Coldcard 可直接审计随机逻辑;闭源钱包则需查看芯片认证(EAL等级)或第三方安全报告。
关注漏洞披露:搜索钱包名 + “random bug”或“随机数漏洞”,查看是否出现过类似事故。
使用额外熵源:一些钱包支持掷骰或人工输入随机数,如 Coldcard 可混入额外熵值。
拒绝预设助记词:任何“已初始化好”的硬件钱包,都是别人为你准备的陷阱。
冷钱包的安全边界
硬件钱包能最大化保护私钥,但前提是你要正确使用。
助记词只手抄、离线保存,不拍照、不云端;
设备必须自初始化,PIN码和密码短语足够复杂;
固件定期更新,核验签名来源;
转账时看设备屏幕,不信电脑界面;
大额资产可考虑多签或多设备存储。
