您现在的位置是:首页 > 比特币 > 比特币指南比特币指南
比特币PoW挖矿及共识流程
2019-06-09来源:作者:经济常识笔记栏目:比特币指南
简介比特币挖矿的过程:构建一个空区块,称为候选区块;从内存池中打包交易至候选区块;构造区块头,填写区块头的下述字段;开始挖矿。挖矿就是不断重复计算区块头的哈希值,修改nonce参数,直到找到一个满足条件的nonce值,也就是该nonce值下,hash函数运算出来的hash值 < Bits。
比特币PoW工作量证明共识机制流程图如下:
比特币挖矿的过程
- 构建一个空区块,称为候选区块
- 从内存池中打包交易至候选区块
- 构造区块头,填写区块头的下述字段
1)填写版本号version字段
2)填写父区块哈希prevhash字段
3)用merkle树汇总全部的交易,将merkle root的哈希值填写至merkle root字段
4)填写时间戳timestamp字段
5)填写目标值Bits字段 - 开始挖矿。挖矿就是不断重复计算区块头的哈希值,修改nonce参数,直到找到一个满足条件的nonce值,也就是该nonce值下,hash函数运算出来的hash值 < Bits。当挖矿节点成功求出一个解后把解填入区块头的nonce字段。
- 这时一个新区块就成功挖出了,然后挖矿节点会做下面这些事:
1) 按照标准清单检验新区块,检验通过后进行下面的 2)和 3)步骤
2)立刻将这个新区块发给它的所有相邻节点,相邻节点收到这个新区块后进行验证,验证有效后会继续传播给所有相邻节点。
3)将这个新区块连接到现有的区块链中,按照如下规则:
根据新区块的prevhash字段在现有区块链中寻找这个父区块,
(Ⅰ) 如果父区块是主区块链的“末梢”,则将新区块添加上去即可;
(Ⅱ) 如果父区块所在的链是备用链,则节点将新区块添加到备用链,同时比较备用链与主链的工作量。如果备用链比主链积累了更多的工作量,节点将选择备用链作为其新的主链,而之前的主链则成为了备用链;
(Ⅲ) 如果在现有的区块链中找不到它的父区块,那么这个区块被认为是“孤块”。孤块会被保存在孤块池中,直到它们的父区块被节点接收到。一旦收到了父区块并且将其连接到现有的区块链上,节点就会将孤块从孤块池中取出,并且连接到它的父区块,让它作为区块链的一部分。
很赞哦! ()
上一篇:资深开发者眼中比特币是什么
相关文章
随机图文
-
比特币与区块链的关系:比特币就是区块链吗?
相信很多人都是先闻比特币,再知区块链。毕竟,比特币早在10多年前就出现了,而区块链是最近这几年才被广泛提起,那么比特币与区块链之间是什么关系?比特币是不是区块链?新闻媒体上对 -
什么支撑了比特币的价值〈二〉黄金的相对稀缺性vs绝对稀缺的BTC
与普遍的想法相反,比特币事实上是有东西支撑的。它的支撑跟其他任何形式的货币一样:其货币属性的可信度。货币并非是集体幻觉,也不只是信仰系统。在历史长河中,有多种媒介成为货 -
从运行原理认识比特币是什么
原标题:从运行原理认识比特币是什么比特币的诞生2008年11月,一个化名中本聪的人(或组织)在某个隐秘密码学讨论小组中发表了一篇研究报告《比特币:一个点对点的电子现金系统》,提 -
支撑比特币价值的东西是什么?
有人认为比特币没有实际支撑。而本文则认为,任何货币体系的真实支撑只有一个,就是其货币属性的可信度。美元的支撑源于其相对于美元计价的信贷体系的相对稀缺,而比特币支撑则来