服务项目

需求沟通

区块链开发如何实现共识机制

区块链之间的一个根本差异就是如何在有缺陷和不诚实行为的网络中保证容错。使用 PoW 这种传统的实现方法可以保证容错,只要网络中的大部分计算力都是诚实的。然而,因为这种方案对于计算的依赖,使得其效率非常低(计算力耗费能源并且对硬件有一定要求)。这使得 PoW 网络受到很多限制,最主要的就是扩展成本。



DBFT 在 NEO 中的实现利用了一些类似 PoS 的特点(NEO 持有者投票产生共识节点),这能保护网络不受拜占庭错误干扰并将消耗的资源最小化,同时也能去其糟粕(指 PoS 实现中的问题,译者注)。这个方案在没有对容错机制造成显著影响的情况下,妥善处理了当下区块链实现中性能与扩展之间的问题。  拜占庭将军问题是分布式计算中的一个经典问题。这个问题中定义多个议员必须在发言人的命令下达成共识,在整个系统中,发言人或某些议员可能会是叛徒,因此我们要小心行事。最糟糕的情况下,非诚实节点可能会向每个接收者发送不同的信息。该问题的解决办法要求议员们组团鉴定发言人是否诚实并且鉴别出真实的命令。  

为了说明 DBFT 的工作机制,我们将在本部分着重论述为何要在第五部分用 66.6% 的共识率。要记住,非诚实节点并不总是会做出恶意行为,它也可能只是简单地失效了而已。  

为了便于讨论,我们设想一些场景,在这些简单的例子中,我们假定每个节点都按照发言人的信息发送响应。这种机制也被用在 DBFT 中,并在系统中严格执行。


1 - 术语 

权益证明机制 PoS - 一种使用网络共识来处理容错的算法,工作量证明机制 PoW- 一种使用计算力来处理容错的算法 

拜占庭错误 BF - 节点可用,但由于其行为不可靠造成的失败,改进的拜占庭容错机制 DBFT - 在 NEO 区块链内部实现的保证容错的共识算法。


2 - 角色 

在 NEO 共识算法中,共识节点由 NEO 持有者选出并对交易合法性进行投票,同时它们也被称作“账本”。但在下文中,它们将被统称为共识节点。共识节点 - 参与共识行为的节点。在共识行为中,共识节点轮流扮演以下两个角色: 发言人(一个)- 发言人负责向系统发送区块提案。 议员(多个) - 议员负责达成交易共识。


楚一科技致力于提供咨询服务、软件研发、系统集成、互联网增值服务。可以为您提供最完美的软件开发解决方案!

联系方式:13100699922

www.whcykj.cn       

www.whcykj.com.cn

关注“楚一科技”公众号了解更多精彩资讯




文章评论:

专业的软件开发/系统开发、品牌设计/网站建设,就选楚一科技!

选择专业的企业服务公司,服务更靠谱!

点击立即咨询>
底部客服