# 什么是区块链钱包私钥助记词、如何找回MetaMask钱包密码助记词？

By [话李话外](https://paragraph.com/@senlon) · 2023-01-24

---

钱包，是进入区块链的小伙们必备的工具之一。而钱包的安全也一直是大家都在讨论的一个话题。对于钱包而言，私钥/助记词的安全是非常重要的，谁拥有了私钥/助记词就相当于拥有了对应钱包的绝对掌控权，所以使用钱包的第一要点就是，安全地备份好自己的私钥/助记词。

在开始正文之前，我们还是先来简单阐述一下什么是私钥/助记词。

以以太坊钱包MetaMask（大家也叫小狐狸钱包）为例，当我们创建一个以太坊钱包后，就会生成一个以“0x”开头的字符串，这个字符串就是钱包「地址」，钱包「地址」的主要用途是收款。

在创建钱包的同时，还需要自己设定一个「密码」，一般要求不少于8个字符。这个「密码」一是用于转账时进行验证，二是用「Keystore」导入钱包时，也必须输入这个「密码」进行验证。如果「密码」忘记了，那么我们可以直接用「私钥」或是「助记词」导入钱包，重置一个新的「密码」。

上面我们提到几个概念，分别是「地址」、「密码」、「私钥」、「助记词」、「Keystore」。我们来简单梳理一下这几者的关系：

「地址」：是一串由字母和数字组成的26位到34位字符串，它们由随机数字和大写字母及小写字母组成。相当于是银行卡的卡号，这个是可以发给别人的。

「密码」：创建钱包时候由用户自己设置的一个密码，用于转账等操作的验证。相当于是银行卡的密码，打死不要告诉别人。

「私钥」：一般是由64个字符组成的字符串，一个钱包「地址」只对应一个私钥，具有唯一性且不能修改。只要拥有「私钥」，就能进入钱包并拥有这个钱包的所有掌控权，就可以把钱包中的币转移走。相当于拥有了你的银行卡卡号+银行卡密码。打死不要告诉别人。

「助记词」：由12个单词组成，每个单词之间有一个空格，等同于「私钥」。我们一般都是备份助记词，因为私钥字符太多，不方便日常的记录和备份。而「助记词」就可以很方便地记录到纸上面保存（藏）起来。打死不要告诉别人。

「Keystore」：可以理解为加密后的「私钥」，和钱包的「密码」有关，钱包的「密码」修改后，「Keystore」也发生相应变化。因为「Keystore」是由一大段代码组成，也不方便记录，所以日常我们只要保管好「助记词」就行了。只要密码不泄露钱包不会丢，但也建议打死不要告诉别人。

小结：助记词=私钥=Keystore+密码。

MetaMask小狐狸钱包，目前使用率最高的以太坊系钱包。MetaMask在首次启动/使用时为用户提供一个独特的12位助记词。但如果你没有备份或忘记了你的助记词，亦或者丢失了助记词怎么办呢？

**情况一：MetaMask浏览器插件可以正常使用**

如果MetaMask浏览器插件可以正常使用，那么直接解锁MetaMask浏览器插件（需要输入你自己设置好的一个密码进行解锁）、或者也可以通过手机安装的MetaMask App解锁，然后在设置里面找回12位助记词即可。效果如图1所示。

【图1】

**情况二：MetaMask浏览器插件无法正常使用**（浏览器命令方式找回）

如果由于某种原因你无法正常使用MetaMask钱包插件、且手机的App也已经卸载了，那么方法就有点复杂，下面我来教大家怎么找回（以谷歌浏览器Chrome操作举例）。

1.右键单击 MetaMask 扩展窗口，单击“检查”以打开 Web 检查器。如图2所示。

【图2】

2.点击Console 选项卡，然后直接键入下面的命令（代码），然后按 Enter 回车键（即先复制下面的代码、然后在粘贴即可）。如图3所示。

    chrome.storage.local.get('data', result => { 
    var vault = result.data.KeyringController.vault 
    console.log(vault) 
    })
    

【图3】

3.命令粘贴成功后，这时就会返回一个以“ {“data”: ”开头的结果，这是MetaMask的保险库数据（JSON 格式）。如图4所示。

【图4】

4.复制一下这段data代码，然后通过MetaMask Vault Decryptor（MetaMask Vault 解密器）进行解码。解码器地址如下：

【图5】

Vault Decryptor 工具也可以离线使用，我们只需要使用浏览器的工具栏 > 文件 > 将页面另存为… > MetaMask Decryptor.htm。然后在把电脑断开与 Internet 的连接的情况下，在浏览器中打开MetaMask Decryptor.htm文件即可正常使用。

5.在 Vault Decryptor 页面上，粘贴保险库数据的{“data”:}部分，然后输入自己在 MetaMask中为钱包设置的密码，再单击“Decrypt”按钮。如果成功，那么就可以在解密按钮下方看到结果，显示显示出钱包对应的12位助记词。如图6所示。

【图6】

有了这个12位助记词，那么现在开始，这个钱包就又属于你了，真正的属于你了！

情况三：MetaMask浏览器插件无法正常使用（本地缓存文件方式找回）

原理同上面的情况二，但如果你不习惯或者太会用浏览器命令的方式操作，那么可以试试下面的方式，直接通过查找电脑本地的文件进行操作。

1.先找插件目录，具体路径如下：

> C:\\用户\\你的用户名\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Local Extension Settings\\nkbihfbeogaeaoehlefnkodbefgpgknn

如果你的电脑没有看到这些文件夹，说明默认是隐藏的，你需要设置一下把隐藏文件夹显示出来，如图7所示。

【图7】

然后找到一个名字是数字且log后缀的文件，用记事本工具打开这个文件，通过记事本的查找功能搜索关键字vault，里面的data代码。如图8所示。

【图8】

有了这个data开头的代码，接下来的操作就和上面情况二的方法一样了，即只要通过通过MetaMask Vault Decryptor解码即可。

情况四：MetaMask浏览器扩展插件已经删除

如果删除了扩展，那么极大概率无法找回助记词的，但对于技术牛逼的大佬来说，也有方法找回。

虽然删除 MetaMask 扩展，本地留存的私钥/助记词文件也会删除，即便是重装扩展也不会找回，重置只是覆盖一个新的文件而已。但通过技术牛逼的大佬通过特殊恢复手段，如果能找回上文第三种情况里提到的那个log后缀的文件，然后你再按照前面说的方法就可以恢复钱包。

最后，我们再来小结一下：

一台电脑，安装MetaMask小狐狸创建钱包后，即使卸载小狐狸，助记词和私钥还是有可能存在这台电脑文件夹里，只要别人拿到了这台电脑通过特殊手段恢复硬盘被删除文件，或者引诱你下载木马程序，其实你的助记词和私钥相当于明明白白的放在别人眼前。所以，不能以为在电脑上卸载了钱包就万事大吉了。不过，助记词和私钥是用你的 MetaMask 解锁密码加密的（解锁密码是自己安装MetaMask时候设置的一个进入密码、而且通过助记词也可以在新设备上重置该密码），不会以明文形式存在。如果你的电脑安装过小狐狸钱包，且你的钱包里面有比较大数额的资产，但你的电脑不用了，建议可以通过多次安装新扩展创建空钱包来覆盖之前的扩展缓存文件，以此来降低电脑被别人恢复的概率。

总之，站在个人角度，如果因为各种原因无法登入Metamask钱包，且未备份私钥/助记词，那么一定不要直接删除扩展，按照上文提到的方法是可以恢复的。如果扩展删除，且未备份未备份私钥/助记词，此时不要安装任何新扩展，找找技术大牛看看能不能通过找回被删文件的方式找回。而且为了防止极低概率的被通过文件找回的方式恢复，不再使用的电脑最好不要赠予或者出售，可以将其物理销毁或留存，或者每换一次电脑就换一次新钱包。

作者：话李话外

（注：交易有风险、投资需谨慎、以上内容仅供参考！如您对本文有任何想法或建议、欢迎在评论区留言提出，搜索@话李话外、关注作者更多其它内容吧）

---

*Originally published on [话李话外](https://paragraph.com/@senlon/metamask)*
