链闻专访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的联合创始人和首席系统架构师。
Dora Factory已完成两轮Rococo测试:官方消息,DAO-as-a-Service基础设施Dora Factory波卡工厂平行链已完成两轮Rococo测试,包括基础平行链功能和HRMP跨链资产转账。Dora Factory Kusama平行链将于5月19日 - 29日之间启动并开始出块。[2022/5/8 2:58:36]
在Facebook正式发布Libra白皮书之后,尹茂帆接受了链闻的专访,他为我们详解了HotStuff的奥妙。
首次进入分布式共识算法领域的人,很容易被一大堆名词绕晕。而深入钻研,你会发现这些名词背后有着各种各样的命名故事。比如DLS算法就是三位作者的缩写:Dwork、Lynch和Stockmeyer。而PBFT算法就是「实用拜占庭容错」的首字母缩写,BFT自然就是「拜占庭容错」了。那么,这个物种的新人HotStuff的名字到底怎么来的呢?
尹茂帆解释说,之所以取名为HotStuff,是因为这个单词在英文里有三重意思:一是性感的人,一是炙手可热的好东西,一是某个动画里的小恶魔的名字。大家都知道,以太坊下一代共识算法Casper之名,也是来自一个动画角色。所以,HotStuff可以和它相映成趣了。
外媒:Facebook元宇宙将支持NFT:根据Facebook Connect 2021大会的演示文稿,该公司的元宇宙(metaverse)或将支持NFT。Facebook元宇宙产品负责人Vishal Shah表示:“这将使人们更容易销售NFT等限量版数字物体,在他们的数字空间中展示它们,甚至将它们安全地转售给下一个人。”(Coindesk)[2021/10/29 21:06:40]
在接受链闻采访时,尹茂帆灵机一动,把这个词的中文翻译为尤物。所以本文标题的尤物,可不是哗众取宠。尹茂帆说,尤物有两层意思,一是绝世美女,一是奇珍异宝。HotStuff翻译成尤物,简直天造地设。
据介绍,HotStuff已经在一个具有100多个副本的网络上进行过部署,超过了BFT-SMaRt的吞吐量,同时保持着与之相当的延迟,而在更为实际的测试中性能均超过后者。
和其他分布式系统的共识协议相比,HotStuff到底有哪些优点呢?以下是链闻记者和尹茂帆的问答:
链闻:关于分布式系统的共识协议,大致可分为两类,一类是以比特币为代表的区块链算法,一类是经典的BFT算法。两者在应用条件和性能方面,有哪些大的差异和优劣?
Celo任命前Facebook和前美国银行高管为董事会成员:金色财经报道,区块链支付初创公司Celo任命前Facebook执行官Morgan Beller和前美国银行高管Jai Ramaswamy加入其董事会。据悉,Beller此前是Calibra的前战略主管。Calibra是Facebook的子公司,旨在为其加密货币项目Libra(后来的Diem)开发钱包。钱包项目随后更名为Novi。[2021/10/12 20:21:35]
尹茂帆:两者的区别大致可以分为五个方面:1)成员信息;2)性能,包括吞吐量,延迟等;3)抗女巫攻击(Sybilattack)——中本聪共识自带抗女巫攻击,而经典的BFT需要额外的PoS或者PoW;4)可扩容性;5)安全性,即概率vs确定性。
中本聪共识的优点是,无需提前知道共识的所有参与者,不要求精确的成员信息。因为共识的一部分采用了PoW,所以天生就对女巫攻击具有一定免疫。而且,中本聪共识的算法十分简单,普通人稍具数学基础,就可以理解。中本聪共识也容易扩容,在10个结点和1000个结点上受到的性能损失较小
中本聪共识的缺点也很明显。因为PoW的难度和等待链长度跟安全性有关,从根本上说性能很差,交易确认延迟大也无法改变。现有的所有基于中本聪共识的「魔改」协议,其实只能增加吞吐量。而抛开延迟谈吞吐量,意义不大。好比我可以开一个卡车运一车硬盘来运送数据,虽然是超高吞吐量,但也是超高延迟。
动态 | 发布加密内容遭拒Twitter用户怀疑Facebook已再次审查和封禁加密内容:Twitter用户Elijaboom发布推文称,其在推特上发布一个比特币网站链接给公司同事时遭拒,并受到发送失败警告信息称其发布内容违反社区准则。对此,其怀疑Facebook已再次审查和封禁加密内容。而在早前2018年6月,Facebook已宣布取消加密禁令。目前尚不清楚Facebook是否已再次更改了其加密内容相关规定。(Bitcoinist)[2020/1/31]
在安全性方面,和传统BFT共识相比,中本聪共识只提供概率的安全保证,而BFT则是100%安全。这里说的安全,或者称为一致性,就是能否避免双花。其实,比特币出六个块能发生双花的概率并不像大家想的那么低,有高达13%的概率出现共识失败(即BFT中的30%节点的情况)。以此来看,如果要公平比较的话,中本聪共识的效率非常之低。
再来看经典BFT共识,其前提或者说缺点是,需要知道所有参与者,要求100%精确的成员信息。另外,经典BFT共识相对较难扩容。在HotStuff前,大部分经典BFT都需要所有结点广播,这带来了平方级别的复杂度。增加大量结点会导致网络拥塞。而且,其中的Leader结点会承受整个网络的负载,导致难以扩容到成千上万个结点而没有太大性能损失。
动态 | Facebook正招聘区块链公共政策经理:据Dailyhodl报道,社交媒体巨头Facebook正在招聘一位区块链的公共政策经理,将负责领导全球公共政策团队的政策制定。理想的候选人应拥有区块链、数据保护、数字身份、数字货币和相关政策问题的专业知识,以及从事技术政策问题的经验。[2018/8/29]
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
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。