当前位置:首页 > 知识 >

共识算法中的独特存在:BFT类和结合可信环境的算法

本文为市场信息传递,不构成任何投资建议。阐述的观点为作者个人观点,不代表官方立场。本文选自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属原作者所有。如有侵权,请立即与我们联系,我们将及时处理。

本文主题为区块链与密码学全民课堂第2-6讲:区块链基础技术大剖析之共识算法(二)。本节讲解BFT类算法,这种算法的思路是希望所有节点协同工作,通过协商的方式来产生能被所有节点认可的区块。

拜占庭容错问题最早由学者Lamport et al.于1982年在论文《The Byzantine Generals Problem》中正式提出,主要描述分布式网络节点通信的容错问题。从20世纪80年代起,提出了很多解决该问题的算法,这类算法被统称为BFT算法。其中最经典的算法是PBFT算法,由Castro和Liskov于1999年提出。PBFT算法容错率具有竞争力,能够实际应用于分布式系统中。

BFT类算法一般有完备的安全性证明,能在算法流程上保证在节点数目不超过三分之一时,诚实节点的账本保持一致。然而,这类算法的协商轮次也很多,协商的通信开销也比较大,导致这类算法普遍不适用于节点数目较大的系统。目前BFT算法被广泛用于以PoS为基础的共识算法组合中,代表基础设施有以太坊2.0、PlatON等。

此外,本文还讲解了可信计算的发展,其中最核心的就是TPM硬件芯片。而随着可信计算的发展,可信平台模块不一定再是硬件芯片的形式,也可以是基于ARMTrustZone、智能卡等实现可信执行环境的方式。利用可信执行环境,可以对区块链系统中参与共识的节点进行限制,很大程度上可以消除恶意节点的不规范或恶意操作,从而能够减少共识算法在设计时需要考虑的异常场景,一般来说能够大幅提升共识算法的性能。

本文知识点讲解到此结束,下一节我们将继续解析区块链基础技术,将介绍区块链的颠覆性技术——智能合约

猜你喜欢

微信二维码

微信