📢 Gate广场 #NERO发帖挑战# 秀观点赢大奖活动火热开启!
Gate NERO生态周来袭!发帖秀出NERO项目洞察和活动实用攻略,瓜分30,000NERO!
💰️ 15位优质发帖用户 * 2,000枚NERO每人
如何参与:
1️⃣ 调研NERO项目
对NERO的基本面、社区治理、发展目标、代币经济模型等方面进行研究,分享你对项目的深度研究。
2️⃣ 参与并分享真实体验
参与NERO生态周相关活动,并晒出你的参与截图、收益图或实用教程。可以是收益展示、简明易懂的新手攻略、小窍门,也可以是行情点位分析,内容详实优先。
3️⃣ 鼓励带新互动
如果你的帖子吸引到他人参与活动,或者有好友评论“已参与/已交易”,将大幅提升你的获奖概率!
NERO热门活动(帖文需附以下活动链接):
NERO Chain (NERO) 生态周:Gate 已上线 NERO 现货交易,为回馈平台用户,HODLer Airdrop、Launchpool、CandyDrop、余币宝已上线 NERO,邀您体验。参与攻略见公告:https://www.gate.com/announcements/article/46284
高质量帖子Tips:
教程越详细、图片越直观、互动量越高,获奖几率越大!
市场见解独到、真实参与经历、有带新互动者,评选将优先考虑。
帖子需原创,字数不少于250字,且需获得至少3条有效互动
以太坊The Surge:10万TPS愿景与扩容难题破解之道
以太坊的可能未来:The Surge
以太坊的路线图最初包含两种扩容策略:分片和Layer2协议。分片让每个节点只需验证和存储一小部分交易,而Layer2则将大部分数据和计算保持在主链之外。这两种方法最终融合在一起,形成了以Rollup为中心的路线图,这仍然是以太坊当前的扩展策略。
以Rollup为中心的路线图提出了一个简单的分工:以太坊L1专注于成为强大且去中心化的基础层,而L2则承担帮助生态系统扩展的任务。这种模式在社会上很常见:法院系统(L1)存在是为了保护合同和财产权,而创业者(L2)则在此基础上进行建设。
今年,以Rollup为中心的路线图取得了重要进展:EIP-4844 blobs的推出大幅增加了以太坊L1的数据带宽,多个EVM Rollup已进入第一阶段。每个L2作为独立的"分片"存在,分片实现方式的多样性如今已成为现实。但这条路也面临一些独特的挑战。我们现在的任务是完成以Rollup为中心的路线图,解决这些问题,同时保持以太坊L1的稳健性和去中心化。
The Surge:关键目标
可扩展性三角悖论
可扩展性三角悖论认为区块链的三个特性之间存在矛盾:去中心化、可扩展性和安全性。它给出了一个启发式的数学论点:如果一个去中心化友好的节点每秒可以验证N笔交易,并且你有一个每秒处理k*N笔交易的链,那么(i)每笔交易只能被1/k个节点看到,这意味着攻击者只需破坏少数节点就能通过一笔恶意交易,或(ii)你的节点将变得强大,而你的链不会去中心化。
然而,数据可用性采样与SNARKs的结合确实解决了三角悖论:它允许客户端在仅下载少量数据并执行极少量计算的情况下,验证一定数量的数据是可用的,并且一定数量的计算步骤是正确执行的。另一种解决方法是Plasma架构,它将监视数据可用性的责任推给用户。随着SNARKs的普及,Plasma架构对更广泛的使用场景变得更加可行。
数据可用性采样的进一步进展
当前以太坊每12秒的slot有3个约125 kB blob,数据可用带宽约375 kB。假设交易数据直接在链上发布,ERC20转账约为180字节,因此以太坊上Rollup的最大TPS为173.6。我们的中期目标是每个slot 16 MB,如果结合Rollup数据压缩的改进,将带来约58000 TPS。
PeerDAS是"1D sampling"的一个相对简单的实现。在以太坊中,每个blob都是一个在253位素数域上的4096次多项式。我们广播多项式的shares,其中每个shares包含从总共8192个坐标中相邻的16个坐标上的16个评估值。在这8192个评估值中,任何4096个都可以恢复blob。
PeerDAS的工作原理是让每个客户端侦听少量子网,其中第i个子网广播任何blob的第i个样本,并通过询问全球p2p网络中的对等方来请求它需要的其他子网上的blob。更保守的版本SubnetDAS仅使用子网机制,而没有额外的询问对等层。
从理论上讲,我们可以将"1D sampling"规模扩展得相当大:如果我们将blob的最大数量增加到256(目标为128),那么我们就能达到16MB的目标,而数据可用性采样中每个节点每个slot需要处理1 MB的数据带宽。这只是勉强在我们的容忍范围内,意味着带宽受限的客户端无法采样。
因此,我们最终想要更进一步,进行2D采样,它不仅在blob内,而且在blob之间进行随机采样。KZG承诺的线性属性用于扩展一个区块中的blob集,其中包含对相同信息进行冗余编码的新虚拟blob列表。
至关重要的是,计算承诺的扩展并不需要有blob,因此该方案从根本上来说对分布式区块构建是友好的。实际构建区块的节点只需要拥有blob KZG承诺,并且它们可以依赖数据可用性采样(DAS)来验证数据块的可用性。
接下来是完成PeerDAS的实施和推出。之后,不断增加PeerDAS上的blob数量,同时仔细观察网络并改进软件以确保安全,这是一个渐进的过程。我们还希望有更多的学术工作来规范PeerDAS和其他版本的DAS及其与分叉选择规则安全等问题的交互。
在未来更远的阶段,我们需要做更多的工作来确定2D DAS的理想版本,并证明其安全属性。我们还希望最终能够从KZG转向一种量子安全且无需可信设置的替代方案。
我认为的长期现实路径是:
请注意,即使我们决定直接在L1层扩展执行,这种选择也是存在的。这是因为如果L1层要处理大量的TPS,L1区块将变得非常大,客户端将希望有一种高效的方法来验证它们的正确性,因此我们将不得不在L1层使用与Rollup(如ZK-EVM和DAS)相同的技术。
数据压缩
Rollup中的每笔交易都会占用大量的链上数据空间:ERC20传输大约需要180字节。即使有理想的数据可用性采样,这也限制了Layer协议的可扩展性。每个slot 16 MB,我们得到:
16000000 / 12 / 180 = 7407 TPS
如果我们不仅能解决分子的问题,还能解决分母的问题,让每个Rollup中的交易在链上占用更少的字节,那会怎样?
数据压缩有几种方法:
零字节压缩:用两个字节替换每个长的零字节序列,表示有多少个零字节。
签名聚合:从ECDSA签名切换到BLS签名,BLS签名的特性是多个签名可以组合成一个单一的签名,该签名可以证明所有原始签名的有效性。
用pointers替换地址:如果以前使用过某个地址,我们可以将20字节的地址替换为指向历史记录中某个位置的4字节pointer。
交易值的自定义序列化:大多数交易值的位数很少,例如,0.25 ETH表示为250,000,000,000,000,000 wei。最大基础手续费和优先手续费也类似。因此,我们可以使用自定义的十进制浮点格式,来表示大多数货币值。
基于有效性证明的Rollups发布状态差异而不是交易。
接下来主要要做的是实际实现上述方案。主要的权衡包括:
切换到BLS签名需要付出很大努力,并且会降低与能够增强安全性的可信硬件芯片的兼容性。可以使用其他签名方案的ZK-SNARK封装来替代它。
动态压缩(例如,用pointers替换地址)会使客户端代码变得复杂。
将状态差异发布到链上而不是交易,会降低可审计性,并使很多软件(例如区块浏览器)无法工作。
采用ERC-4337,并最终将其部分内容纳入L2 EVM中,可以大大加快聚合技术的部署。将ERC-4337的部分内容放在L1上可以加快其在L2上的部署。
Generalized Plasma
即使使用16 MB的blob和数据压缩,58,000 TPS也未必足以完全满足消费者支付、去中心化社交或其他高带宽领域的需求,尤其是当我们开始考虑隐私因素时,这可能会使可扩展性降低3-8倍。对于高交易量、低价值的应用场景,目前的一种选择是使用Validium,它将数据保存在链下,并采用了一种有趣的安全模型:运营商无法窃取用户的资金,但他们可能会暂时或永久冻结所有用户的资金。但我们可以做得更好。
Plasma是一种扩容解决方案,它涉及到一个运营商将区块发布到链下,并将这些区块的Merkle根放到链上(与Rollup不同,Rollup会将完整的区块放到链上)。对于每个区块,运营商会向每个用户发送一个Merkle分支来证明该用户的资产发生了什么变化,或者没有发生什么变化。用户可以通过提供Merkle分支来提取他们的资产。重要的是,这个分支不必以最新状态为根。因此,即使数据可用性出现问题,用户仍然可以通过提取他们可用的最新状态来恢复他们的资产。如果用户提交了一个无效的分支(例如,提取他们已经发送给其他人的资产,或者运营商自己凭空创造了一个资产),则可以通过链上的挑战机制来判断资产的合法归属。
早期的Plasma版本仅能处理支付用例,无法有效地进行进一步推广。然而,如果我们要求每个根都用SNARK进行验证,那么Plasma就会变得强大得多。每个挑战游戏都可以大大简化,因为我们排除了运营商作弊的大部分可能路径。同时,也开辟了新的路径,使Plasma技术能够扩展到更广泛的资产类别。最后,在运营商不作弊的情况下,用户可以立即提取资金,而无需等待一周的挑战期。
一个关键的见解是,Plasma系统并不需要完美。即使你只能保护资产的子集(例如,仅仅是过去一周内未移动的代币),你也已经大大改善了当前超可扩展EVM(即Validium)的现状。
另一类结构是是混合Plasma/Rollup,例如Intmax。这些构造将每个用户的极少量数据放到链上(例如,5个字节),这样做可以获得介于Plasma和Rollup之间的某些特性:在Intmax的情况下,你可以获得非常高的可扩展性和隐私性,尽管即使在16 MB的容量中,理论上也限制在大约16