来源:白话区块链
对于存储区块链资产的钱包,还有不少人没搞懂,尤其是地址、公钥、密码、私钥、助记词、Keystore等专有名词,让人一头雾水。可是,如果不搞清楚这些概念,很可能会造成区块链资产的损失。
今天,我们就把这些让人看得云里雾里的概念一次性讲明白。
01公钥=银行账户,地址=银行卡号
为了方便理解,我们还是采用《比特币的安全性到底有多高?》的比喻:‘公钥’就像你的银行账户,‘地址’就像你的银行卡号码。
以以太坊钱包为例,创建一个以太坊钱包后,会生成一个以“0x”开头的字符串,这个字符串就是钱包‘地址’。
钱包的‘地址’是由‘公钥’通过计算得来,就像银行先给你开户,后给你银行卡卡号。
钱包‘地址’的主要用途是收款,当然也可以作为转账的凭证,就像别人打钱给你时你需要告诉人家银行卡卡号一样。
02
密码=银行卡密码
在创建钱包时,需要自己设定一个‘密码’,通常这个‘密码’要求不少于8个字符。为了安全,‘密码’最好设置复杂一点。
这个‘密码’的用途有两个,一是转账时需要输入‘密码’,类似于你用银行卡给别人转账需要输入密码;二是用Keystore导入钱包时,必须输入这个‘密码’。
这个‘密码’是可以进行修改或重置的。输入原‘密码’后,就可以直接修改‘密码’了;但如果原‘密码’忘记了,可以用‘私钥’或是‘助记词’导入钱包,同时设置新的‘密码’。
在现实世界中,一个银行卡只对应一个密码,密码修改后,原密码就失效了。但是区块链钱包中,一个钱包在不同手机上可以用不同的‘密码’,彼此相互独立,互不影响。
03
私钥=银行卡号 银行卡密码
创建钱包后,输入‘密码’可以导出‘私钥’。这个‘私钥’是由64个字符组成的字符串,当然有的钱包采用的编码不一样,字符数可能更少。一个钱包‘地址’只有一个私钥且不能修改。
只要输入‘私钥’并设置一个‘密码’(不用输入原‘密码’),就能进入钱包并拥有这个钱包的掌控权,就可以把钱包中的币转移走。
所以,私钥就相当于是“银行卡号 银行卡密码”,非常重要,一定要妥善保存。
04助记词=私钥=银行卡号 银行卡密码
前面提到,‘私钥’由64位字符串组成,所以非常容易抄错,于是就出现了‘助记词’。
‘助记词’,顾名思义,就是帮助你记录、记忆。‘助记词’由12个单词组成,每个单词之间有一个空格,和‘私钥’一样,一个钱包只有一套‘助记词’且不能修改。
‘助记词’和‘私钥’具有同样的功能:只要输入‘助记词’并设置一个‘密码’(不用输入原‘密码’),就能进入钱包并拥有这个钱包的掌控权,就可以把钱包中的币转移走。
‘助记词’只能备份一次,备份后,在钱包中便不会再显示。因此,在备份时一定要抄写下来。
05Keystore 密码=私钥
钱包里有一个备份‘Keystore’的功能,选择备份‘Keystore’,输入‘密码’,会出现一大段代码,这个就是‘Keystore’。
在导入钱包时,只要输入‘Keystore’ 和‘密码’,就能进入钱包了。这一点和用‘私钥’或‘助记词’导入钱包不一样,后两者不需要知道原‘密码’,而是直接重置‘密码’。
‘Keystore’可以理解为加密后的‘私钥’,和钱包的‘密码’有关,钱包的‘密码’修改后,‘Keystore’也发生相应变化。
需要特别注意的是,在用‘Keystore’导入钱包时,需要输入‘密码’,这个‘密码’是备份‘Keystore’时的钱包‘密码’,与后来‘密码’是否有修改无关。
06
结语
在现实世界中,如果你的银行卡丢了,密码忘了,可以去银行帮你找回,你的钱还是你的钱,丢不了,这是中心化的优势。
但是在区块链世界中,钱包信息要是丢了,就没人能够帮你找回。因此,只要你保护好钱包信息,钱包里面的财产只属于你自己,谁也抢不走,这是去中心化的优势。
看了今天的文章,如果出现下面这7种泄漏情况,你知道哪几种情况没有关系,哪几种情况币会被盗走吗?欢迎在文末留下你的答案。
1、‘地址’泄漏了;2、‘密码’泄漏了;
3、‘地址’ ‘密码’泄漏了;
4、‘Keystore’泄漏了,‘密码’没有泄漏;
5、‘Keystore’和‘密码’都泄漏了;
6、‘私钥’泄漏了;
7、‘助记词’泄漏了。