什么是pow共识机制


什么是pow工作量证明POW(Proof of Work)
比特币系统是通过工作量证明(POW)机制完成的。比特币本质上就是一个去中心化的账本,每个区块记录交易记录信息。区块链解决的主要问题并不是单点问题, 而是第三方信任问题。每一个加入系统的节点都要保存一份完整的账本, 比特币采用竞争记账的方式解决去中心化记账系统的一致性问题, 也就是共识问题。比特币系统以每个节点的计算能力即“算力”来竞争记账权。大约10分钟进行一轮算力竞赛, 胜利者获得一次记账权, 并向其他节点同步新增账本信息。
如何判定竞争的结果,就需要通过一个称为“工作量证明(Proof of Work, PoW)”的机制完成,工作端需要做一定难度的工作得出一个结果, 即消耗大量的算力, 而验证方确很容易通过结果来检查工作端是否做了相应的工作。比特币的工作量证明俗称“挖矿”。每个矿工解决问题的可能性依赖于他的算力,挖矿的难度由系统中所有算力的总和来决定。因为它需要计算力的资源,成功的矿工会得到比特币作为奖励。
PoW的三个关键要素是: 
1、 工作量证明函数, 
2、 区块, 
3、 难度值。
比特币系统中使用的工作量证明函数是SHA-256。比特币系统的区块由区块头及该区块所包含的交易列表组成。比特币系统的难度值由区块哈希值的前导0个数决定,要求前导0的个数越多代表难度值越大。
POW的共识记账步骤:
1、 客户端产生新的交易,向全网进行广播记账请求;
2、 每个节点一旦收到这个请求,即将收到的交易信息纳入一个区块中;
3、 通过POW过程在自己的区块中找到一个具有足够难度的工作量证明;
4、 当某个节点找到了一个工作量证明,它就向全网进行广播;
5、 当该区块中的所有交易都是有效的且之前未存在过的,其他节点才认同该区块的有效性;
6、 其他节制造新的区块以延长该链条,而将被接受区块的随机哈希值视为先于新区块的随机哈希值。
*比特币系统中限定区块大小为1MB
*每一区块需要6次确认后,区块包含的交易才被确认。
通过上述的记账过程,客户端所要求记录的交易信息被写入了各个记账节点的区块链中,形成了一个分布式的高概率的一致账本。
POW的优缺点
• 优点
1、 算法简单,容易实现;
2、 节点间无需交换额外的信息即可达成共识;
3、 破坏系统需要投入极大的成本,允许全网50%节点出错。
• 缺点
1、 浪费能源,可监管性弱,性能效率比较低;
2、 容易产生分叉,需要等待多个确认;

已邀请:

要回复问题请先登录注册