【区块链早餐会第二十期】从区块链发展历史看共识算法与跨链通信

转载
2340 天前
18203
区块链早餐会

区块链早餐会:由金融科技大佬易欢欢、中关村区块链产业联盟理事长元道、北大金融校友会副会长宋宇海、火币首席战略官蔡凯龙、Cyber Capital 合伙人武绍卿、DFUND合伙人李泉、LITEX创始人王硕斌联合发起,由“绿色区块链社群”主办,聚集了区块链、互联网、金融科技等领域的行业精英、投资人、媒体人及近两百家上市公司董事长及CEO,共同探讨区块链如何服务国家战略和实体经济,推动区块链行业升级换挡,让更多有影响力的企业和更大规模的长效资金进入到行业中来。

本期嘉宾:刘文思,北京大学计算机硕士,区块链公链项目Seele(元一)研发负责人,10多年核心技术开发经验,曾就职于微软、新浪、百度,百度早期创始人之一。曾发表密码学SCI论文《A hybrid heuristic algorithm to improve known-plaintext attack on Fourier plane encryption》,是所在实验室10年来发表的最高影响力学术成果,获得信息科学技术学院的特别嘉奖。

对于区块链的发展历史,行业有一个获得广泛认同的划分:区块链1.0,2.0,3.0。对于每一代的区块链,都有一个或多个典型产品或应用来代表。

比特币是区块链1.0当之无愧的代表,它的典型特征是点对点的简单交易,也就是帐户A向帐户B的转帐操作。

以太坊是区块链2.0的代表,智能合约是其主要特征。正是因为引入了智能合约技术,使得以太坊的可编程能力大大提高,丰富和扩宽了其应用领域和范围。

区块链3.0,应该说是一个百家争鸣、百花齐放的时代。EOS,Cosmos,IoTA, Neo等是其典型代表,它们在共识算法,跨链通信,治理机制等多方面寻求创新,以期在功能和性能指标上取得突破,向更广泛和更纵深的应用领域拓展,以真正实现价值互联网的宏伟目标。

区块链1.0,2.0,3.0,严格来说都是属于公链的范畴。从另外一个维度,也即对组成节点的加入限制这个角度来看,区块链可以分为三类:公链,联盟链和私链。

公链,对所有参与者都是开放的,任何人和机构都可以参与;联盟链,需要经过授权才能访问和使用;私有链,对特定的个人或实体开放。

相比公链来说,联盟链的应用范围主要是各种行业应用,比如电子政务+区块链,医疗+区块链,通过区块链技术把各相关部门和机构的数据上链,可信共享和交换。现在的各种BaaS(Blockchain as a Service)平台也可以归属于联盟链的范畴。

现在市面上的区块链平台和产品种类繁多,其白皮书也不断涌现出新的思想、概念、算法和技术。对于大部分的区块链产品,共识算法是其核心特征,各个不同区块链产品的差异很大程度上也是体现在共识算法上的差异。除了共识算法,跨链通信也是一个区块链产品的重要技术特征。

区块链为什么需要共识算法?刘文思表示,区块链本质是一个分布式的系统,组成区块链的各个节点分布在全球各个地方,但同时各个节点之间也需要协调同步完成一些工作,或者达到一个一致的状态和意见,而在区块链系统中又没有一个中心化的机构来统一管理,因此就需要各个节点遵守一定的规则,而把这种规则用计算机的规则和语言编写出来,就是共识算法。

现实生活中的石头剪刀布游戏,实际上就是一种共识规则和算法。比如有3个人,大家在同一时间猜拳来决定谁胜出。可以把这3个人想象成3台电脑,每台电脑上运行相同的石头剪刀布游戏程序。游戏开始后,每台电脑把各自的计算结果(石头/剪刀/布)告知另外2台电脑。每台电脑将自身的结果与接收到的其它2台电脑的结果进行对比,就可以知道输赢或平手了。

对于共识算法,大体上可以分为:算力型,权益型、代表型和混合型。大家熟知的PoW就是算力型的代表,从字面意思上也可以看出,谁的计算能力强,谁胜出。胜出在区块链世界中就是掌握打包出块的权力,也就是决定哪些交易可以被固定到链上以至被最终确认。

权益型共识算法的典型代表就是PoS,就是网络中的各个节点,拥有的帐户余额,也就是存款越多的节点,其胜出的概率越大。

代表型共识算法,是选举出单个或少数节点,在某个时间段行使统一管理的权限。这样做有二个方面的原因和考虑:1.沟通和通信开销。从石头剪刀布游戏的例子中可以看出,各个节点(电脑)分散在不同的地方,每个节点都需要把自己的结果向其它所有节点广播,随着节点数量的增大,这个通信上开销是相当大的;2. 冲突问题,如果有2台或更多台电脑都得到相同的结果,这个时候要么根据某种规则进行协商,要么重新开始,直到决出胜负。

降低通信开销和减少冲突,带来的一个明显好处就是系统总体处理能力的上升,也就是单位时间内可以有效处理的交易量就增加了。当然,这其中也会带来一些安全上的问题。

DPoS,这个D就是代表的意思,EOS首先提出并采用的共识算法,就是属于代表型共识算法。前段时间轰轰烈烈的EOS全球超级节点竞选,就是选择有资格运行DPoS算法的节点。而Bitcoin-NG共识算法,可以看成是DPoW, 也就是通过PoW算法,定期选出某个节点来执行一段时间范围内的打包出块功能。

混合型的共识算法,则是综合各种共识算法,充分利用和发挥各自的优点。比如著名的Algorand算法,首先利用密码学中的VRF(可验证随机函数),从大规模的节点中选择出少量的节点,然后由这些节点来运行拜占庭共识算法(传统分布式计算领域的经典共识算法),同时通过利用PoS的思想来防范女巫攻击。

在区块链系统中,除了共识算法,另外一个重要的技术就是跨链通信,也就是将资产从一条链转移到另外一条链,或者实现二个链上的资产互换。跨链通信包括同构链之间的跨链和在异构链之间的跨链。

以用户在银行间的转帐为例,比如招行的用户1往建行的用户2进行转账,这就相当于区块链世界的跨链通信。由于在区块链世界中,没有银联和统一清结算中心等机构的存在,跨链通信相比跨行转账在实现上就会遇到更多的困难和挑战,特别是在拥有不同共识算法和治理机制的异构链之间的跨链通信。

绿色区块链社群:聚集了业内数千名从业者及专家顾问。率先提出“绿色区块链”理念,推动与实践绿色区块链、产业区块链,落实绿色经济、绿色金融、绿色信用体系。绿色区块链相比以挖矿为代表的传统高能耗区块链,倡导和实践绿色环保理念,是全球第一个贡献绿色资产的区块链生态系统。