找回助记词方法|官方离线工具怎么选、怎么用
助记词是钱包用来备份私钥的一组有序单词,常见是12词或24词。少了2个或3个,不等于资产没了,但能不能找回,取决于缺词位置是否明确、其余词是否准确,以及用户是否还留着旧收款地址。

下面只讲自己离线补自己备份的做法。位置不清楚、词序已经乱掉,或者好几个词都拿不准,可以直接视为无法找回。
先看有没有希望
每个空位都有2048种可能,因为BIP39英文词表就这么多词。
缺2个、位置已知时,组合上限是:
2048 × 2048 = 4,194,304
大约420万种。普通电脑可以算,但不是随手试几次就能撞上。BIP39还有校验,大量乱拼会先被判成非法助记词,真正拿去对地址的数量会少一截。
缺3个、位置已知时,组合上限是:
2048 × 2048 × 2048 = 8,589,934,592
大约86亿种。校验能先筛掉一部分,但剩下的量对普通电脑仍然很大,常常要跑很久,还不一定在可接受的时间内出结果。没有旧地址,就不要按“还能找回”来准备。
| 情况 | 能否找回 |
|---|---|
| 缺2词,位置已知,其余词准确,有旧地址 | 有机会 |
| 缺3词,位置已知,其余词准确,有旧地址 | 理论可算,普通电脑往往不现实 |
| 不知道缺的是哪几个位置 | 很难,多数不值得跑 |
| 词序乱,或多个词不确定 | 无法找回 |
| 词是对的,但派生路径找错 | 不是词丢了,资产可能还在 |
动手前先凑齐四样
1、已知单词,以及缺的是第几个。位置不确定就先别跑。
2、至少一个用过的收款地址。交易所提现记录、区块浏览器、旧钱包记录都可以。
3、当时的钱包品牌、币种,以及大概路径。常见是m/44'/0'/0'或m/84'/0'/0'。路径选错,也会打开一个空钱包。
4、一台可以断网的电脑。单词不要贴进网页、聊天窗口或网盘。
再回忆一件事:当时有没有额外口令,也就是passphrase,有时被叫第25词。单词补全了但没有这层口令,进的会是一个空钱包。它和路径选错是同一类误判,都不是助记词没补对。
工具只从官方仓库下
1、缺词枚举用BTCRecover:https://github.com/3rdIteration/btcrecover,说明在https://btcrecover.readthedocs.io/

2、核对词表和路径用Ian Coleman BIP39:https://github.com/iancoleman/bip39,下载bip39-standalone.html
3、缺词不多、想先本地校验,可用同一作者的Seed Savior:https://github.com/3rdIteration/mnemonic-recovery
同名网站、搜索广告、短链都不要点。页面保存到本机,断网后再打开。
第一步:先核对抄写,不要直接穷举
1、确认词表语言。常见是英文2048词。当时如果选了别的语言,就不能拿英文直接套。
2、把已知词逐个对官方词表。有时不是丢了词,而是写成了形近词。
3、确认缺的位置。纸上第4格、第9格空着,就按这两个位置补,不要先假设顺序也错了。
这一步只为排除抄写误差。不要在联网浏览器里填真实助记词。
第二步:用BTCRecover补空位并对地址
仓库克隆到本机,按文档装好Python依赖,然后断网。它的作用是按空位生成候选,再用旧地址筛选哪一句才是你的钱包。
缺2个时,命令大体是:
python seedrecover.py --wallet-type bip39 --addrs你的旧收款地址 --mnemonic "词1词2词3 ..." --addr-limit 10
缺3个时,命令结构一样,只是空位变成3个。搜索量会大很多,普通电脑往往要跑很久,先确认机器能长时间离线运行,再决定要不要开始。
空位怎么填
已知词按原顺序写进--mnemonic。缺的那几格不要自己先猜一个词塞进去,按BTCRecover文档里的空位写法标记,并保持前后词的位置不变。比如缺的是第4个和第9个,就只把这两格标成空位,其余词不要挪动。
几个参数
1、--wallet-type bip39:按BIP39助记词处理。
2、--addrs:用过的收款地址。注意它和地址之间有一个空格。没有这个地址,工具只能证明句子合法,不能证明是你的钱包。
3、--mnemonic:按原顺序填已知词,空位按文档标记。
4、--addr-limit:每个候选最多派生前若干个地址。钱如果在很后面的账户里,这个数要加大,否则会对不上。
对上地址后,先不要导入热钱包。回到离线BIP39页面,用同一条派生路径再生成几个地址,和旧记录一致,才算确认。
第三步:确认后再转走
只在需要转出时导入。进钱包先看余额和历史地址是否一致,再把资产转到一套新助记词的钱包。旧词视为已经暴露,纸质备份也不要继续用。
当时设过passphrase的,导入时必须带上。漏了这一层,或者派生路径选错,都会看到空钱包,容易误判成没找回。
缺2个且位置明确,值得按上面的步骤试。缺3个只有在位置明确、又有旧地址时才谈得上理论可算,普通电脑常常不现实,词序乱掉或只记得大概印象,就不是工具能解决的问题。






