违规提示

请您遵循相关法律法规,避免再次出现类似问题

如有任何疑问,请联系support@tmtpost.com

关闭
第七课:什么是共识机制?
精通区块链·基础版
第七课:什么是共识机制?

第七课:什么是共识机制?

一、“工作量证明”机制

区块链是去中心化的,没有中心机构,那要怎么协调人与人之间的关系?就需要人们之间达成一致共识,也就是形成一个共识机制。那现在有哪些共识机制呢?

还记得上节课我们聊到挖矿的四个作用吗,最后一个就是根据“工作量证明”机制,确保账本不会被篡改。先问大家一个问题,上节课我们说挖矿竞争记账权是通过矿工解答数学题来完成的,不知道大家有没有存在这样一个问题,为什么是通过解数学题来完成竞争?而不是别的比赛或者选拔?

就是我们今天要说的第一个共识机制“工作量证明”机制。

为什么叫做“工作量证明”?因为这个矿工完成挖矿过程,解答出这个超难的数学题,说明ta付出了工作量,有权利进行记账,而其他人对此进行验证并同意这页账单,所以把它叫做“工作量证明”,简称为是“pow”。

有很多类似的例子,比如有证书证明你会说英语,证书越多说明你这个人的英语水平越高。而比特币的“工作量证明”就是通过数学的方式证明这个区块是这个矿工付出辛苦挖到的,就像是这个矿工的挖矿证书一样。

而且挖矿成功后,还需要大家进行验证,其实就是一个集体投票的过程,但也不是所有人都能参与投票,只有拥有计算力的人才有投票权,而且秉承一个IP地址一票,“大多数”的决定表达为最长的链,因为最长的链包含了最大的工作量。

好了,我们休息一下,接下来我们继续聊聊pow如何解决拜占庭将军问题。

二、拜占庭将军问题

上部分我们简单介绍了pow的基本概念,那为什么当初会选择pow作为共识机制呢?其实Pow有几个显著优点,最著名的就是解决了拜占庭将军问题。下面我们进入小故事环节:有一天,拜占庭帝国想要进攻另一个敌人,派出了10个队伍,而这10个队伍是分头行动。如果这10个队伍单独进攻,那毫无胜算,除非有至少6个队伍一起进攻才能够胜利。

但问题就在于,10个队伍只能依靠通信兵通信,将军之间不能确定他们之中是否存在叛徒,那要怎么保证至少有6个队伍能在同一时间一起发起进攻呢?这里假设通信不存在信件截取或丢失等问题,那么就存在两种情况:

  1. 没有叛徒的情况下,A将军提出进攻信息,要求下午1点进攻,而同时B将军也发出进攻提议,要求下午3点进攻,这样就会造成信息的混乱。
  2. 有叛徒的情况下,叛徒向多个将军发出不同的进攻信息,又或者叛徒同意多个进攻提案,而叛徒发送出不一致的提议,就被称为“拜占庭错误”。

那为什么说pow解决了这一问题呢?因为成本变高了。叛徒想要发送信息,首先他要第一个完成计算证明才能进行区块广播,这其中的算力是非常高的,而且如果失败,依旧要承担这个过程中产生的算力资源,实在是得不偿失,有那么多资源干点什么不好,谁还当叛徒啊,所以这个问题就被极大地降低了。

而且pow也降低了区块被攻击的可能。如果大多数将军是忠诚的,叛徒就无法破坏进攻。换句话来说,如果全网大多说节点是诚实的,那么诚实的链条将以最快的速度延长,并超越其他的竞争链条。要知道如果修改区块中的任意一页,那么后面的区块全部将重新计算,所以攻击者如果想修改记录,除了要完成该区块的任务还要重新完成后续区块的计算,并且要赶上并且超越诚实链条的工作量才可以,真的太难了,而且在pow机制下,每个区块产生的时间还是固定的,这让攻击者的成本变得非常高,还是乖乖当个诚实的小孩吧。

二、权益证明Pos和股份授权证明机制Dpos

pow解决了拜占庭将军问题,大大缩小了区块被攻击的可能性,但其实“工作量证明”也存在很多问题。

比如矿池的出现。为了获得更多奖励,矿工组成了矿池,聚集更多的设备和人群,这其实违背了比特币去中心化的主旨。而且每次验证都需要大量的工作量证明,而最后只有少数甚至一个工作被认可,就极大的浪费了能源。

也可以理解,毕竟很多网络在有监管的情况下还经常会出现bug,更何况是追求去中心化的区块链呢。在比特币之后也出现了其他一些共识机制,比较有名的比如POS、DPOS。下面我们简单介绍一下他们的区别。

如果说pow是多劳多得,那么pos权益证明就是多买多得,这里的“买”是指持有的权益,也可以理解为股权,拥有的币越多获得记账权的概率越大,获得奖励的概率就越大。pos本质是pow的升级版,主要解决pow资源和时间浪费问题,主要是通过计算你持有币的数量以及持有币的时间,来决定记账权的归属,其实就像是股东大会,谁的股份多听谁的。

当然如果pos机制中想要发起攻击,必须要收集全部币量的50%以上,也就是常说的51%的攻击。但这同样成本会非常大,并且执行难度也非常高。因为pos只是pow的升级版,所以还是需要挖矿,并没有根本解决pow的问题。

还有一个共识机制是DPOS,跟前面两个都是递进的关系,它是在POS的基础上又加了一个选举。通过选举产生代表进行记账,而不是通过币多币少来决定。它的优点是大幅缩小参与验证和记账节点的数量,可以达到秒级的共识验证,极大提高了区块链的运行速度。但缺点是选举出的代表属于特殊节点,再次形成了一个中心化结构。

如果你问我现在有没有一种完美的共识机制,其实,每个人心中对完美的定义都不同,也没有任何共识机制可以满足所有人,对个体来说,共识机制只有适合不适合之分,很多时候,时间都可以给出最终的答案。

好了,今天的课程就到这里了,记得不断复习哦,我们下期见。

【版权归钛媒体与链得得所有,未经许可不得转载】

分享课程:
大家都在学
72问 有声书系列 / 中国经济2021
精品小课 揭秘黄金投资:2022年以来上涨表现最好的资产之一
精品小课 阿里人力资源体系课

Oh! no

您是否确认要删除该条评论吗?

全部课程 ( 21 )
倒序播放

00:00
/
00:00
X1.0

注册邮箱未验证

我们已向下方邮箱发送了验证邮件,请查收并按提示验证您的邮箱。

如果您没有收到邮件,请留意垃圾邮件箱。

更换邮箱

您当前使用的邮箱可能无法接收验证邮件,建议您更换邮箱

账号合并

经检测,你是“钛媒体”和“商业价值”的注册用户。现在,我们对两个产品因进行整合,需要您选择一个账号用来登录。无论您选择哪个账号,两个账号的原有信息都会合并在一起。对于给您造成的不便,我们深感歉意。