设为首页加入收藏联系我们 分享我们:
行业专栏
当前位置:首页 > 行业专栏 >

热点文章

热门图片

联系我们

反传销头条网联系热线

邮箱:fcxttw@sina.cn

区块链共识机制,去中心化的永动机(九)

时间:2019-04-25 来源:网络 作者:反传销网 浏览:
分享:
导读: |没有喧嚣,没有问候的沉默,请安静听完这段征途故事! 动 共识,区块链法典 反传销头条网讯:去中心化的区块链,不需要第三方参与,那日常转账交易、系统维护谁来做?又如何协

详细说明


| 没有喧嚣,没有问候的“沉默”,请安静听完这段征途故事!

 动

 

“共识,区块链法典”


 

头条网讯:“去中心化的区块链,不需要第三方参与,那日常转账交易、系统维护谁来做?又如何协调?”  估计,这是很多刚接触区块链技术的微友最疑惑不解的地方。本期 “《31小时,读懂区块链》学习成长计划!” 第九篇,微墨紫就来聊聊“共识”这话题,相信微友读完全文后定会豁然开朗,有所收获。

日常生活场景,你向朋友借钱,按约定到期还款,这是两人间的共识;学生完成学业,学校则给予毕业证,这是学生与学校间的共识;储户向银行存款,银行定期给储户支付利息,这也是共识,假设朋友到期不还款,按时完成学业学校不给予办理毕业证,银行不支付储户利息,这种情况下如何让违约一方遵守约定的共识? 只能寻求法律或其它机构的帮助,等待漫长的司法判决。

这是严重依赖中心化调节运转的共识,过程容易出现作弊,拒绝遵守共识的老赖,法律成本过高等等不公平和利益无法得以保障。当然,这也是一种共识,一种老旧、低效、高成本、权益难以保障的,依赖中心化的共识。

区块链技术的神奇之处,就是在于能很好的解决这一难题。首先,区块链技术把上面讲到的朋友借钱到期不还,寻求司法或其它中心机构帮助的这一“中心化” 角色去掉,换成没有中心化的一套新的 “共识机制”规则来完成。拿地球循环生态类比区块链技术,地球动物排放二氧化碳被植物会吸收并制造新的氧气,太阳进行光合作用,微生物净化污染水源等构成循环的生态,整个过程不需要任何中心化干预,反倒是人类对大自然的过度干预,最终伤害了大自然。

共识机制类型

区块链就像大自然的地球,能实现自治的生态系统。区块链共识机制目前常见的有五种:pow工作量证明(即Proof Of Work)、pos权益证明(Proof of Stake)、DPoS授权股权证明(Delegated Proof of Stake)、拜占庭容错共识和 pow工作量证明 + pos权益证明混合制。

微友可以把罗列的这些共识机制看做成地球、火星、水星等不同的星体,有着各自的生态系统,但它们的共同点都是去中心化可实现自治的特点,这就很容易理解多了。

下面全文就围绕着五种共识机制的各自生态模型、特点、差异、优劣展开介绍,全面认识区块链如何在没有公司这样的中心化机构下如何实现自治运转的。


 

1

 工作量证明(pow)

工作量证明,英文 Proof Of Work 简称pow,我们在第七篇文章介绍过,是亚当·贝克(Adam Back)在1997年发明的“哈希现金”就应用到工作量证明机制,当时被用来过滤垃圾邮件,后经哈尔.芬尼改进成今天的工作量证明(pow)前身。

工作量证明(pow)顾名思义就是就是一份证明,用于确认你的工作成果。例如向招聘单位证明你受过并完成大学教育,毕业证是最好的证明;如何向交警证明你已具备合格的驾驶技能,驾驶证就是证明。

监测工作的过程是非常低效的,但直接对工作的最终成果直接验收确认就非常高效,毕业证、驾驶证就是对最终成果的确认的一份证明。比特币的挖矿、区块交易信息打包就是使用这套证明。

比特币的工作量证明(pow)可不是大学毕业证、驾驶证、高级工程师证这种由中心化机构来确认证明的,而是通过运算前面提到的哈希函数(Hash Function)得到的正确值作为工作量成果的证明。运算这一过程需要消耗算力来找出正确值,就是通常讲的挖矿,谁的算力大,能找出正确值的概率就越大,所以就不难理解早期的挖矿是电脑CPU,后边演变成算力更为强大的Asic专业矿机来挖矿。

比特币的工作量证明(pow),参与者需要运算一道哈希函数题找出正确值,才能获得奖励。参与者就是 “矿工”,运算需要 “矿机” 来计算解题,奖励就是“比特币”,出题人就是比特币系统随机出的,工作要求:谁(矿工)能在规定时间内(10min)最先提交解题,并且是正确的,奖励就是它获得。整个过程,比特币系统不会去监测每个矿工运算的过程如何,而是只确认每个矿工的工作量结果,是否正确有效。

比特币的共识机制就是采用“工作量证明(pow)” ,通过算力来解题哈希函数(Hash Function)找出正确值,争取记账权(挖矿奖励与打包区块交易手续费),这是能促使比特币不断循环运转的共识,也是矿工节点之间的共识。

由于参与记账权需要专业矿机来运算挖矿,有较高的成本门槛,发起51%理论攻击风险需要花费巨额成本作为代价(代价成本大于攻击获得的收益),这是不现实也不可能的,所以在众多的共识机制中,工作量证明(pow)是目前公认比较安全却易实现的去中心化共识机制,但它也有很明显的优劣点:

优点:

算法简单,容易实现;

破坏系统,花费代价巨额;

节点进出自由,人人可参与。

缺陷:

能源消耗浪费;

算力过于集中;

区块确认时间过长;

容易产生分叉,没有最终性;

2

 权益证明(pos)

权益证明,英文 Proof of Stake 简称pos,是继中本聪的工作量证明(pos)之后的另一种共识机制,在2011年,由Quantum Mechanic的数字货币爱好者在Bitcointalk论坛提出。

权益证明(pos)与比特币的工作量证明(pow)虽然都同属于共识机制的一种,但前者并不是通过哈希函数运算解题,而是采用另一种叫 “币龄” 来行使记账权循环运转系统。

币龄,微友们可以简单理解成币的年龄、时间单位。那在权益证明(pos)里如何计算币的年龄呢? 就是从躺在你的钱包地址里未花出去的币(UTXO — 未花费的输出)那刻算起,直到你动用或继续存放这笔钱作为截止时间,两者差距的时间再乘以所持有币的数量就等于币龄。

但是,币龄的单位是以区块高度来计算的,不是以时分秒、年月日计算。我们都知道比特币每10分钟打包1个区块,60分钟就是能打包6个区块,两者差距的高度是 6-1=5个/区块高度,而不是60减10分钟作为币龄。


 

(btc.com/图源)

假设,你2018年1月1日在区块高度是10万个区块,往Qtum量子链钱包地址存入2个币(Qtum量子链是pos权益证明币种),然后在2018年12月末区块高度30万个区块时,币龄是多少? 那么你的币龄就是先30万-10万=20万/区块高度,然后20万*2币=40万,40万就是币龄,此时假设全网的UTXO总币龄是100亿,那么你获得的记账权力概率只有万分之四。

要注意的是,地址里边的币你交易花费出去了,币龄就归零重新计算。由此可以看出,权益证明(pos)机制设定拥有的币数量越多,币龄越老的节点,拥有的记账权力越大,收益越高。理论上,权益证明(pos)也存在51%攻击风险,但持币大户相比小散更愿意去维护系统安全,因为他们是最大利益既得者与系统安全绑定,只有系统稳定他们手中的币才会更有价值,所以他们没有进行恶意攻击的意愿,攻击只会损害自身利益让币变的一文不值,这也是权益证明(pos)能有效地防御51%攻击风险的巧妙之处。

跟工作量证明(pow)相比,权益证明(pos)机制不需要投入矿机算力来循环运转系统,所以越来越多的区块链项目放弃工作量证明机制,改用权益证明,其中优劣:

优点:

不需要消耗能源挖矿;

达成共识时间缩短;

更多持币者,可成为节点参与。

缺陷:

没有最终一致性;

持币越多,权力越集中。

3

 股份授权证明(DPOS)

股份授权证明机制,英文 Delegated Proof of Stake 简称DPoS,这一机制来自比特股(Bitshares)项目在2013年发明的共识机制,它对交易容量和区块速度有极高要求,是基于POS机制延伸出的更专业解决方案。


 

股份授权证明(DPoS)类似现代公司的董事会投票机制,比特股设置101个董事会席位(受托人),由持有比特股的社区用户投票选举产生,这101个被社区用户选举出来的受托人,负责轮流生产区块,维护系统正常运转,作为工作回报,代表们获得代币奖励收益。

要竞选董事会席位的受托人,需要交纳一笔保证金,类似第八篇文章讲到的达世币主节点一样,并用自己的公钥去系统区块链注册,获得一个长度32位标识符的特定身份,社区用户(持有比特股用户才有投票资格)如果对该标识符(受托人)代表看好就进行投票,得票数最高排前101位的,就是选举出的有效受托人。

股份授权证明(DPoS)惩罚机制,受托人负责生产区块,维护系统日常运转,如果受托人节点不能提供满足系统正常运转的算力保持稳定、计算机宕机或者利用权利作恶、不作为不老实的行为,一旦被其它受托人或股东发现,立即被踢出董事会席位,并且没收交纳的保证金,空缺的位置很快由投票排前102位受托人顶替。

股份授权证明(DPoS)其实就是一种去中心化自治公司(DAC)机制,持股用户能有更多的机会参与到社区的治理中来,投票选举出受托人,也可罢免作恶的受托人,并且系统产生的利润又重新回流到股东手中。

工作量证明(pow)用矿机生产区块,消耗大量能源;权益证明(pos)持币越多,记账权力越多,垄断风险;股份授权证明(DPoS)用民主选举出的节点受托人生产区块,交易容量和区块速度是前两者都达不到的,它明显的优劣点:

优点:

能耗更低;

确认速度更快;

交易容量更大。

缺陷:

投票积极性不高(持币额度小用户);

节点选举更替频繁,易造成网络安全隐患。

4

 拜占庭共识证明

微墨紫在前两期,第七篇文章介绍过拜占庭将军问题,是在1982年,莱斯利·兰伯特 (Leslie Lamport)教授提出的容错算法问题,此后,后继者们根据这一理论模型创建多种拜占庭容错算法,如实用拜占庭容错(pBFT)、授权拜占庭容错(dBFT)、联邦拜占庭式协议(FBA)、拜占庭容错(BFT)等共识证明机制,那我们挑选具有代表性的pBFT和dBFT来介绍。

4.1 

 实用拜占庭容错机制(pBFT)

实用拜占庭容错,英文 Practical Byzantine Fault Tolerance 简称 pBFT,是卡斯特罗(Miguel Castro )和利斯科夫(Barbara Liskov)在1999年提出的,解决原先拜占庭容错算法效率不高、降低复杂算法的问题,让拜占庭容错算法在实际系统应用成为可行。

pBFT这是一种基于消息传递的一致性算法,在保证活性和安全性(liveness & safety)的前提下提供了(n-1)/3的容错性。根据错误计算机的数量,寻找可能的解决办法,但没有一个绝对的答案,只能用来验证一个机制的有效程度。优点,是共识效率高,可实现高频交易;缺点,当系统只剩下33%的节点运行时,系统会停止运行。

pBFT这一共识机制逻辑有点烧脑,很难几句话表述清楚,感兴趣的微友可以自行度娘查看完整版材料或后边微墨紫再单独出篇文章介绍。

4.2 

 授权拜占庭容错机制(dBFT)

授权拜占庭容错(delegated BFT),是在pBFT基础上进行改进得来的,使用权益选出记账人,最终记账人之间通过拜占庭容错算法,达成共识。

小蚁区块链项目(NEO)就是采用授权拜占庭容错机制(dBFT),将pBFT算法的C/S架构改进为适合P2P网络的对等节点、静态共识节点改为动态节点、区块链中引入数字证书,认证参与投票节点身份(通过投票共识选出参与节点)这三点改进。

优点:

专业化的记账人,可容忍任何类型的错误;

记账由多人协同完成,每一个区块都有最终性。

缺陷:

出现1/3或以上记账人停止工作后,系统无法提供服务;

同样有1/3或以记账人作恶,可能会使系统出现分叉。


 

5

 pow+pos混合机制

工作量证明(pow)+ 权益证明混合制(pos)混合共识机制,是当前众多共识机制中较完美的一种方案,使用POW工作量证明铸造新币,用POS权益证明维护网络节点安全,是比较接近区块链去中心化方案。

我们在上期 “区块链技术的延伸与迭代,挑战比特币权威(八)” 讲到的达世币(Dash)就是采用工作量证明(pow)+ 权益证明(pos)混合共识机制,主节点就是pos负责向全网的客户端提供服务及参与社区治理,而pow只负责提供算力打包区块交易,并没有参与社区治理的资格,这样就可以避免像比特币pow工作量机制,算力过于集中引发攻击风险。有点分权而治的模式,相互制约对方。

“共识”永动机

以上提到的pow、pos、拜占庭等共识机制,虽然各自使用的机制不同,但目的都是追求在缩短时间、节省能耗、杜绝作弊、相互制约等前提基础下达成共识,建立一个更加去中心化、使用更便捷的系统应用。

区块链的核心是 “去中心化”,背后的技术只是用来搭建去中心化的使用工具(区块链技术不断新旧更替,只为更完美融合去中心化),分布式记账点对点p2p、pow工作量证明、时间戳及非对称加密算法等技术,就是用来维护去中心化系统的不可篡改、不可逆、公开透明、记录追踪可查,才使得系统可良性循环运转,持续制造信用的永动机。

PS:“《31小时,读懂区块链》学习成长计划!”  第一期,基础系列篇计划更新十三篇,目前还剩四篇稿子,原本微墨紫计划一个月完稿,但临近年末太忙,影响了进度,所以13号后停更,春节后在恢复发稿(时间另行说明)。相信在将近这一个月里,微友们对区块链技术已有一定的认知,要每次看完文章后多思考,也欢迎文末评论留言互动。

声明:欢迎原文转载 篡改原文法律追责



 微墨紫 
免责声明: 本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。 本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。 文中图片除非有标注外,均来源于网络。如若发现有侵犯您知识产权的作品,请与我们取得联系,我们会及时修改或删除。  转载稿件版权归原著作者所有,如有侵权,请及时联系。QQ:2056332302