1
钱包的本质
钱包的本质其实就是一个私钥,它是一个随机的哈希值字符串。用户拥有了私钥就拥有了该钱包的使用权, 而 keystore 和助记词可以理解为是私钥的另一种表现形式。
keystore 是使用用户特定密码加密过后的私钥, 使用 keystore 进行交易转账等钱包操作, 必须知道该 keystore 的密码。
而助记词则不同, 它最早是由 BIP39提案产生的 , 可以是12个, 15个, 18个, 21个, 24个特定的单词。这些单词有一个统一的、固定的词库, 并不是凭空而来。
imToken 创建钱包生成的助记词个数是12个, 但是支持导入上述个数的助记词imtoken钱包官网。
2
钱包的备份
用户可以将助记词理解为明文私钥, 即拥有助记词, 就相当于掌握了该钱包的使用权, 无需密码。助记词的好处是方便用户记忆和记录, 所以用户要妥善保管好自己的助记词。
用户在备份助记词的时候, 最好是在备份之后, 再重新导入一遍备份的助记词 ( 多次检验 ) , 以检验备份是否出现错误。比如抄错一两个单词, 将会对钱包找回带来巨大的困难。
在备份keystore的时候, 最好是将keystore和密码分开存储。比如将 keystore 备份到一个离线优盘上, 然后密码通过离线的密码管理器进行管理。加密 keystore 的密码要尽量复杂, 长度最好在 8 位以上, 不要使用常用的密码,例如和邮箱、QQ 密码一致等。
这里要提到一点就是, keystore 的密码是无法更改的, 即一个keystore 对应一个密码。但是可以通过该钱包的助记词, 重新生成一个 keystore。这个 keystore 可以用新的密码生成, 这也是很多用户所说的重置密码。重新生成新的keystore之后, 最好将旧的keystore 删除。
3
钱包的管理
这里我们推荐一些钱包管理工具, 比如买一个硬件钱包 Ledger, 转账时候使用 imToken ( 1.3.0 版本支持 Ledger 路径), 也可以使用 Parity, 或者 Ledger 提供的官方钱包。对于私钥的存储, 使用 1Password 或者 Lastpass 管理。
其实对于钱包安全管理, 主要围绕两点展开, 一是防盗, 二是防丢。
(1)防盗
防盗要做到防止私钥泄露, 以及大额资产分散存储。这里还要回归到 keystore 和助记词的区别。
助记词作为钱包私钥的友好格式,是非常方便大家做备份和导入的,由于它的明文性,我们不建议它以电子方式保存,而是抄写在物理介质上保管好,它和 keystore 作为双重备份互为补充。
而 keystore 可以放在线上存储, 比如云盘等, 也可以存储在自己的 U 盘里, 这比线上存储相对安全一些, 即使黑客盗取了你的 keystore, 在没有该 keystore 的密码情况下, 还是无法盗取其中资产, 所以这时候该 keystore 的密码显得尤为重要。建议用户将 keystore 和 密码分开存储, 不要放在同一地方, 并且使用高强度、随机生成的密码。
(2)防丢
防丢的策略主要是多重备份, 多次备份。比如备份一个钱包的时候不光备份 keystore, 也要备份助记词和私钥, 这是多重备份。再比如将一个 keystore 存储在多个地方, 这样即使一处丢失, 也可以再其他渠道找到该钱包, 这是多次备份。
这里我们也推荐一种更加高级、安全的钱包模式, 即多重签名钱包。这是一个通过智能合约实现的多重签名, 用户必须使用两把私钥, 同时确认, 才能对钱包进行操作。
我们在使用传统互联网产品的时候, 可能忘记账户名, 或者用户密码, 只需要向运营商提出申请, 然后发送一条带有验证信息的短信, 就可以轻松找回丢失的东西。
但是 imToken 并不会为用户提供这样的服务, 因为区块链本身去中心化, 不可篡改的特性。为了保护用户的资产安全, imToken 不会提供一个中心化的平台, 而是让用户自己管理自己的资产。尤其像私钥, 助记词这种一旦他人得到, 就掌握了你资产。所以 imToken 无法执行助记词找回, 密码找回, 交易回滚等操作。
原创文章,作者:老铁外链, 老铁,如若转载,请注明出处:http://boke.6ke.com.cn/?p=48576