我们今天来讨论下,最为广泛使用区块链技术应用的代表——比特币和以太坊了,YIi-Huomo等人的研究成果可以用作检验区块链技术的重要参考。
其中总结了近期区块链技术的进展,并指出了区块链系统固有的局限性。虽然他们的研究完全集中在讨论比特币的文献上,但这一发现在我们的讨论中也同样适用, 其中一些关键指标来自于Swan。
研究指出了现今区块链系统的七大局限性:
- Throughput交易吞吐量
-Latency延迟
-Size and Bandwidth大小和带宽
-Security 安全性
-Usability可用性
-Wasted Resources浪费资源
-Versioning, Hard Forks, and Multiple Chains版本控制、硬分叉和多链
Throughput交易吞吐量
典型的区块链(如比特币)需要10分钟或更长的时间来确认交易,平均交易速率约为每秒4个交易,最高可达每秒7个交易。以太坊每秒可以处理10个或更多交易,确认时间也比在比特币网络上快10倍。
然而对比VISA交易网络,就能青楚看出当前区块链交易吞吐量的局限性,VISA 可在几秒钟内确认交易,平均每秒处理2000个交易,每秒交易量最高可达65000个。
从这些指标可以看出,与传统的中心化支付网络(如VISA)相比当今使用最多的区块链网络的交易吞吐量也还存在着很大的差距。限制区块链网络交易吞吐量的主要因素是节点间的延迟。
人们虽然已经做出一些积极的尝试,并试图解决这个问题,比如比特币所采用的闪电网络,以及已经作为一个微版本在以太坊区块链上运行的雷电网络等,但就一个可行的长期解决方案各方还没有达成共识。
Latency延迟
如上所述,因为网络的最大交易吞吐量受到节点间延迟的限制,延迟也就成为了区块链的限制因素。如果节点之间存在较高的延迟,矿工则更有可能是在旧块上进行采矿。
在比特币网络上,一个块同步到50%的节点的平均时间不到2秒,同步到90%的节点大约需要13秒(截至2017年4月)。而在以太坊上,同步到50%的节点的平均时间小于1秒,同步到90%的节点大约在10秒内。
对于比特币来说,出块时间与网络同步时间的比值很大,说明节点间的延迟尚不构成一个大的限制因素,而以太坊的出块间隔时间较短,在同步上耗费过多时间就会更有问题。
不过以太坊采用了基于GHOST协议的算法来激励矿工在最长的链上进行采矿,而不是试图使用高延迟和低间隔时间去产生分链。
Size and Bandwidth大小和带宽
在讨论大小和带宽时,必须考虑到两个问题:整个区块链的物理数据的大小,以及通过网络发送的单个块的大小。根据要求,作为一个能挖出新块并与区块链网络交互的完全节点,必须保留- -份完整区块链的本地副本。
很显然,对保留这份副本的存储空间大小的要求是与链上的区块数量成正比的,这就有可能导致中心化,因为如果区块链变得足够大时,将只有少数几个节点有能力进行块的操作。
此外,当交易量开始突破可用带宽的限制,再加上块容量大小的限制,矿工费会显著增加,为了达到更大的吞吐量,这可能需要修改核心协议,获得更大的块容量或更短的块确认时间。面对这种情况,必须进行核心协议的修改,但是导致的硬分叉通常又是很难接受的。
Security安全性
工作量证明(PoW)区块链的最大卖点就是技术上很难被破解。攻击者若想要修改已经出现在区块链上的块,他们需要重做该块以及后续所有块的工作量证明。为了实现这样的攻击至少需要全网51%的哈希算力,因此也称为“51%攻击”。而这显然不太可能发生,因为拥有51%的算力所产生的采矿收益远比用来攻击获得的收益大。
Usability可用性
在比特币区块链上,大约每十分钟就会打包交易生成区块,但是之后通常需要等待50分钟甚至更久来进行后续对交易的确认。这就类似于在现实世界中,从商店买了东西,却要等待-个小时排队付款。 对于一个希望在真实世界中实时应用的程序,这显然是不可接受的。
Wasted Resources浪费资源
比特币对电力乃至环境的影响相当大。按照现在的估计,验证一笔交易需要249千瓦时的电力,比特币区块链上的矿工每年要消耗32太瓦时的电力来持续不断地开采出新的块。虽然相对来说以太坊消耗电力较低,但其能量消耗和对环境的影响仍然很大。
实际上,如果将维持比特币和以太坊正常运作的电力加起来,足以为新西兰供一年的电力。 目前已经有人试图改变工作量证月(PoW) 的区块链,取而代之的是权益证明(PoS), 以太坊就是其最突出的支持者。
Versioning, Hard Forks, and Multiple Chains版本控制、硬分叉和多链
区块链分叉带来的主要问题是共识机制和安全性的缺失。举两个极端的例子,-边是一个严重膨胀、占用了地球100%的可用算力的区块链,另一边是100个互相竞争的链,各自拥有1%的可用算力。硬分叉通常是由于共识机制被破坏导致的另一种不太受欢迎的结果。
区块链会因为其生态系统中不同干系人的不同意识形态产生分裂,或分叉链。比较著名的例子有因为比特币的扩展问题致使其不能成为一种便捷廉价的电子现金,从而分裂出比特现金(BCH),以及以太坊经典(ETC), 也是从以太坊区块链中各种意识形态不一致,无法达成共识的基础上分裂而来。
不过硬分叉并不总是因为意识形态的分裂,很多时候也来自区块链系统核心协议的变更,比如以太坊2017年的大都会升级。硬分叉形成后,原链上的哈希算力仍然存在。但是在无法达成共识分裂产生的硬分叉中,哈希算力被分给两条互相竞争的链,使得链安全级别都降低了且易受到攻击。