答案先抛

理论上可以。BIP39 词表只有 2048 个单词,缺 1 个最多试 2048 次;缺 2 个要试约 420 万次,普通电脑也能在几小时内跑完。但前提有三个:你确定缺的是哪个位置、其它单词的顺序完全没错、并且你愿意在断网设备上用开源工具操作。如果你只知道缺一两个但不知道在哪一格,搜索空间会爆炸式增长。

为什么是这样

BIP39 助记词内置一段校验位——12 词里的后 4 比特、24 词里的后 8 比特,都是前面那段熵的 SHA-256 哈希截断。这意味着你瞎填一个词进去,只有 1/16 的概率"恰好"通过校验。这个机制反过来对暴力恢复非常友好:程序逐个试 2048 个单词,绝大多数都会被校验位筛掉,留下的候选不会太多。

缺一个词的情况,最快的做法是用 iancoleman/bip39 这个老牌开源工具的"BIP39 mnemonic seed split"分支版本,或者用 btcrecover 这个专门做密码恢复的项目。两者都能在 GitHub 拿到源码,下载下来在断网电脑里运行。如果你知道缺词的位置、其它 11 个都没拼错,几分钟之内会得到一份候选列表——通常只有几十到一百多个通过校验的组合。然后挨个尝试导入钱包,看哪个能扫出你记忆中的地址。

缺两个词难度跳升一档。如果你都知道位置,420 万种组合在一台普通笔记本上跑完大约两到四个小时,最终通过校验的候选会有几千到几万个,得花一两天逐个试导入。如果连位置都不确定,要把位置组合也算进去——12 个槽位选 2 个空缺,组合数乘以 66 倍,时间也跟着乘上去。

常见误解 / 注意点

  • "反正就这 12 个词换换顺序就行" 是错的——单词顺序错一位,校验也会失败,整段熵都变了。顺序和单词同样重要。
  • 不要把残缺的助记词输入任何在线"助记词恢复网站"。哪怕它宣称离线运行,浏览器请求里就可能把你的输入发出去。所有暴力恢复必须在物理断网的设备上。
  • 钱包恢复服务(如老牌的 Wallet Recovery Services)可以接代恢复,但他们会按恢复成功的金额收 20%–35%。资产价值不高的话,自己跑反而划算。
  • 如果你的私钥导出过 keystore 文件或者纯 64 位十六进制,那助记词反而不重要——keystore + 密码 一样能恢复钱包,不需要拼回助记词。

延伸阅读

详细的暴力恢复操作流程、btcrecover 命令行参数和实际计算时间,写在 《私钥与助记词 · 加密世界的身份证》 第七节"常见误解 + 我的实测"里。另外推荐看一下 《24 词助记词的五种存储法》——下次备份就不会再出这种事。