比特币、区块链、挖矿是什么
比特币跟人民币美元不一样, 不是银行卡里的一个数字。而是通过比特币账本追溯而来。
你去查询银行卡余额,ATM上很可能显示:余额5元。
而要看比特币余额,需要翻开比特币账本:张三转给李四5个比特币,李四转给王五3个比特币,王五转给你1个比特币,于是你有1个比特币。
银行卡里的余额是否可信完全取决于你对银行的信任。比特币余额是经过追溯每次加解密交易而得来,具有极高的可信度。
转账信息采用非对称加密(公钥、私钥),每次转账的信息大概包含如下信息(以李四向王五转账为例):
李四的信息摘要被私钥加密后的产物、王五的公钥、转账金额、账单编号、转账金额来源的账单编号
为什么要包含以上信息呢?是保证了交易的可追溯性和真实性。
通过来源的账单编号,可以找到李四的公钥(张三向李四转账)
然后验证:
(交易信息)——>(交易信息摘要)——>(李四私钥加密后的摘要结果)
1.(李四公钥解密私钥加密后的摘要结果) 得到交易信息摘要
2.(交易信息)——>(交易信息摘要)对比解密结果
王五的公钥对应的私钥只有他自己知晓。所以不用担心别人获取这笔转账金额。(下次王五转账给你时,他也需要带上他的私钥加密后的摘要结果才能验证通过,然后才能使用这笔钱
转账一般通过比特币钱包完成,所有装有比特币钱包的设备,都可以收到这笔转账信息,都纷纷开始记录,但是只有一个设备能记录成功(Pow),能成功记录这笔转账信息,就会获得比特币的奖励。这个过程称为挖矿。这也是比特币的来源(与人民币是央行发行的不同)。
什么情况下才算成功记录呢(Pow)?
这一笔笔的转账记录,需要存储起来,存到哪里呢?回答是区块中。
区块就是一个包含了多笔转账记录的容器。每个区块都有一个自己的标志(HASH),以及前一个区块的标志(HASH)。这里的HASH是通过一个极其难的计算得来(通过账单信息以及一个Nonce得到一个符合设定规则的HASH)。
区块可以形象的理解为一个纸质账本的一页。前一个区块可以理解为前一页。这一块一块的连起来就是区块链(账本)。
个人浅显的理解,可能存在错误的地方。