火币开发团队新算法能解决金融公链的性能问题

热点新闻 货币小鹏鹏 177 浏览
  Overlord是火币开发团队最近开发的独特的协商算法,该协商算法作为基于HuobiChain的金融应用程序方案要求而出现。
 
  为什么要单独设计新的区块链共识算法?传统的主流BFT共识算法(PBFT、Tendermint、Hotstuff…).与相比有什么区别?现在,让我们与muta团队的主裁谈谈Overlord的设计理念和设计特点。
 
  目前,在信息激增的时代,我们时刻被过多的信息包围,很难客观准确地探索未知事物的本质。但是我们一直坚信优秀的产品来自创造性思维,也无法摆脱自己铸造的天花板。所以我们决定屏蔽所有现有的成熟程序例程,从最原始的需求开始,将我们的愿景变成一个整体。
 
  第一次设计HuobiChain的共识时,我们不是立刻着手选择技术,而是灵魂3问题:HuobiChain的服务对象是谁?需要解决哪些问题?能创造什么样的社会价值?与此同时,我们积极接受金融、经营等领域专家的建议,密切跟踪市场的实际需求,仔细倾听社区的意见,与多个团队进行了无数次密切的交流,最后在2019年6月作出分阶段的结论。
 
  HuobiChain目前考虑到金融市场和块链技术应用的相对分离,在块链的基础上定位高效的全球金融市场基础架构。“高效”相当于高速突发链交易。全球化相当于基本的链友好兼容性和高度的可扩展性。“基础架构”是指应用程序开发的标准化和简化,并能丰富未来的开发人员生态系统。用这样简单而简单的一句话,在下层链条上提出了可靠的硬指标。
 
  协议是一条链的心脏,心脏要有效健壮,链条的应用才会活跃起来。为了实现火焰链的目标,需要支持数百个一致性节点,每秒满足数千个事务处理能力,并且事务延迟不超过几秒钟的BFT一致性算法。
 
区块链新算法
  我们调查了市场上所有主要的BFT共识算法,包括pBFT、Tendermint和hotstuff。不幸的是,这些共识算法不能满足我们的需求。
 
  PBFT是第一个出现的实用性拜占庭容错共识,最大的问题是视图更改会导致o(n3)的消息复杂性过高。
 
  Tendermint是2017年推出的一致性算法,采用锁定-解锁机制作为核心,可简化Leader过渡过程。但是,该算法会失去响应时间。换句话说,即使在良好的网络条件下,也需要固定的块时间。另一方面,这种算法Viewchange已经简化,复杂性降低到o(n2),但我们对更高一致性效率的需求仍然无法满足。
 
  Hotstuff于2019年通过Libra进入大众视角,显着提高了消息的复杂性和响应能力,但交易确认至少需要3个数据块,因此无法满足特定环境中特定业务和方案的需求。
 
  面对困难的情况,我们决定面对困难,创造新的协议算法,因此产生了沉重的负荷。该算法完成了设计和开发的第一步,初始工程实施在GitHub中开放,现在支持数百个一致性节点,每秒可处理数千个事务,如果事务延迟少于几秒钟,则无法回滚事务链。那么,Overlord是如何满足这些需求的呢?
 
  重载创新
 
  引入聚合签名机制以降低消息复杂性
 
  首先,Overlord引入了一种共识签名机制,该机制将共识投票消息的每一个回合发送给Leader,由Leader签名,然后将分散的消息汇集在一起,广播到其他节点。此设置可以将消息复杂性从O(n2)降低到O(n),从而支持数百个一致性节点。
 
  利用“超时制动”机制解决领导者的恶行,加快协议进程,减少项目实现的困难
 
  与此同时,Overlord为了解决Leader的恶行问题,使用了“超时制动”机制,大大加快了协议过程,减少了项目实现的困难。与此同时,消息数量大大减少,消息协议(投票等)占带宽的比例也有所下降,从而进一步提高了协议效率。
 
  区块和投票并行,处理速度更快,交易处理能力更强
 
  与此同时,Overlord实现了并行处理块和投票。这意味着块验证(包括协议事务处理的同步)可以与主要投票流程并行进行,这意味着块比其他协议算法快,事务处理能力也更强。
 
  解耦状态排序和事务一致性使块的一致性过程和执行过程能够并行进行
 
  Overlord最重要的创新之一是,您可以将状态排序和事务一致性分开,从而使块的一致性进程和执行进程并行。Overlord的一致效率大大提高,因为与等待执行结果再次达成一致相比,带宽的空闲等待时间大大减少。在此设置中,块中的链已提交,无法回滚事务。这对于大量交易或有复杂合同的金融业务方案将大有帮助。
 
  我们坚信Overlord将成为下一代通用协议解决方案。
声明:本文为文章转发相关内容所得,不代表任何群体或者个人立场,不构成任何投资意见或建议。