什么是keystore
Keystore 档案是钱包储存私钥的一种档案格式(JSON)。它使用使用者自订密码加密,以起到一定程度上的保护作用,而保护的程度取决于使用者加密该钱包的密码强度。
Keystore 的密码是唯一、不可更改的,如果想更改钱包密码需要使用助记词或明文私钥重新汇入钱包,并使用新密码加密,生成新的Keystore。
在Web3钱包中,Keystore本质上是一个加密存储私钥的文件。你可以把它理解成一个加了密码锁的保险箱,里面装着你真正的资产控制权——私钥。
请务必注意以下两个重要事项,以确保安全地使用Keystore:
- 请使用不常用且尽可能复杂的密码来加密Keystore文件。这将增加您的钱包的安全性。
- 一定要牢记加密Keystore文件所使用的密码。如果您忘记了密码,将无法再次访问Keystore文件。
- 钱包官方无法帮助您找回密码。因此,请务必妥善保管好Keystore文件和密码。
通过遵循这些建议,您可以更加安全地管理您的Keystore文件和钱包。
如何导出keystore
打开TokenPocket,点击蓝色卡片右上角【详情】,在钱包详情界面中选择【导出keystore】,输入正确的密码后即可查看keystore数据。
数据查看支持两种类型,一种是keystore文件方式,一种是二维码方式,其密码都是当前这个地址在钱包中设置的密码,请一定牢记,否则同样无法导入钱包,管理链上资产。

这个文件通常是一个JSON格式的文本,里面存储的不是私钥本身,而是经过你设定的钱包密码加密后的一串密文。根据以太坊的Web3 Secret Storage规范,这个文件包含了加密私钥所需的所有信息。
一个Keystore文件里有什么?
下面是一个典型的Keystore文件示例,它看起来像一堆乱码,但内部结构清晰:
{
"version": 3,
"id": "07a9f767-93c5-4842-9afd-b3b083659f04",
"address": "aef8cad64d29fcc4ed07629b9e896ebc3160a8d0",
"Crypto": {
"ciphertext": "99d0e66c67941a08690e48222a58843ef2481e110969325db7ff5284cd3d3093",
"cipherparams": { "iv": "7d7fabf8dee2e77f0d7e3ff3b965fc23" },
"cipher": "aes-128-ctr",
"kdf": "scrypt",
"kdfparams": {
"dklen": 32,
"salt": "85ad073989d461c72358ccaea3551f7ecb8e672503cb05c2ee80cfb6b922f4d4",
"n": 8192,
"r": 8,
"p": 1
},
"mac": "06dcf1cc4bffe1616fafe94a2a7087fd79df444756bb17c93af588c3ab02a913"
}
}它的核心在于 Crypto 对象,工作原理就像一条流水线:
kdf(密钥派生函数):当你输入钱包密码时,钱包软件会使用这个字段指定的算法(比如scrypt)和参数,将你的密码转换成一个更复杂的密钥。cipher(加密算法):用上一步派生出的密钥,通过该字段指定的算法(比如aes-128-ctr)去解开ciphertext(密文),从而得到真正的私钥。mac(校验码):这是一个用于验证的字段。它会检查你输入的密码是否正确,以及文件是否被篡改过。如果计算出的MAC值与文件中的不一致,就说明密码错误或文件已损坏。
Keystore与其他钱包关键要素的区别
为了更清晰地理解Keystore的作用,这里把它和Web3钱包中其他几个核心概念做个对比:
| 要素 | 关系与比喻 | 安全性要点 |
|---|---|---|
| 私钥 | 资产的终极控制权,是Keystore文件里保护的“核心秘密”。 | 谁拿到谁就能掌控资产。必须绝对保密,不能上网、不能告诉任何人。 |
| Keystore | 存放私钥的加密文件(即加了密码锁的保险箱)。 | 文件本身可以公开存储,但必须配合当时加密它的密码才能打开。密码一旦遗忘,文件就无法使用。 |
| 密码 | 用来加密Keystore文件的钥匙。 | 这是你日常与钱包交互时输入的密码。它只用于解密本地的Keystore,并不是区块链上的验证信息,所以可以在不同设备上设置不同密码。 |
| 助记词 | 私钥的另一种人类友好型备份形式(通常由12或24个单词组成)。 | 与私钥等效。主要用于钱包恢复,因为它可以派生出一连串的私钥和地址。如果只是为了导入一个账户,用私钥就行。 |
核心安全提示
理解Keystore的关键在于明白它的双重保护机制:
- Keystore ≠ 私钥:仅仅拥有Keystore文件是没有用的,因为它是密文。
- Keystore + 密码 = 私钥:只有同时拥有Keystore文件和它的密码,才能还原出私钥,掌控资产。
所以,你可以把Keystore文件放在电脑、云端甚至随便发给别人,但只要密码没有泄露,你的资产就是安全的。而密码,必须牢牢记在心里。
密码、私钥、keystore与助记词的关系

到此这篇关于什么是keystore的文章就介绍到这了,更多相关keystore内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!
本站提醒:投资有风险,入市须谨慎,本内容不作为投资理财建议。