复制成功

分享至

主页 > 数字货币 >

Solana可成以太坊新L2?一文探讨模块化叙事下的Rollup新范式

2023.12.28

原文作者:Haotian(X:@tmel0211)

市场出现了「并行 EVM」的新叙事,于 layer 2 就非常有意思了,可实现一种「精细化」Rollup 新范式,夸张点可达成 Solana 成为以太坊新 layer 2 的魔改效果。

在我看来,并行 EVM 只是 Rollup 高度「模块化」的显学,是 DA 被第三方侵袭之后,VM 执行层的再度沦陷,未来 layer 2 会被重新定义。Why?接下来,以科普视角分析下:

理解这个话题,得先厘清「EVM」的单线程执行模型。

该模型规定了交易必须按顺序一个接一个地被处理和确认,这直接影响了交易处理速度、出块时间、以及交易吞吐量等,是以太坊主网 Gas 高且拥堵的主要原因。而且,之所以设计成单线程,有一定历史局限性存在。

由于以太坊上的交易由分布的独立节点验证和执行完成,且要保证所有地址的数据,比如余额、智能合约代码等保持不同节点间的状态一致,与此同时还得保证不会有同一资产双重支付的可能性出现。

这就使得交易得按顺序排队处理。如果出现并行交易,就可能导致节点之间的数据同步出错,关键是还会出现严重的双花交易。

通俗解释:银行只有一个服务窗口,客户取款要按顺序排队,无论是存款取款以及贷款等业务,一个客户完成业务后才能开始下一个,优点是,银行的账户系统的每项操作都会精准记录,但客户排队时间会比较长;

若银行开放多个服务窗口,客户可选择窗口办理不同业务,就会出现有两个窗口同时尝试从一个账户中扣款,若窗口间账户系统对账不及时 就会导致双花,显然这样做明显提升了效率,但复杂的记账逻辑会对账务系统带来压力。

在 layer 1 独立链场景下,如果链底层支持并行处理问题就迎刃而解了,Solana 由于计算和存储状态分离,因此其 VM 在收到用户的多笔交易后,节点会对这些交易进行排序,然后调用独立的存储系统状态数据检测这些交易是否存在状态冲突,若无冲突就将交易打包到一个区块中,若冲突则将冲突的交易排除到本次区块外。

相较之下,以太坊的存储状态是实时计算出来的,每个交易必须等待前一笔交易完成才能更新状态,故而就无法做到在等待打包前的交易筛选工作,限制了其并行处理的可能性。

在 layer 2 Rollup 链场景下,要实现并行处理,远离也类似。你可以把 Solana 在等待 POH 时间戳的交易计算和存储状态检测视为 Rollup 链在 Sequener 处理交易然后向主网 Batch 的过程。

现在 layer 2 在 Batch 交易前 Sequener 会先按时间顺序给交易排 nonce,然后按顺序 Batch 到主网,如何才能做到多线程呢?

1)可基于 AA 账户抽象模型,从账户状态上实现了可以同时发起多笔交易,比如,若同时执行两笔 Transfer,AA 智能合约会赋予其 nonce,需要按顺序执行,若一笔是 Transfer,一笔是 Approve 则就可以不受 nonce 限制更灵活的并行处理。在 AA 账户模型中,每个账户可以自定义交易处理逻辑,进而配合 nonce 实现高并发。

2)可对 Sequencer 中的交易进行「精细化」的加工处理,比如当 layer 2 的交易被提交到 Sequencer 中,Sequencer 可以快速的检测这些交易逻辑,并进行精细化排序和筛查工作,比如若同一账户发起了两笔 Transfer,就要把后一笔排除在外,等待下一次 Batch,若同一账户发起两笔性质不同的操作,就可以同时 Batch 到一个区块中。

听上去很简单?但事实情况绝非如此,仅以 DeFi 场景为例,Sequencer 要实现交易的精细化管理,存在两大挑战:

1)要实时解析交易数据,了解传入数据的智能合约调用方法及参数,以 DeFi 常见的 Staking 为例,一次 Staking 操作,涉及代币转移、状态更新、质押期限、以及潜在奖励计算等。若同时有大量用户传入一些质押交易,若其中还参杂质押后再 Transfer 的交易,再加上复杂的 Oralce 价格因素等等,若 Sequener 无法解析处理到位,一步出现错误都可能导致严重事故。

2)Sequencer 得确保去中心化,当前 layer 2 Sequener 只是 Batch 交易的前提下,权利都已经过大了,若 Sequencer 去中心化问题解决不了,再来做「精细化」Rollup,等于又赋予 Sequencer 更多的权限。若 Sequencer 在中作恶塞假交易,明目张胆搞 MEV 夹子,甚至恶意操控 Oracle 清算等等都会滋生。

最近,Metis 受追捧,表面上看只是 Sequencer 实现了去中心化,深层次看则是为未来 Sequencer 做精细化 Rollup 构建了基本的共识前提。

当然,靠 Sequencer 做到高度精细化的 Rollup 交易汇聚和处理,目前还只是一种设想,好在,AA 账户抽象,区块链整体的模块化组合开放思想给这一设想落到实处提供了先决条件。

以上。

免责声明:数字资产交易涉及重大风险,本资料不应作为投资决策依据,亦不应被解释为从事投资交易的建议。请确保充分了解所涉及的风险并谨慎投资。OKEx学院仅提供信息参考,不构成任何投资建议,用户一切投资行为与本站无关。

加⼊OKEx全球社群

和全球数字资产投资者交流讨论

扫码加入OKEx社群

相关推荐

industry-frontier