1. 私钥: 2^256中的一个随机数。
私钥决定了比特币的产权,如果想花掉一个地址上的比特币,必须得有私钥,没私钥?没办法。
必须得保管好私钥,私钥丢了,币就花不了了,私钥被别人看到了,币就丢了。所以,需要做好备份,做好加密。尽可能的“冷”(保持离线、断网)保存,不被别人看到。
2. 地址: 私钥能计算出地址,反之不能。比特币地址是1开头的。从一个私钥计算出其对应的地址后,可以往该地址栏上转比特币了,转入的比特币只有私钥的持有者才能花。
地址是公开的,可广而告之,如果你有该地址的私钥,任何转入该地址的比特币都唯有你能花。
3.区块链:中本聪为比特币设计的一个“用来去中心化的存储比特币账目“的数据结构。本质上,区块链是个“账本”,用来记录比特币的交易账目信息。(双向链表呀)
账目都是去中心化的存储在区块链上的,也就是存储在比特币网络的每一个节点上的,并不是存储在私钥或者地址上的,所以,一个地址当前的余额是多少,这类的问题需要问区块链,区块链上有着比特币历史上的全部账目,账目都是公开的。
4. 比特币钱包:私钥、地址和区块链数据的管理工具。
比如说,私钥这个随机数得生成吧?生成之后得计算出地址吧?相关的区块链数据得维护吧?收到的、花出的账目也都得列出来吧?得能用来收款,也得能进行付款吧?
毫无疑问,所有这些都得通过工具来完成,这类的工具我们统称为“比特币钱包”。
钱包分类:
根据区块链数据的维护方式,钱包分为:
1.全节点(如 bitcoin-core 核心钱包),维护着全部的区块链数据(当前在50GB以上),完全去中心化,同步所有数据;
2.SPV轻钱包(如比太),只维护与自己相关的区块链数据,基本上去中心化(要依赖比特币网络上的其他全节点),仅同步与自己相关的数据;
3.中心化钱包,不依赖比特币网络,只依赖自己的中心化服务器,不同步数据,所有的数据均从自己的中心化服务器中获得;
从去中心化角度上讲,我们希望更多的人使用全节点钱包,这样比特币网络上的节点数也会更多,不过,由于区块链的数据量太大,严重影响了普通用户的体验,因此,当前越来越流行 SPV 轻钱包模式,越来越多的钱包解决方案也开始转向 SPV。中心化钱包由于不依赖比特币网络,有着流量和体验上的优势,不过因其要依赖第三方中心化的服务,服务不可用则钱包不可用,用户也需要信赖该第三方服务才行。
根据所使用的硬件设备,我们可以把钱包分为:
1).电脑钱包,钱包软件运行于桌面操作系统(Windows、MacOS、Linux等);
2).手机钱包,安卓、iOS等;
3).在线钱包(如 blockchain.info ),运行与云服务,私钥加密存储于服务器上,通过浏览器访问;
4).硬件钱包,运行与专门定制的硬件上,可能需要与电脑或手机配合使用;
“链上 on-chain、链下 off-chain”的分类方式,叫“off-chain 钱包”:不是钱包,只是一个“存币平台”.
想明白是要自己拿着比特币?还是要把比特币交给别人管理?分清区别,做好决策,这很重要。