04.2_热存储和冷存储
2019-08-26 20:50 StevenZhao 阅读(1447) 评论(1) 编辑 收藏 举报热存储:把比特币放在电脑里,就像把钱放在钱包里带着。
冷存储:离线,把比特币锁在其他地方。
管理冷存储的的问题:一方面,为了私密性和其他考虑,我们希望用不同的地址来收款。所以我们把比特币从热存储转到冷存储的时候,需要用一个新的冷存储地址。但是由于冷存储不上线,所以热存储必须能找到这样的地址。
一个直接的解决方案就是,冷存储生成一批地址,然后把地址列表发送给热存储,热存储依次使用这些地址。缺陷就是为了传送地址,冷存储需要经常上线。
分层确定性钱包:
该方法可以让冷存储端制造无线的地址,然后通过一个短暂的、一次性的交换,让热存储端知晓所有地址。这需要使用密码学的技巧。在分层确定性钱包中,我们不止生成私钥,而是生成“私钥生成信息”。我们把地址生成信息和一个整数i作为地址生成函数的输入参数,就生成了序列里的第i个地址。同样,我们用私钥生成信息类生成一系列的私钥。
密码学的神奇之处,就是对于每个i而言,第i个地址和第i个私钥相匹配。即第i个私钥控制着第i个地址的比特币。
另一个优点就是安全性,地址生成信息不会泄漏关于私钥本身的任何信息。
大脑钱包:通过一个密码就可以支取比特币。大脑钱包无需硬件、纸张或者其长期存储的介质,在物理安全性较差的情况下非常有用。
大脑钱包主要原理是用一个可预测的算法,把一个口令变成一对公钥/私钥。但是其口令如果被黑客猜测到,他可以偷走你钱包里的所有私钥。而且黑客可以离线进行破解,成为离线猜测或者密码破解。一种安全的方法是使用一个自动生成80位的数字,然后将其转换成口令。
纸钱包:把密钥写在纸上,然后放在保险柜中。
防损硬件:保存密钥或者生成密钥。此类设备不会泄漏密钥或者输出密钥,而只是我们按下设备的某个按钮或者输入设备密码后显示密钥的保管状态。