许多克服区块链可扩展性的方案都错误地聚焦在增加吞吐量,然而,这忽视了吞吐量对节点的影响:为了处理区块和存储网络历史,升级硬件需求会越来越强烈,进而阻碍了一个网络的去中心化。
区块链可扩展性一直是一个热门话题。几乎每一个区块链网络把TPS(每秒交易量)作为一个卖点,然而,TPS不是一个对比不同区块链网络的有效指标,会给评估不同区块链之间的相对性能带来挑战。此外,高TPS通常会带来高成本,由此就引发一个问题:这些网络实际上真的可以扩展,或者说它们仅仅增加了它们的吞吐量?
为了回答这个问题,让我们看看如何定义可扩展性,为了实现它需要进行的权衡,以及为什么ValidityRollups是最终极的可扩展性解决方案。
并非所有的交易都是相同的
首先,我们需要声明我们的主张,简便的TPS指标不是一个精确的衡量可扩展性的标准。
为了对节点执行交易进行补偿,同时也为了阻止用户通过发送不必要的交易攻击网络,区块链会根据链上的计算负担按比例收取费用。以太坊网络中,计算负担的复杂性用gas费用来衡量。因为gas是一个针对交易复杂性非常简便的度量,这个术语也将在本文中用于非以太坊的区块链,即使它一般特定于以太坊的。
交易在复杂性上有巨大的不同,因此,消耗的gas也是不同的。比特币是最早实行无需信任的点对点交易,但是只支持基本的比特币脚本。这些地址与地址之间简单的转移只使用很少的gas。相反,像以太坊或者Solana这样的智能合约链支持虚拟机和图灵完备编程语言,能够实现更加复杂的交易。因而,像Uniswap这类dApps需要更多的gas费。
哔哩哔哩海外版APP现支持连接MetaMask钱包,官方合作NFT项目可设为头像使用:5月19日消息,据bilibili海外版APP客户端页面显示,bilibili海外版APP已推出NFT入口,支持连接MetaMask钱包查看官方合作NFT项目Cheers UP。该系列NFT可设为头像使用,并有外显的头像认证标识。
此前消息,哔哩哔哩bilibili于4月下旬宣布为海外用户授权发布Cheers UP NFT,该系列包含在以太坊上发布的10,000枚PFP类型NFT。近日该项目投票通过提案,将销毁总量一半的NFT,并保留241枚归入金库用于项目和社区建设。[2022/5/19 3:27:57]
这也是为什么比较不同区块链TPS没有意义,我们应该比较的是计算能力或者说是吞吐量。
所有的区块链有可变的区块大小和区块时间,它们决定了每个块可以处理多少计算单元以及添加新区块的速度。这两个变量决定了一个区块链的吞吐量。
什么限制了可扩展性
区块链发展方向是实现最大化的去中心化、包容性的网络。在实现这一目标过程中,会受制于两个基本的属性:硬件、状态。
硬件要求
一个去中心化的区块链网络由网络中最弱的节点验证这个区块链和保持状态的能力决定的。因此,运行一个节点成本应该尽可能地降低,以使尽可能多的人成为去信任网络无需许可的参与者。
声音 | 信通院金键:用连接范式3问理解区块链:12月19日,由中国信息通信研究院、中国互联网协会、北京航空航天大学联合主办的“智能+学院”区块链系列中国互联网协会专场培训在北京召开。信通院工业互联网与物联网研究所所金键提出“连接范式3问”:1.智能连接:都说万物互联,为什么很多设备都连不起来?2.价值交换:为什么不能向发送短信一样点对点的进行支付?3.数据保护:为什么信息不让所有者做主?为什么我的数据不能随身携带?不能发挥更大的价值?金键表示:“区块链技术很复杂,但这3个问题给了我们启发,让我们知道来到了一个需要什么技术的时代,去理解区块链技术到底能够用来做什么。”(巴比特)[2019/12/19]
状态增长
状态的增长是指区块链增长的速度。一个区块链在每单位时间允许越多的吞吐,这个区块链增长的就越快。全节点存储网络历史,同时它们也必须能够验证网络状态。通过使用树状等高效结构,以太坊的网络状态被储存和引用。随着状态增长,新的“叶子”和“分枝”被添加进去,使得其执行特定的行为时会更加复杂和消耗更多的时间。随着链的规模增长,节点在最坏情况下的执行会变得更糟糕,从而导致验证新块的时间不断增加。随着时间的增加,这也增加了全节点同步所需要的总时间。
增加吞吐量的不利影响
节点数
运行节点的最低要求和节点数:
Penta公布技术路线图:四大支柱构建区块链连接器,四季度上线测试网络:Penta公链(PNT)在其官网公布的技术路线图显示:
1.Penta网络将由四大支柱构成,分别是Penta DLOS(提供区块链平台的技术基础设施)、Penta链(Penta网络主链,采用DSC民主共识机制)、Penta DApp平台(高性能DApp运行平台)、Penta连接器(构建四层连接器协议架构实现链与链,链与中心化平台,链上与链下的三大连接);
2.Penta测试网络将于今年第四季度推出,该测试网络将包括Penta智能合约生态系统的第一个版本和PC钱包,测试网上线之前,将在Github上进行代码开源;
3.Penta网络将有多个版本逐步推进,分别是:Penta Mars(Penta链首个生产版本)、Penta Jupiter(构建DLOS基础技术设施)、Penta Saturn(构建多链式生态系统)、Penta Uranus(加强企业级应用特性,让企业更容易加入和使用Penta网络)。[2018/6/2]
比特币:350GB硬盘空间、5Mbit/s连接、、1GBRAM、CPU>1Ghz。节点数:~10,000
Ethereum2:500GB+SSD磁盘空间,25Mbit/s连接,4-8GBRAM,CPU2-4核。节点数:~6,000
Solana3:1.5TB+SSD磁盘空间,300Mbit/s连接,128GBRAMCPU12+核。节点数:~1,200
V神:ZK Rollup可能是以太坊顶级Layer2扩展武器:8月8日消息,以太坊创始人Vitalik Buterin在2022韩国区块链周KBW 2022峰会中就以太坊的各类问题进行发言,他表示,由于Layer2 Rollup,以太坊网络的交易成本将很快降至1美分,在将来所有效率改进后交易成本可能降至0.05美元,甚至可能低至0.02美元,随着成本的下降,区块链实际上可以启用和解锁全新的场景用例,这将完全改变游戏规则。另外,下一个十年对区块链技术至关重要,区块链应用需要证明它们的实用性, 所以ZK Rollup很可能是以太坊的顶级Layer2扩展武器。Vitalik还表示,量子计算将是未来的重要考虑因素,以太坊需要升级以保护自己免受未来的量子计算攻击,并考虑转向“新形式的密码学”,以抵抗潜在的攻击,但可能需要几十年的时间。[2022/8/8 12:10:08]
可以发现,一个区块链吞吐量所需要的节点的CPU、带宽和存储要求越高,该区块链网络上能够参与的节点就越少,从而导致去中心化和包容性就越弱。
同步全节点需要的时间
当第一次运行一个全节点时,它需要同步所有的现有节点,下载并验证从创始区块到链前端的网络状态。这个过程应该尽可能的快速和高效,以允许任何人作为这个无需许可的协议的参与者。
以JamesonLopp的2020年比特币节点和2021年节点同步测试为参照,表1中对比了比特币、以太坊、Solana在普通消费级电脑上同步一个全节点所需要的时间。
动态 | DENT安卓应用程序在越南的Google Play排行榜上位列Top10:据DENT官方推特消息,基于区块链的DENT安卓应用程序在越南的Google Play排行榜上位列Top10,其排名超越Google Drive,PowerPoint和Google Docs。[2019/3/4]
表1区块链吞吐和节点同步比较
表1呈现了增加吞吐量会导致更长的同步时间,因为更多的数据需要被处理和存储。
虽然区块链可以通过不断改进节点软件以缓解不断增长的区块链挑战,比如降低磁盘的占用空间、更快的同步速度、更强的崩溃恢复能力、某些组建的模块化等等,但是很显然节点无法跟上吞吐量增加的步伐。
可扩展性应该如何被定义
可扩展性是区块链领域最被误解的术语。虽然增加吞吐量是可取的,但是这只是该难题的一部分。
可扩展性意味着在相同的硬件上进行更多的交易。因此,可扩展性可以分为两大类:排序可扩展性、验证可扩展性。
排序可扩展性
排序描述了网络中对交易进行排序和处理的行为。如前所述,任何区块链可以增加区块空间和缩短出块时间来小幅增加吞吐量,一直到这种方法对区块链去中心化产生显著的影响。但是,调整这些简单的参数提供的改进是有限的。理论上,以太坊虚拟机能够实现高达2000TPS,但是长期而言,还不能满足区块空间的需求。
为了扩展排序,Solana做了一些令人印象深刻的创新:利用了可并行化的执行环境和巧妙的共识机制,从而实现了更加高效的吞吐量。不过,尽管它有所提升,但这种方式既不充分,也不可扩展。随着Solana增加了自身的吞吐量,运行节点和处理交易的硬件成本也在增加。
验证可扩展性
验证扩展性描述了增加吞吐量而不用持续增加硬件成本的节点负担的方法。具体来说,它指的是像Validityproofs的密码学创新。它们是ValidityRollups可以可持续扩展一个区块链的原因。
什么是ValidityRollup?
ValidityRollups把计算和状态存储迁移到链下,但是把一小部分的确定的数据放到链上。区块链底层上,有一个智能合约维护Rollup的状态根。在Rollup上,一批高度压缩的交易和当前的状态根一起被发送到链下证明者。这个证明者计算交易,对结果和新的状态根产生一个有效性证明,并且把它发送到链上的验证者。这个验证者验证有效性证明,维护Rollup状态的智能合约把由证明者提供的证明信息更新到新的状态。
ValidityRollups如何在硬件要求相同的情况下实现可扩展?
即使证明者确实需要高端的硬件,它们也不会影响一个区块链的去中心化;因为,交易的有效性被数学可验证的证明保证。
重要的是验证证明的要求。因为参与的数据被高度压缩并且很大程度上通过计算抽象出来,它对底层区块链节点的影响是很小的。
验证者不需要高端的硬件,批次的大小不会增加硬件需求。仅仅状态转换和小部分的数据响应需要被节点处理和存储。这允许了所有的以太坊节点通过现有的硬件验证ValidityRollup的批次。
交易越多,价格越便宜
一般来说,区块链上的交易越多,对于每个人来说就越贵。因为,随着区块空间被填满,用户需要在一个自由市场中出价高于他人,才能使得其交易被包含进区块。
对一个ValidityRollup来说,这样的情况是相反的。在以太坊上验证一批交易是有一定的成本。随着一个批次内的交易量增长,验证该批次的成本以指数形式缓慢降低。也就是说,增加更多的交易到一个批次会实现更便宜的交易费用,即使该批次的验证费用在增加。ValidityRollups希望在一个批次里面有尽可能多的交易,这样,验证费用可以由所有的交易者分摊。随着批次内规模无限增长,每一次交易费无限接近于零。在ValidityRollup上越多的交易,对每个人来说,就越便宜。
dYdX是由ValidityRollup提供支持的dAPP,经常会看到一个批次内有超过12000笔交易。可以把ValidityRollup和在主网上相同交易量的gas消耗进行对比,就可以看出降低成本的好处。
在以太坊主网上处理dYdX一次交易:200,000gas
在StarkEx上处理dYdX一次交易:<500gas
从另外一个视角看:ValidityRollups的主要成本与同一批次内部的用户数量呈现线性关系。
为什么OptimisticRollups不像人们想象中那样提供可扩展性
理论上,OptimisticRollups提供和ValidityRollups一样提供几乎一样的可扩展性优势。但是,有一个重要的区别:OptimisticRollups对平均情况进行优化,然而,ValidityRollups对最差的情况进行优化。因为区块链系统在不稳定的环境下运行,针对最差情况进行优化是仅有的方式实现安全性。
在OptimisticRollup最差的环境中,欺诈验证者不会检查用户交易。所以,为了对抗欺诈,用户需要同步一个以太坊全节点,一个L2全节点,并且需要自己计算可疑交易。
在ValidityRollup最差环境中,一个用户将仅需要同步一个以太坊全节点来验证有效性证明,为自己节省了计算负担。
和ValidityRollups不同,OptimisticRollups的成本随着交易量成线性关系,而不是用户数量,这会让它们会更贵。
难题的最后一部分——无需许可的获取Rollup状态
为了保证交易的有效性,用户仅需要运行一个以太坊节点。然而,用户和开发者因为各种目的想要查看和运行Rollup的状态和运行情况。一个索引L2节点可以完美满足这一需求。它不仅允许用户看到网络中的交易,而且,还是生态系统基础设施运行所必需的关键基础设施。像TheGraph、Alchemy、Infura等索引器,像Chainlink等预言机,像区块链浏览器,所有这些都是全部由一个无需许可的、索引L2节点支持。
结论
许多克服区块链可扩展性的方案都错误地聚焦在增加吞吐量,然而,这忽视了吞吐量对节点的影响:为了处理区块和存储网络历史,升级硬件需求会越来越强烈,进而阻碍了一个网络的去中心化。
随着加密学Validity-proof的出现,一个区块链能够实现真正的可扩展性,不会因为每次升级的成本给节点带来负担,允许更加广泛的去中心化。对于相同的硬件,现在可以使用更强大、更复杂的计算进行更多交易,从而在此过程中扭转费用市场的困境。ValidityRollup上的活动越多,它就越便宜。
文/StarkWare翻译/JackYang
来源:金色财经
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。