博客 / 知识 · 2019-08-08 0

去中心化钱包的地址、密码、私钥、助记词、keystore

简单类比这5个名词代表什么?

今天我们拿银行来进行类比,看下这5个名词在银行系统中分别代表着什么角色。

地址=银行卡。

在imToken中创建好钱包后,会生成一个0x开头的长度为42的字符串,这个字符串就是我们数字钱包的地址了。具体就差不多长这样:

0x2A9181dA250742adD80A0ECe8E795c468e36f937

在以太坊网络中,一个钱包对应了一个地址,该地址不能修改,且该钱包中所有的代币的转账收款地址都是这个地址。至于该地址是怎么生成的,在之前的文章我们有讲过。

地址就相当于银行卡,那么地址的作用就很明显了:转账收账

密码=银行卡密码。

在imToken中密码就相当于银行卡密码,这个密码不同于私钥,这个密码是可以修改的。这个密码信息,是加密保存在本地客户端。可以通过输入原始密码或者导入助记词或者私钥进行重置。既然是银行卡密码,那么密码就是在转账的时候进行确认的支付密码,当然在imToken中密码还有另外一个用途,就是将keystore导入钱包时的登录密码。

讲下该密码和银行卡密码的最大区别,我们刚刚说过,通过导入私钥可以重置密码。那么是否意味着密码可以拥有多个,答案是可以的。A手机的钱包和B手机的钱包可以使用不同的密码,该密码只是在本地存储,解码本地加密的文件,不同手机同个钱包的密码不会相互影响

私钥=银行卡+银行卡密码。

私钥是一个长度为64位的字符串,一个钱包只能拥有一个私钥并且不能修改。为什么说私钥=银行卡+银行卡密码呢?因为在imToken中直接导入私钥可以生成新的密码,将所有的区块链资产全部转移走。私钥作为最高保密级别,应该妥善保管在物理设备上,例如抄在纸上,备份多份并且存放在安全的地方,万万不可将私钥在联网设备上进行传输,避免被黑客截取

助记词=私钥。

助记词又是什么东西呢?助记词既然等于私钥,那么其应该是私钥的另外一种表现形式,并且具有私钥同等的功能。在imToken中创建钱包,会出来一个助记词,助记词的个数一般为12、15、18、21个单词构成。这些词都取自一个固定词库,其生成顺序也是按照一定的算法得到,且助记词不能修改。助记词的主要作用是帮助用户记忆繁琐的私钥。同样助记词也要妥善保管好,切勿在联网设备中传输,任何人得到了你的助记词都可以轻松的转移你的区块链资产。

keystore+密码=私钥。

keystore文件是以太坊钱包存储私钥的一种文件格式(JSON格式)。它使用用户自定义密码对私钥进行加密,在一定程度上keystore=加密后的私钥,拿到keystore和密码后照样可以转移走所有的区块链资产。keystore密码是唯一不可修改的,那么钱包密码修改之后,keystore也会相应修改。一定要记住加密keystore的密码,一旦忘记密码,就相当于遗失了该钱包所有的区块链资产。keystore的格式差不多长这样:

{“version”:3,”id”:”b7467fcb-3c8b-41be-bccf-73d43a08c1b7″,”address”:”540f18196da5a533fa36577a81de55f0a2f4e751″,”Crypto”:{“ciphertext”:”78ed11b8b6bf29b00f52b42b8542df0e4a6ac078e626af7edcf885c3b68154a4″,”cipherparams”:{“iv”:”4516579601d96695fe30ace985a9066f”},”cipher”:”aes-128-ctr”,”kdf”:”scrypt”,”kdfparams”:{“dklen”:32,”salt”:”6276cfda7d40872352c801db5871e5a3368a8d0994cea39ed936760db78d1cdc”,”n”:1024,”r”:8,”p”:1},”mac”:”d889a5dc609c3f312a41394cc47640676d2612501a6f8c837ed55598158336db”}}

钱包信息忘记了,会造成什么后果?

去中心化的钱包和传统中心化的银行的差异还是有很多的,银行卡密码忘记了还可以通过身份证找回,但是在区块链钱包中,钱包相关信息弄丢了,那就在也找不回来了。只有保管好自己的钱包信息,钱包下的财产才只属于你,谁也抢不走

在imToken钱包中,只要【私钥、助记词、密码+keystore】存在一个信息,就能找回钱包资产,妥善备份好【私钥、助记词、密码+keystore】相当重要

在imToken中具体怎么找回钱包信息呢?

1、遗失地址,可通过私钥、助记词、keystore+密码导入钱包找回;

2、遗失密码,可通过私钥、助记词导入钱包重置,密码忘记了keystore就失去了作用;

3、私钥或者keystore遗忘,但是钱包没有删除,可通过密码导出;

4、助记词遗忘、可通过私钥、助记词+密码导入钱包重置;

5、keystore遗忘,可通过助记词、私钥导入找回。