• 一文读懂区块链的共识机制
  • 来源:蓝狐笔记
前言:本文简单明了地阐述了达成共识的两个主要流程:区块的提议和区块的共识达成。区块的提议主要涉及到PoW和PoS机制,也就是工作量证明和权益证明的机制,用以抵抗女巫攻击,安全地选出可靠的区块提议者。区块的共识达成则涉及到共识算法,主要包括中本聪共识和经典共识。中本聪共识采用最长链规则,经典共识则可实现最终性。每种共识算法都有自己的权衡取舍。本文作者Julian Koh 和Cheryl Sew Hoy,由“蓝狐笔记”社群的“晓L”翻译。
 区块链共识是2017年和2018年最广为讨论的区块链子领域之一。可以看到,很多公司试图从零开始构建新的智能合约平台,并与以太坊竞争,而其中的一个差异化或创新点就在区块链的共识算法方面。试图理解这些算法,并能对它们进行批判性比较,这对很多加密投资者来说,都是一项全职工作,毫无疑问,要掌握它们并不简单。 为揭开这些“共识算法”的神秘面纱,不少人做了很多工作。但是,对于普通人来说,它们太过于技术化。一些概念,例如同步、安全/活性证明、不可能结果,这些有助于人们通局了解。不过,在我看来,对于大多数人来说,完全理解并不特别重要。 本文重点是区块链的共识算法,而没有提及更大的也是超级复杂的分布式系统领域。为了简单易懂,还会放弃一些技术概念。 本文结束时,你应该理解PoW和PoS的区别,了解BFT的意思,最重要的是,当考虑在哪个区块链上构建你的应用时,你应该知道它们的权衡是什么。 什么是共识?为什么很重要? 简单来说,区块链是一种公共数据库,其中用户就什么是正确的达成一致。比特币是记录所有交易的公共数据库,保留了货币系统的完整性。有两个主要问题需要理解: 1.就什么达成共识?2.如何达成共识? 我们需要有人提议,然后让其他人选择,直到达成某种形式的共识。就区块链的情况,我们需要有人提议区块,然后需要剩余节点接受区块。 一个简单的例子如下:
比特币矿场
 PoS采用了跟PoW完成不同的“抗女巫攻击”机制。既然要花钱购买比特币挖矿计算机和购买电力,那么,为什么不只是用钱来选择区块生产者并将计算密集型过程跳过呢?PoS是这样的想法:基于人们在系统中质押的钱多少来选择区块提议者,也就是人们在系统中拥有的代币的比例。 在PoW中,拥有算力越多,被选为提议下个区块的概率就越高。在PoS中,拥有的代币越多,成为区块生产者的概率就越高。 请注意,还没有开始谈论如何就区块达成共识。有一种常见的误解,认为PoW和PoS是共识算法。其实它们不是。它们只是通过约束稀缺资源的方式来选择区块生产者。 区块共识 这是事情变得有趣的地方,也是近年来大部分创新发生的地方。一旦有人提议区块,我们如何达成共识?这是从上个世纪80年代以来计算机科学家们一直试图解决的问题,以在一些计算机偶尔发生崩溃时,其计算机集群也能同步。到了上世纪90年代,这些计算机科学家开始思考一个更难的问题:如果黑客可以控制其中的一些计算机呢?(蓝狐笔记注:这两个问题的区别在于,一个只是计算机部分崩溃,另一个是计算机没有崩溃,而被恶意控制。) 他们能否构建足够强健的系统,以确保所有非恶意的计算机依然能够达成共识?这一特性被称为“拜占庭容错”(BFT),它是基于拜占庭将军问题而来。BFT系统是一个相当小的研究课题,因为大多数系统并不需要这种级别的稳健性,因为大多数计算机集群通常都属于单一公司。直到区块链的到来,才改变了这一局面。 在区块链中,任何人都可以运行节点(集群中的计算机),并且可以向其他节点发送信息或数据。这是一个真正对抗性的环境,因为恶意行为者可以假装为诚实节点。例如,如果集群中的10个恶意计算机向其他9个计算机发送冲突信息,该怎么办? 突然,你在区块编号103收到区块B,而它在区块编号100有不同的区块。根据共识规则,你需要“反转”之前接受的区块A,转而接受新的区块历史。 
在这个系统中,超过系统算力50%的攻击者将能够持续构建最长链,因此,可以创建他们想要的任何区块。通过这个例子,我们可以看到这些规则有助于人们就哪一条链是可接受的链达成一致。 经典共识 在中本聪共识2009年发明之前,计算机科学家对此问题有不同的解决方案,这问题有不同的特性。第一个拜占庭容错共识算法称为实用拜占庭容错算法(PBFT)。它的工作原理是:让一组参与者进行多轮投票,直到一定比例的投票者达成共识。 
由于大多数参与者都对区块投赞成票,系统中的每个人都将接受该区块作为正确区块。使用这种类型的共识,须有一组已知的投票者,但一旦他们投票通过,区块就有了最终性。因此,就不存在区块回滚的事情。如果存在争议,那么系统会停止。(蓝狐笔记注:经典共识的最终确定性,与中本聪共识的概率性形成鲜明对比。) PBFT算法已经被用在区块链上,区块链中迄今为止,最突出的BFT算法是Tendermint Core。Tendermint Core是区块链上第一个不使用中本聪共识的共识算法,而是基于20多年的计算机科学研究基础上。 BFT算法的主要局限是它们通常仅限于一小部分投票者,因为所有投票者都需要事先知道。让10万人不断地与其他人沟通以达成共识是极其困难的事情。到目前为止,Cosmos已经运行了可能是最大的公共BFT系统之一,他们的Game of Stakes测试网有超过200+的验证者参与。(蓝狐笔记注:Harmony的验证者已经超过了200+。) 中本聪共识有其他变种,例如GHOST(新评分算法,不仅仅是最长链),也有其他BFT共识的变种,例如Casper-BFT和Thunderella。 这些共识算法变种的主要区别实际上只是其区块提议方式的不同或参与共识的沟通人数不同而已。大多数情况下,在一个算法系列中,它们之间有类似的权衡。还有一些新的共识形式,例如Avalanche,它们不属于任何一个系列。 风险警示:蓝狐笔记所有文章都不能作为投资建议或推荐,投资有风险,投资应该考虑个人风险承受能力,建议对项目进行深入考察,慎重做好自己的投资决策。通往区块链的新世界:关注“蓝狐笔记”公众号:lanhubiji 加入蓝狐笔记的知识星球:https://t.zsxq.com/iaQNnIq加入蓝狐笔记群微信:pacinoli








Cheryl & Julian




扫一扫下载订阅号助手,用手机发文章

赞赏



长按二维码向我转账


受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。


















已同步到看一看



取消
发送


我知道了








朋友会在“发现-看一看”看到你“在看”的内容
确定













已同步到看一看写下你的想法



最多200字,当前共字
发送







已发送







朋友将在看一看看到
确定



写下你的想法...









取消
发布到看一看
确定




最多200字,当前共字








发送中













微信扫一扫
使用小程序







取消
允许






即将打开一个新页面

取消
允许








确定


区块

<< 21 22 23 24 25 >>