PRESS.one科普系列:忘记帐号密码怎么办?
版权声明
本文首发于PRESS.one: DBOYKAD
请注意:
本文由PRESS.one提供电子签名;
无需授权即可转载;
但需保留以上版权声明……
问题
区块链的世界很奇妙,让人们100%掌控了自己的数据与资产,这种感觉很爽!但权利越大, 责任也越大,100%掌控了自己的数据与资产,同时也意味着,一旦犯了错误,100%丢失了自己的数据与资产。想暴力破解密码?目前科技水平不支持。
所以,面对自己的掌握的私钥、keystore及密码,一定要慎重再慎重!
PRESS.one帐户登录系统需要你提供两样东西,才能正常登录,缺一不可,分别是:密码和keystore文件
所以注册时,一定要记好密码,保管好keystore文件。
注意:密码与私钥关联,无法提供密码找回功能。
同时,keystore本质上是用密码强加密的私钥,一旦丢失,同样无法找回。
结果即是,忘了密码,或是丢失了keystore文件,你也即丢失了该帐号的控制权(默哀三分钟)。保存keystore而没有密码,照样不行。
问题:PRESS.one帐号丢失密码或keystore文件,能否找回?
答案:无法找回。
解决方法:重新注册一个帐号。
应该注意的相关知识
1、慎重注册,并牢记密码,保存好keystore文件
在注册帐号时,只要提交电子邮箱、密码即可,而keystore文件的保存(即注册三大项的第三部分),有两种保存方式,目前的方案是默认保存在服务器上,这样用户可以不用考虑如何保存keystore文件的问题。
在最早的帐号注册过程中,keystore文件默认保存在本地,于是,有一些手机用户在注册后忘记备份keystore文件,再次登录时由于没有keystore,结果即是输入密码错误,无法登录帐号。后来项目开发团队听取社区意见,将该选项默认为keystore文件保存在服务器中,即只要用电子邮箱和密码即可以登录。
2、服务器保存keystore文件,使用密码登录模式
在该模式下,由于keystore文件保存在了服务器,因此你只要记住你注册的邮箱及密码即可以登录,使用体验与古典互联网产品一致。
对,你的责任只剩下一半了,只提供一个密码,即可以登录。
3、本地保存keystore文件,则需要提供密码+keystore文件
注册时选择我选择自己保存我的keystore文件,于是你可以进行备份该文件。
在登录时,将keystore文件上传或拖到指定的方框中,并提供密码,即可以登录帐号。
所以,你的责任是妥当的保管keystore文件,以及你的密码。
keystore本身可以理解为一个加密后的私钥,即私钥=keystore+密码=100%控制权,在区块链的世界中,一般keystore都是不建议保存在网络中的,毕竟,只要有了keystore,暴力破解密码的难度大大下降,从几亿年计算的难度下降到了几千年。
保存的keystore文件为json格式文件,可以用记事本打开,备份过钱包keystore的人一定很熟悉这些字母数字(为了保护帐号,该keystore中部分字母数字进行修改):
{"address":"edd06cac518f9f1e021b784fe6fe4b1f4ff82a60","crypto":{"cipher":"aes-128-ctr","ciphertext":"2f951e031b4059b29d5296fd70b6e768577fff7befb71b09b5d5fb10eaf7ebfe","cipherparams":{"iv":"bfa48abd73a856596947414e7304913d"},"mac":"585765f94348cf7df73cf276e02fa239ba0629e8b751f229e4330313711c4b9b","kdf":"pbkdf2","kdfparams":{"c":262144,"dklen":32,"prf":"hmac-sha256","salt":"dbe1ec455788e1e0c44352e9a48b9f638db38e64150386b2ecaa3501d4cdd4d8"}},"id":"0a6eb053-9cd1-4e07-9df0-9e2010ddb52b","version":3}
未来的解决方案
区块链终归给了人们一个选项,即将控制权牢牢抓在自己的手里,这样更安全;但是实际上,安全与便捷,大部分人会选择便捷,牺牲一些控制权给别人,增加了风险。
那么,有没有又安全又便捷的方案呢?
比如,PRESS.one帮人们保管私钥,但是又证明控制权还是在人们手里,PRESS.one不会利用掌握的私钥作恶?
来自霍炬的回答:
有办法,完成了TEE之后就可以了,基础代码我们差不多写好了。
TEE由CPU保证我们没法接触用户私钥,这样就可以不用加密保存了。密钥在CPU划的安全内存里面放着,谁也不知道是啥,只能拿到用户指定的计算后的处理结果。
正确的使用TEE技术,理论上可以让TEE硬件为用户备份私钥,妈妈再也不用担心我忘记密码啦!并且即使手机丢了也不用担心私钥泄漏,太好了。
什么是TEE???
请转区块链最强科普作者——汤强,如何给网络披上铠甲?https://mp.weixin.qq.com/s/Q3usFdsJqfPQLzYdtSvOBg
可信执行环境(TEE,Trusted Execution Environment):在硬件层面划出一块独立于操作系统的区域,能无忧无虑地运行代码。
看名字可能不眼熟,但TEE在我们日常生活中早已普遍,比如手机会把你的指纹和密钥存在可信环境中,当需要验证指纹时,在TEE中执行判断,直接输出结果,保障隐私。
大家看原文吧!
参考资料:
霍炬在PRS,TO THE MOON群的讨论
汤强. 如何给网络披上铠甲? https://mp.weixin.qq.com/s/Q3usFdsJqfPQLzYdtSvOBg