POW共识机制及演化

POW:Proof of Work,工作量证明 特点:比特币莱特币等货币型区块链(公有链) 一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。参与挖矿的矿工竞争将前一区块的hash与一个随机的比特串一起来计算出一个hash值,若输出的hash值满足前若干比特为0,即为解出了该难题,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block Hash。

把区块中的所有数据做SHA256哈希运算,并且得到哈希值小于给定的目标值。区块中还包含一个Nonce值,通过递增Nonce来寻找正确的哈希值。这个密码谜题被设计成,比特币每隔10Mins会找到一个谜题答案。

优点: 1,完全去中心化 2,节点自由进出,容易实现。 3,破坏系统花费的成本巨大 缺点: 1,区块的确认时间难以缩短,并且交易的确认时间需要10-16分钟,不能满足实时性需求 2,新的区块链必须找到一种不同的散列算法,否则就会面临比特币的算力攻击 3,浪费能源;

比特币的工作量证明是如何解决计算机网络中的拜占庭将军问题

被所有将军都接受到的攻击计划,被认为是正式的攻击计划。问题是:两个或多个将军有可能同时发出不同的攻击计划。

这个问题模型被工作量证明简化了,比特币工作量证明系统中,不会追踪交易顺序,取而代之是在将军之间达成共识。每个将军基于工作量证明,解决一个难度适当的Hash难题,每个难题有足够的难度,仅当在所有的将军同时工作时,平均10Mins会找到一个难题的答案(solution)。当一个将军找到问题的答案,它会把这个答案连同攻击计划在网络中广播。一旦收到Solution,每个将军调整难题为在广播中收到的攻击时间,攻击计划。然后将军继续解决下一个工作量证明。这样接下来每个solution会依次在第一个solution后串联成链。如果有将军还在继续在对另一个不同的攻击方案进行工作量证明计算,它会切换到这个最长的链上。这个最长链上积累了最多的CPU算力。

平均一个小时后,这个链上会有六个区块。每个将军可以判断是否有足够多的将军工作在含有相同初始攻击计划的最长链上。链会在一小时累积到六个区块,说明大多数将军对相同的攻击计划进行工作量证明计算(CPU投票)。因此将军对攻击时间达成共识。

在没有中心化权威机构存在的P2P网络上,比特币共识协议功能上等同于一个受信任的中心化机构。这个协议解决了拜占庭将军问题中缺少中心化权威机构的难题。帮组将军在攻击时间上达成共识。而且,它缓解了多个攻击计划同时提交的可能性,同时也降低了攻击的可能性。因此比特币共识协议现代拜占庭将军中的问题。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员宝库

区块链入门教程

文章作者:阮一峰(http://www.ruanyifeng.com/) 原文链接:http://www.ruanyifeng.com/blog/2017/12...

33060
来自专栏区块链深度

智能合约是怎样运作的?三分钟读懂智能合约

当今社会,执行合约需要耗费大量社会资源。比方说,A、B两家公司签订合同,后来A违反合同条约,导致B损失重大。B想要拿回属于自己的东西,于是向法院起诉。就算B打官...

21140
来自专栏IT技术精选文摘

区块链入门教程

现在市面上文必提区块链,这玩意有人说这是骗子的新伎俩,有人说这是未来的颠覆性技术,更有人说基于区块链技术的IM社交产品可以干倒某信和鹅厂(哈哈)。虽然现在各种...

15530
来自专栏数字

区块链生态圈应用落地须了解区块链共识技术开发

区块链在网络应用过程中,衍生出了很多的产品出来,从最开始的数字资产币种,到后面的交易所,再衍生出其他的产品,包括现在要打造的链的生态圈,其实都离不开区块链技术核...

21940
来自专栏liuchengxu

用表情符号解释比特币 - Part 1

比特币是一个存储和消费数字货币的革命性方式,并且有着变革其他领域的潜力。无须成为一个数学家或密码学家, 你就可以理解它是怎么回事。当开始看到整个系统是如何形成时...

8520
来自专栏极客编程

比特币UTXO模型介绍 原

如果你曾上过BlockExplorer观察自己的比特币收入状况,你是否曾经被搞的一头雾水呢?这正是因为比特币所使用的交易模型并非我们直觉上以账户为基础的,而是一...

11220
来自专栏互联网杂技

区块链入门教程

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。 可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释...

33860
来自专栏智能计算时代

比特币项目

比特币项目是区块链技术第一个大规模的成功应用,并且是首个得到实践检验的数字货币实现,在金融学和信息技术历史上都具有十分重要的意义。 简介 比特币是基于密码学和经...

24750
来自专栏申龙斌的程序人生

创世区块 | 区块链生存训练

比特币的底层是区块链(blockchain)技术,区块链是由一些区块(block)链接而成的,区块中记录着比特币交易信息。 2009年1月3日 18:15:05...

42890
来自专栏奇点大数据

[区块链]入门教程

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。 可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释。...

35770

扫码关注云+社区

领取腾讯云代金券