JUL:Facebook Libra采用的 HotStuff 算法 究竟是怎样一种尤物_SDT价格

链闻专访HotStuff论文第一作者尹茂帆。

Facebook近日公布的Libra白皮书引起各界持续关注,其网站公开的技术文档也被诸多专家审视。文档提到,Libra区块链将使用基于拜占庭容错共识的「LibraBFT」共识算法,而LibraBFT则是「HotStuff」的一个变种。

Libra区块链所采用的LibraBFT共识协议的技术论文

这个名为HotStuff的算法,究竟是怎样一种「尤物」呢?

顺藤摸瓜,我们发现,HotStuff算法论文由云计算公司VMWare的研究团队发表,其安全性及可用性已经过完整的数学证明。论文作者有5人,分别为MaofanYin、DahliaMalkhi、MichaelK.Reite、GuyGolanGueta、IttaiAbraham。

HotStuff算法论文

https://arxiv.org/pdf/1803.05069.pdf

其实「HotStuff」算法论文的第一作者尹茂帆是链闻的老朋友。今年仅仅25岁的尹茂帆本科毕业于上海交大,目前在美国康奈尔大学大学读博士学位,当前的主攻方向是分布式系统的基础研究,导师是著名计算机科学家EminGunSirer,另一导师是RobbertvanRenesse。尹茂帆也是另一个市场颇为瞩目的新项目AvaLabs的联合创始人和首席系统架构师。

在Facebook正式发布Libra白皮书之后,尹茂帆接受了链闻的专访,他为我们详解了HotStuff的奥妙。

首次进入分布式共识算法领域的人,很容易被一大堆名词绕晕。而深入钻研,你会发现这些名词背后有着各种各样的命名故事。比如DLS算法就是三位作者的缩写:Dwork、Lynch和Stockmeyer。而PBFT算法就是「实用拜占庭容错」的首字母缩写,BFT自然就是「拜占庭容错」了。那么,这个物种的新人HotStuff的名字到底怎么来的呢?

尹茂帆解释说,之所以取名为HotStuff,是因为这个单词在英文里有三重意思:一是性感的人,一是炙手可热的好东西,一是某个动画里的小恶魔的名字。大家都知道,以太坊下一代共识算法Casper之名,也是来自一个动画角色。所以,HotStuff可以和它相映成趣了。

在接受链闻采访时,尹茂帆灵机一动,把这个词的中文翻译为尤物。所以本文标题的尤物,可不是哗众取宠。尹茂帆说,尤物有两层意思,一是绝世美女,一是奇珍异宝。HotStuff翻译成尤物,简直天造地设。

据介绍,HotStuff已经在一个具有100多个副本的网络上进行过部署,超过了BFT-SMaRt的吞吐量,同时保持着与之相当的延迟,而在更为实际的测试中性能均超过后者。

和其他分布式系统的共识协议相比,HotStuff到底有哪些优点呢?以下是链闻记者和尹茂帆的问答:

链闻:关于分布式系统的共识协议,大致可分为两类,一类是以比特币为代表的区块链算法,一类是经典的BFT算法。两者在应用条件和性能方面,有哪些大的差异和优劣?

尹茂帆:两者的区别大致可以分为五个方面:1)成员信息;2)性能,包括吞吐量,延迟等;3)抗女巫攻击(Sybilattack)——中本聪共识自带抗女巫攻击,而经典的BFT需要额外的PoS或者PoW;4)可扩容性;5)安全性,即概率vs确定性。

中本聪共识的优点是,无需提前知道共识的所有参与者,不要求精确的成员信息。因为共识的一部分采用了PoW,所以天生就对女巫攻击具有一定免疫。而且,中本聪共识的算法十分简单,普通人稍具数学基础,就可以理解。中本聪共识也容易扩容,在10个结点和1000个结点上受到的性能损失较小

中本聪共识的缺点也很明显。因为PoW的难度和等待链长度跟安全性有关,从根本上说性能很差,交易确认延迟大也无法改变。现有的所有基于中本聪共识的「魔改」协议,其实只能增加吞吐量。而抛开延迟谈吞吐量,意义不大。好比我可以开一个卡车运一车硬盘来运送数据,虽然是超高吞吐量,但也是超高延迟。

在安全性方面,和传统BFT共识相比,中本聪共识只提供概率的安全保证,而BFT则是100%安全。这里说的安全,或者称为一致性,就是能否避免双花。其实,比特币出六个块能发生双花的概率并不像大家想的那么低,有高达13%的概率出现共识失败(即BFT中的30%节点的情况)。以此来看,如果要公平比较的话,中本聪共识的效率非常之低。

再来看经典BFT共识,其前提或者说缺点是,需要知道所有参与者,要求100%精确的成员信息。另外,经典BFT共识相对较难扩容。在HotStuff前,大部分经典BFT都需要所有结点广播,这带来了平方级别的复杂度。增加大量结点会导致网络拥塞。而且,其中的Leader结点会承受整个网络的负载,导致难以扩容到成千上万个结点而没有太大性能损失。

BFT共识的优点则在于,因为共识没有使用无意义的PoW,所以,经典BFT共识的协议速度跟网络发送大量短消息的速度相关,没有中本聪共识那种额外的能源消耗和等待时间。交易延迟非常小,如果不考虑网络延迟,交易在数十至数百毫秒级别,如果考虑网络延迟,就跟网络延迟同数量级。

链闻:你们论文在开篇声称,HotStuff基于一个新的框架,这个框架在经典BFT基础和区块链之间搭建了一座桥梁。如何理解这句话?

尹茂帆:我们的论文名为《尤物协议:透过区块链看拜占庭容错共识》。

之所以这么描述,是因为它的算法框架采用了树/链式结构,十分类似区块链。另外,和传统区块链类似,一个结点当前也有被视作「主链」的一根链,投票只会投给当前认为主链上扩展的新部分。和区块链一样,如果侧链足够「好」,那么它就会变成新的主链。在区块链里面,这个是通过链长度来判定的,而在HotStuff中,它通过最近一次成功获得大部分投票的块决定。

另一方面,HotStuff又是传统BFT体系下的一员。用此算法框架可以很好地解释PBFT、DLS、Tendermint、Casper等协议,达到了一定程度上的归纳和统一。另外,跟之前同类型算法最大区别也是最大贡献的地方是——HotStuff的核心换届算法没有特殊情况;不像PBFT那样有「正常」的执行流程以及「特殊」的换届流程,HotStuff统一了两者,即没有显式的换届特殊处理,也可以认为是潜在地处处换届。这使得编写一个基于HotStuff的共识系统的基础安全部分十分容易。对比PBFT的数千行换届代码,HotStuff只需要几十或百余行即可。

另一个它较同类型算法更优异的特点是,它对工程师们十分友好。它将保证正确性和保证性能的逻辑从算法层面上就进行了解耦合。一旦安全性保证的几十行代码完成,剩下的根据具体应用场景的优化都不会再触及这部分,使得系统始终安全。

链闻:PBFT算法可以在互联网等异步环境中运行,一些优化也使它较以前的共识算法更快。但它也有一些问题,比如检测不良主要节点和重新选择新主要节点的过程非常低效。比如为了达成共识,PBFT需要平方级别的消息交换,这意味着每台计算机都必须与网络中其他所有计算机进行通信。总之,PBFT的扩容性显然不够。HotStuff对这些问题有哪些解决方案?

尹茂帆:首先,HotStuff将换届的代价首次从平方级降低至线性复杂度,这意味着它和Paxos/Raft这些在IT行业广泛使用的非BFT协议一样,拥有一致的复杂度。另外,虽然理论上Tendermint等协议可以通过结合数字签名来降低到同样复杂度,但是,这些协议本质上需要在块与块间等待最大的可能网络延迟,使得实际实现出来的系统变成了一个同步系统。而HotStuff思路跳出了原有的框架,提出了一个极简的算法体系,使得它可以很容易地打破这个传统BFT的魔咒。经过测试,它可以在保证简单代码实现、低理论复杂度的情况下打败现有的最快的传统BFT实现,在商用系统方面具有无限潜力。

链闻:Facebook的Libra白皮书提出,Libra区块链是从“许可型区块链”起步的,未来目标是成为非许可型网络。由许可型转向非许可型,目前有可行的技术路径吗?难点在于扩容还是在于能否抗女巫攻击?

尹茂帆:理论上来说,任何许可协议都可以转化成非许可型协议。因为传统的共识协议,都可以通过共识本身来重新配置以增加/删除结点。但是因为潜在的女巫攻击,这种基于精确成员信息的协议,需要额外依赖一个PoS或者PoW的进入机制来开放系统。

HotStuff共识的其他实施

除了Facebook,其他一些区块链项目也已经决定使用HotStuff共识。其中一个是公链项目Cypherium。有趣的是,Cypherium项目声称可以实现非许可型的扩展——如果这个尝试成真,意味着这可以为Facebook提出的转型路线图,提供了一种解决方案。

Cypherium首席执行官SkyGuo接受链闻采访中解释了这里面的要点:

他说,与Libra未来计划转型为PoS不同的是,Cypherium的主网将设计成PoWHotStuff的混合共识机制。

通常来讲,区块链共识分为两个过程:选举领导者、打包与验证区块。传统项目里这两个过程由同一种共识机制实现。而Cypherium在第一个过程中选用了PoW共识,用于选择领导者节点。任何计算设备均可以通过挖矿的方式成为Cypherium的验证节点而不依赖于受信任的第三方。每当有矿工成功挖到PoW时,验证委员会当中时间最老的节点离开委员会,新的矿工成为验证委员,实现永久性的动态轮换。而第二个过程,则选用了效率较高的HotStuff共识来打包和验证区块。相应地,Cypherium设计了选举链交易链的双链架构。SkyGuo声称,Cypherium共识CypherBFT可以做到完全去中心化、交易顺时最终确认、支持亿级用户的应用场景。

封面图片来自:JoannaNowak

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

[0:0ms0-3:409ms