学习区块链、比特币需要先搞明白hash、非对称加密、BASE64/58。
比特币中一个重要的概念就是UTXO(未花费输出),你有多少个比特币就是根据这个得来的。
挖矿得来的比特币称为coinbase,这个也是会产生一笔交易的,但是这个交易没有输入,只有输出。
比特币会产生分叉,有可能是临时分叉,因为两个人同时计算出了Nonce,同时打包了区块,这时就要看哪一个链条增长的更长,当超过6个区块时,另外一个区块就作废,所有的交易就失效。所以别人给你转比特币时,需要等待至少6个区块的确认,否者你会人财两空。
比特币也会产生硬分叉,就是同时存在两个链条,这个与临时分叉不同,这两个分叉谁也不能干掉谁,比如新的分叉BCC,BCH。产生硬分叉的原因其实是人为的,因为现在维护比特币的是core 团队,core团队提出的一些意见(隔离见证、闪电网络),得不到旷工团队的认可,或者说是利益问题。于是就产生了结构不同的区块,这样就分叉了。
挖矿(pow)的过程其实是计算一道题:
目标值=最大目标值/难度值
最大目标值是恒定的:
(0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF)
通过调整难度值来调整目标值的计算难度
需用通过hash运算,以及随机改变的Nonce来计算出一个hash值,使这个值小于目标值。
网友评论