迅雷链是国内最具代表性的主链,也是目前公认的性能最高、最有希望实现3.0的主链之一。它的技术架构上有很多特点,比如极其重视TPS,将其放在首位,又如采用了PBFT共识机制,而非常见的POW或者POS两大主流模式,还有在现有区块链架构外还增加了不少辅助系统,如标准解决方案和工具性方案。迅雷链为什么要如此设计?如此做的意义何在?最近,迅雷链技术沙龙第一站在北京举办,迅雷链开放平台研发负责人张慧勇在沙龙现场为广大区块链爱好者和开发者详细解读了迅雷链的设计哲学。
为什么优先关注TPS?
区块链的核心性能主要有3个方面,分别是TPS(Transaction per second)、秒级出块确认速度(达成共识时间)以及分叉概率。不同的主链在这三者上的侧重会有所不同,有些会优先考虑TPS,有些则会优先考虑出块速度,也有的比较重视分叉概率。
迅雷链在设计时将性能放在首位,同时具备高安全性,而兼顾去中心化,以此来实现来三者的平衡。为何会如此看中性能?因为迅雷一直将区块链视为互联网的基础服务之一,未来需要在不同场景中得到应用。应用场景的千变万化,尤其是大型商务场景对并发处理能力要求极高,如电商场景对TPS的需求就高达数十万次。考虑到未来日益增长的物联网需求,百万级的TPS可能也是不够的。
所以区块链要想真正实现落地应用,那么高TPS是核心前提之一。而迅雷链的初衷就是推动区块链技术在实体经济中的大量落地应用,这就决定了它必须具备足够高的TPS能力。为此迅雷链采用了同构多链结构,以此来实现高达百万级的TPS能力。
迅雷链的同链多构架构
为什么选择PBFT做共识?
迅雷链采用的共识机制是PBFT,这是一种在容错率上有突出优势的共识机制,央行推出的区块链数字票据交易平台用的就是优化后的PBFT算法。
相较于传统的POW、POS等共识机制,PBFT可以很好的解决分叉问题,同时提升效率,出块速度也能大为提升,各方面变现都更加完美。
迅雷链采用PBFT机制也是看中了这一点,其原因依然是考虑到实际落地应用中的需求。因为在实际商业场景中,是不可能接受回滚操作的,区块回滚对应到现实生活中,就是交易撤销、作废,这明显不符合用户正常的交易体验。此外,实际的商业应用,也不能接受区块链分叉。因此具有强一致性、不可分叉的PBFT机制就成了最好的选择。
PBFT结构示意图
而且PBFT机制在确认速度上也有优势,能做到秒级确认,这也是符合实际商业场景需求的。
唯一的问题是,PBFT要求恶意节点、无效节点的数量少于总节点的三分之一才能保证安全性,公式化表达就是F<=(n-1)/3,其中F是恶意节点数,n是总节点数。也就是说,这种机制对节点数量有较高要求,如果节点太少,就容易被操控。对此问题,迅雷链的解决办法是提供了150万+的节点数,通过海量的共享节点,保证了系统整体的可用性。
为什么增加外围辅助系统?
在开发过程中,迅雷链注意到当前很多传统企业,在接触区块链时碰到不少问题。这些企业有心使用区块链来进行改造,但技术门槛极高,相关人才稀缺,以及区块链行业对实体经济的忽视,种种因素汇总到一起,形成了传统企业使用区块链的重大阻碍,事实上,这也是目前区块链技术难以落地的一个重要原因。
为此迅雷链在架构中增加了大量的外围辅助系统,主要集中在迅雷链的服务层,比如合约标准和模板库、交易订单系统、迅雷链文件系统等,希望借此来降低传统企业使用区块链技术的门槛,推动区块链应用的开发普及。
这些外围辅助系统功能虽多,但在流程上秉承同样的设计思想,即希望企业是以自身成熟的流程来接入区块链系统,让区块链来适应商业,而不是让企业修改现有业务流程去适应区块链。在开发节奏上,也保持“先用再优化再变革”的步调,一步步实现整个流程的完美运作。
迅雷链一直相信,区块链不仅是技术上的改变,更是生产关系的改变,而主角是企业,作为底层主链,迅雷链希望为这些企业减轻使用新技术时的负担。
目前,随着迅雷链服务层的逐步丰富,开发生态的日益完善,已有越来越多的实业公司开始投入到区块链技术上,而且它们使用区块链的思路也越来越清晰,相信不需要太长的时间,大家就能在迅雷链上看到一大批实业类公司的区块链应用上线。