近日,中国科学院软件研究所张振丰团队与美国新泽西理工学院唐强团队一起,在区块链核心技术拜占庭容错(BFT)一致性研究上取得重要突破,提出了全球首个完全实用的异步一致性算法“小飞象BFT算法”(简称小飞象BFT算法)。
为什么共识算法在以“去中心化”为特征的区块链技术中很重要?什么是「拜占庭容错共识算法」?「小飞象算法」有什么优点?
共识算法为什么重要?
“权力下放”是区块链的特点之一。在去中心化的系统中,没有“拍板”的角色,就像一个临时的旅行团。有些人想去东方,有些人想去西方。
“集权”与“分权”
再举一个更贴近生活的例子。在传统的金融系统中,A转账给B一笔钱,这笔钱会存储在银行数据库中。交易数据的真实性由银行等传统机构保证,以其记录为准。
然而,在比特币的“去中心化”区块链系统中,一些节点可能会记录从A到B的转账,而一些节点则不会。有这种转移吗?谁的记录为准?
显然,在上述两种情况下,整个系统通过适当的共识机制做出统一的决定是非常重要的。
所以在区块链的世界里,不同的节点最终通过预设的共识算法达到数据的一致性,这其实是一个普遍规律。只要大家都按照这个规则参与操作,结果就能得到别人的认可。
拜占庭容错共识算法和拜占庭有什么关系?
实际上,共识算法并不是无懈可击的。来自各方面的挑战往往影响共识的达成,其中最大的挑战就是“信任问题”。
1982年,图灵奖获得者莱斯利兰波特(Leslie Lamport)提出了这样一种可能使共识算法失效的假设情况,即“拜占庭一般问题”。
视频加载.
什么是「拜占庭普遍问题」?资料来源:中国科技银行
可以看出,拜占庭容错(Byzantine Fault Tolerance,BFT)共识算法是由拜占庭一般问题衍生而来的共识算法,其目的是解决在不可信环境下如何达成共识。
类似的故事在中国历史上更为常见,如战国时期的“联连横”:秦国势力日益强大,成为其他六国的共同威胁,于是六国“联合”,联手抵抗。与此同时,秦国还通过“连横”与六国结盟,目的是破坏六国之间的“联盟”,从而孤立各国,逐一分化。
在上述背景下,秦国和其他六国都面临着所谓的“拜占庭将军问题”,——。要联合作战,不让自己被消灭。当时古人往往以人质或婚姻的方式建立信任。在区块链的背景下,类似的问题可以通过“拜占庭容错共识算法”来解决。
因此,作为区块链的关键核心技术,“拜占庭容错一致性算法”是保证区块链安全可靠运行、提高区块链可扩展性和运行性能的核心算法。它具有运行性能高、资源消耗低、易于部署等特点,受到业界青睐,广泛应用于国内外区块链系统中。
「小飞象算法」有什么优点?
该研究成果的主要研究者张振丰研究员在接受采访时表示,如何设计高效的异步“拜占庭容错一致性算法”是密码学和分布式计算领域的著名问题。自20世纪80年代以来,许多国际知名学者,包括许多图灵奖获得者,都相继对这一问题进行了探索。蜜獾BFT在2016年提出的是第一个接近实用的异步共识算法,并已应用于区块链平台。
张振丰指出,为了设计出完全实用的异步一致性算法,2015年中科院软件所开展了“小飞象算法”的研究。该算法从独特的角度分析了“蜜獾算法”,揭示了其性能限制的根源是大量随机化子模块调用导致的运行时间增加,并提出了一种全新的可证明可靠的广播原语,通过密码学“证明”保证了事务广播的正确完成。给出了一种基于门限数字签名技术的高效构造方法。通过创新的多值拜占庭共识应用,将交易上的共识转化为“证明”上的共识,使Dumbo算法可以容忍1/3的恶意节点,突破异步共识算法的设计挑战。
目前,在四大洲100个共识节点的测试网络中,Dumbo算法的确认延迟时间为24秒,不到蜜獾算法的1/20,事务吞吐量接近每秒18000个事务,是蜜獾算法的9倍以上。
张振丰还表示,联合团队完成的“小飞象算法”的创造性突破,不仅解决了异步共识算法设计中的理论难题,而且性能大幅提升,完全超越了当前业界采用的“蜜獾算法”,成为全球首个完全实用的异步共识算法。该研究成果可为我国区块链基础设施建设提供具有强安全性、高性能和可扩展性的新一代核心技术。
来源:新华网思科综合
规划:刘娟
制片人:唐心怡
编辑:周
校对:王欣荣