什么是数字货币钱包?
很多人说,数字货币钱包就是用了装数字货币的,通俗来说这样理解没有问题,但实际上,数字货币钱包装的并不是数字货币,而是装密钥(私钥和公钥)的工具,有了密钥就可以拥有相应地址上的数字货币的支配权,利用钱包中生成的数字货币收款地址,可以接受他人给你转账的数字货币,也可以把你所拥有的数字货币转账给其他人。
数字货币钱包的本质是一个工具,即存储、转账和接收Token的工具。
首先,我们来了解一下钱包的三个最为核心的概念:私钥、公钥、地址。
它们按照这个顺序生成的:1、生成私钥 2、由私钥算出公钥 3、再由公钥经过一系列哈希算出钱包地址。
私钥(Private Key)听起来高端,其实就是个随机数,由32个字节(byte)组成的数组,1个字节等于8位二进制,一个二进制只有两个值,0或者1。你可以想象着比特币世界里有2^256个抽屉,随便抽出一个抽屉来存放比特币,抽屉的编号就是私钥,只有你知道这个编号,所以也就只有你才能使用这个抽屉里的比特币。相当于提款卡,金融卡,或银行帐户的密码,用于证明比特币的所有权。
「2的256次方」是多大呢?它约等于「10的77次方」。那「10的77次方」又是多大呢?如果我们居住的这个地球,海洋、岩石、地底下的岩浆全部用沙子来填充的话,整个地球的沙子数量大概是「10的30次方」。也就是说,一个和地球一样大,全部由沙子组成的星球,需要用到「10的30次方」粒沙子。
「10的77次方」比「10的30次方」大「10的37次方」倍,整整37个0。在比一个地球的沙子数量还要多「10的37次方」倍的比特币私钥集里,一个一个地试,破解出某个地址对应的私钥,简直比大海捞针还难。所以,即便黑客有超级计算机,都无法暴力破解比特币私钥。这就是为什么很多人说,“比特币第一次通过技术手段,保证了个人的私有财产神圣不可侵犯”。
公钥(Public Key)公钥与私钥一一对应,是由私钥推算出来的(通过椭圆曲线算法)。使用私钥签名交易之后,会把自己的公钥一起和交易发送出去,公钥是用来验证私钥的签名是否正确,一般我们很少会看到公钥。私钥能推算出公钥,但公钥不能反推出私钥,该过程是不可逆的。公钥和私钥是成对的。
地址(Address)地址是由公钥转换而来(摘要+校验),地址被用于转出和接收Token(公钥其实也可以收币,只不过大部分人不这么做而已),一个地址上收到Token后,只有使用该地址所对应的私钥才能使用这个地址上的资产。简单点说,钱包会有一个对应的地址、私钥、公钥,地址和公钥可以公开给别人看,但是私钥绝对不行,否则就不安全了。私钥决定了地址资产的归属,公钥和地址均能通过私钥推算出。
判断一个钱包是否安全可靠,首先就是看它能否安全的管理私钥。
无论是使用冷钱包还是热钱包,只要其他人知道了你的地址私钥,就能转走你的币。记住,谁手握私钥,谁才是持币地址真正的主人。
在现实世界中如果你路上捡到了一张纸条,上面只写着银行卡密码,但没写银行卡号,即便这个银行卡密码是真的,你也无法取走相关账户里的钱。但在区块链世界,你只要知道了别人的“银行卡密码”(私钥),就可以知道别人的“银行账户”(公钥)和“银行卡号”(地址),可以取走里面的币。为什么会这样呢?这是因为在区块链中,私钥通过加密生成公钥,公钥转换一下格式生成地址。也就是说,私钥可以推导出公钥,公钥可以推导出地址。
数字货币钱包是如何分类的?大体上可分为两大类,热钱包(在线钱包)和冷钱包(离线钱包)
一、热钱包热钱包又称在线钱包,包含轻钱包和重钱包(全节点钱包),需保持连网上线的钱包,可以直接进行交易操作。
1、轻钱包:不储存完整的区块链,只保存和自已相关的数据。它的体积小,可以在手机、电脑、网页等运行。
优缺点:不占用内存、支持多种数字资产、用户体验好、新手上手快,但交易验证稍慢
2、重钱包(全节点钱包)维护着全部的区块链数据,完全去中心化,同步所有数据。具有更好的隐私性、可以在本地验证交易数据的有效性。
优缺点:具有更好的隐私性、验证信息更快速,但每次使用都需要前需要同步数据,占用很大的硬盘空间,不支持多种数字货币交易。
二、冷钱包冷钱包就是不连网的钱包,也叫离线钱包;比如专业的硬件设备,或者将私钥(助记词)写在纸上。
1、硬件钱包硬件钱包即是用专业的硬件存储数字货币,将数字资产私钥单独储存在一个芯片中,与互联网隔离,即插即用。
冷钱包设计理念网络是不安全的,只要是接触网络的设备,就有可能被攻击。
U盘是不安全的,U盘可能会被植入病毒,被植入病毒的U盘可能会自动记录数据,在被插入有网络的电脑以后,通过网络把数据盗走。
单个人是不可信的,所有的授权必须要经过多个人做双重确认,才能确保安全。
每个人都有可能出现意外事件,因此掌握授权的人需要进异地备份以确保安全。
人可能被绑架,因此重要的数据需要保存在保安级别高的银行保险柜里,同时须本人亲自去银行才可取出
私钥产生和备份在完全离线的电脑上生成10000个私钥和对应的地址。
在完全离线电脑上对私钥进行AES加密。
删除原始私钥。
AES密码由公司的两个分属异地的人掌握。
掌握AES密码的两个人不得乘坐同一辆交通工具,避免出意外的风险。
把之前加密后的私钥和明文地址生成二维码加密文档。
通过二维码扫描完全离线电脑生成地址文档,用于日常使用,每次热钱包往冷钱包汇币,必须使用一个未使用过的地址,每个地址不可重复使用。