25万TPS蓝图,是吹牛还是实力?

扩展性一直以来都是区块链领域亟待解决的性能瓶颈——以太坊六年间先后提出超十种链上链下扩容路线,却迟迟未能实现;号称百万TPS的EOS发布至今,测试网络的交易处理速度才勉强到达万级水平;而上线约20个月的闪电网络不仅最大节点入不敷出,最近还遭遇漏洞危机……


当前主流区块链网络的TPS对照图

为了提高网络的交易处理速度,很多项目都曾经或者正在尝试解决扩容性问题,Hashgraph也不例外。这个即将在今日开启主网公测并于OKEx等主流交易所上线的项目宣称,其测试网络能够表现出超25万TPS的硬实力。

25万TPS蓝图靠的是什么

25万TPS意味着什么,2017年天猫双11的交易峰值。虽然这个测试网络的数据目前依旧存疑,但Lone Star Data Technologies的Sam Ulrich告诉哈希派他们已经在Hashgraph上对其DApp进行测试,并表示,“如果将以太坊网络比作Model T的话,那Hashgraph应该就是2019的法拉利了”。

与IOTA相似,为了实现这种企业级的吞吐量,Hashgraph采用了一种非链式的底层数据结构。但不同的是,Hashgraph用于存储「事件」(Event,包含交易信息的数据)的数据层更为规整,并通过aBFT共识算法来保证所有人对整个账本达成共识。


区块链、Tangle结构、Hashgraph以及侧链的数据结构比较

币圈内懂点技术的人应该都知道,区块链网络内常用一种名为八卦协议的算法以实现节点间的信息同步问题;而Hashgraph的核心通信技术则是一种「八卦之再八卦协议」。形象来说,当Bob随机找到Alice的八卦(包含新交易信息的数据)时,前者会将自己当前所知道的一切都原原本本的告诉Alice;然后Alice这里会出现一个被Bob加上时间戳以及签名的新事件(红点)。这个新事件里面除了有新交易事务之外,还包含两个指向父事件的哈希值,一个是Alice自己生成最新事件(深蓝),另一个是则是Alice从Bob上接收到的最新事件(天蓝)。然后这些信息就会像八卦一样,在整个网络内迅速两两传开,直至所有节点都获得相同的信息。不过值得关注的是,这种方法只能保证在最终某个时刻内,所有节点一直对某个时间点前所有的历史达成一致。


鉴于每个参与者都有一条自己的数据链,同时链上的每个事件都引用了别的参与者的链上事件信息,Hashgraph使用了一种「见证即投票」的虚拟投票机制对交易历史进行排序。所谓虚拟投票指的是,对某一事件达成共识的时候不需要大规模的消息通信,每个节点可根据自己的完整网络历史独立执行投票算法,并且所有节点都能得出相同的共识结果。简单来说,Hashgraph共识算法的逻辑就是,假设绝大多数参与者都是好人,那么当交易被足够多人(三分之二以上的比例)见证以后,就可以沉淀为无法改变的共识。

相较于传统的BTF算法,Hashgraph最大的优势在于,N个网络参与者只需要每人发送log(N)条信息便能完成一轮投票;而同样的操作在普通BFT算法内,则需要发送N-1条信息才能完成。如果从这一角度出发,Hashgraph的通信确实比传统拜占庭容错算法更为节约,从而实现更为高速的网络处理速度。

没有十全十美,总得有牺牲

不过根据区块链不可能三角理论,系统必然会以部分的牺牲为代价换取另一项指标的提升;而这种矛盾在Hashgraph内亦同样存在。


虽说从传送信息的条数出发,Hashgraph的通信比传统BFT更少;但目前仍未有资料明确说明Hashgraph信息传输过程中,Alice究竟需要给Bob传递多少信息。按照2016年Baird关于哈希图论文的说法,“… Alice will choose another member at random,such as Bob, and then Alice will tell Bob all of the information she knows so far”,Alice似乎要将自己以往所有知道的信息都告诉Bob。而即便无需将整个账本的历史都放到该条信息内,每次通信只需同步新八卦,那么每条信息的长度依然会达到参与者人数的线性量级。所以从某种意义上来说,Hashgraph与传统BFT之间,只是少量多次与少次多量的区别。


注:Hedera Hashgraph在其白皮书上写道,其网络即使不分片也可达到近 50 万TPS的水平。如果每笔交易按照 250 字节计算,仅仅是同步交易就需要 500000×250=125000000B/s=125MB/s。

抛开这个不确定因素不说,单是数十万TPS带来的宽带就不是普通节点所能轻松支持的。以现在典型的机器配置为例,单核CPU每秒钟也就能验证几千笔交易的签名,而EOS超级节点在峰值时处理的交易数量也不过每秒四千笔左右。也就是说,即便Hashgraph有数十万交易每秒的流量,也只有银行级或者说企业级的硬件才能支撑其运行;而有趣的是,当前Hashgraph的共识网络确实如联盟链般存在。

从今年2月至今,Hashgraph已经先后公布了包括IBM、德国电信Deutsche Telekom、巴⻄电商平台Magazine Luiza等等在内的 39 个理事会成员;并表示主网启动初期将由理事会负责运行节点,以确保网络稳定。虽说主网上线之后,Hashgraph会逐渐开放网络的准入,让任何人都能参与网络的运行;但就如上面所说,对于普通节点运行者来说,处理账本上的数据、维护八卦图以及虚拟投票机制就不是一笔小的开销。况且按照Hashgraph目前的说法,节点运行者似乎不会因为运行节点而获得奖励。


注:Hedera Hashgraph团队在接受采访时表示,理事会成员不会因为他们为系统付出努力而获得奖励;但他们得到了指导网络发展未来的能力。

联盟链or公链?

超高交易处理速度、大公司节点运营、开源但不是全开放式协议……从目前哈希图的结构组成以及发展规模来看,Hashgraph和以太坊还有EOS这些公链似乎不在一个赛道上;他的表现更像是对标商业领域的企业联盟链。

虽然Sam Ulrich在接受采访时也表示,Hashgraph不是为大公司而专门建立的技术,只是因为它们对于网络规模的考虑让其受到企业的青睐而已;但单单是Hashgraph技术已被Swirds公司申请专利这一点,或许就会让不少普通开发者望而却步。直白点说,被不少人认为是第三代分布式账本技术的Hashgraph,如果未来未能吸引普通节点运行者以及DApp开发者的参与,公链发展之路将流于空谈,并在长时间内以联盟链的形式存在。