基于 Solana 虚拟机的以太坊 Layer2:Eclipse 项目深度分析
作者:YBB Capital 研究员Ac-Core 来源:medium 翻译:善欧巴,金色财经
Eclipse 背景
Eclipse 创始人 Neel Somani 曾担任 Airbnb 的软件工程师和 Citadel 的定量研究员,于 2022 年创立了基于 Solana 的初创公司 Eclipse。该初创公司获得了 Solana 联合创始人 Anatoly Yakovenko 以及 Polygon(建筑)等机构/个人的支持。 Rollup 区块链与 Polygon 和 Solana 兼容)。根据 CoinDesk 2022 年 9 月 28 日的报告,Eclipse 成功完成了由 Polychain 领投的 600 万美元种子轮融资以及由 Tribe Capital 和 Tabiya 共同领投的 900 万美元种子轮融资,融资总额达 1500 万美元。此外,Eclipse 还获得了 Solana 基金会的开发资助,用于支持 Solana 虚拟机驱动的 Rollup。
创始人 Somani 利用自己的网络以及靠近芝加哥 Solana 总部的地理优势,成功利用 Solana 的虚拟机创建了独特的区块链。他的愿景是让开发人员能够部署由 Solana 虚拟机支持的 Rollups,并计划于 2023 年初在 Cosmos 生态系统中启动公共测试网,以期在未来支持 Aptos 的 Move 语言。
Solana 联合创始人兼 Eclipse 天使投资人 Anatoly Yakovenko 评论道:“Eclipse 为 Solana 通过区块链间通信 (IBC) 与 Cosmos 进行通信铺平了道路。”
Polychain Capital 合伙人 Niraj Pant 表示:“随着大公司和政府开始进入区块链领域,Eclipse 成为促进其用例的关键基础设施,例如 Web2 规模的消费者和金融应用程序。”
Eclipse 架构
以下内容基于官方解释:Eclipse Mainnet是以太坊第一个以SVM为中心的通用L2,结合了模块化堆栈的本质,目标是成为由SVM驱动的最快、最通用的Layer2。该项目的架构涉及使用以太坊作为结算层并内置官方验证桥;Celestia 作为数据可用性层;RISC Zero 用于生成零知识欺诈证明;最终,Solana 的 SVM 作为这个模块化 Layer2 项目的执行环境。下面根据官方描述进行详细解释。
结算层——以太坊: Eclipse将在以太坊上进行结算(即使用以太坊上的嵌入式验证桥),使用ETH进行gas消耗,并在以太坊上提交欺诈证明;
执行层 - Solana 虚拟机 (SVM): Eclipse 将运行高性能 SVM 作为其执行环境,特别是 Solana Labs 客户端 (v1.17) 的分支;
数据可用性层——Celestia: Eclipse将数据发布到Celestia,以实现可扩展的数据可用性(DA);
证明机制——RISC Zero: Eclipse将使用RISC Zero进行ZK欺诈证明(无需中间状态序列化);
通信协议——IBC: Eclipse将通过Cosmos的区块链间通信标准IBC完成与非Eclipse链的桥接;
跨链协议 — Hyperlane: Eclipse 与 Hyperlane 合作,将 Hyperlane 的无许可互操作性解决方案引入基于 Solana 虚拟机 (SVM) 的区块链中。
结算层:获得以太坊的安全性和流动性
与其他以太坊 Rollups 一样,Eclipse 使用以太坊作为其结算层。这个过程涉及将Eclipse的验证桥直接集成到Eclipse中,其中其节点必须检查验证桥的正确性和交易顺序的正确性,从而为用户提供以太坊级别的安全性。
L2BEAT 将 Layer2 定义为“完全或部分从以太坊第一层获得安全性的链,这样用户就不必依赖 Layer2 验证者的诚实来确保其资金的安全。” Eclipse验证桥可以在某些故障场景下执行最终的有效性和抗审查性。即使排序器出现故障或开始在 L2 上进行审查,用户仍然可以通过桥强制执行交易,并将以太坊作为交易 Gas 燃烧。
执行层:实现 Solana 的交易速度和规模
为了提高效率,Eclipse 主网采用了 Solana 的执行环境,利用 SVM 和 Sealevel(Solana 构建水平可扩展性的技术解决方案,一种跨 GPU 和 SSD 进行水平扩展的超并行事务处理引擎)。与EVM的单线程操作相比,它的优点是可以在不设计重叠状态事务的情况下执行事务,而不是顺序执行它们。
在EVM兼容性方面,Eclipse主网与Neon EVM合作,允许开发人员使用以太坊工具并在Solana上构建Web3应用程序。根据官方数据,其吞吐量明显高于单线程EVM,达到140 TPS。EVM 用户可以通过 MetaMask 钱包的“Snaps”插件与 Eclipse 主网上的应用程序进行本地交互。
数据可用性:利用 Celestia 的带宽和可验证性
Eclipse 主网将利用 Celestia 来实现数据可用性并建立长期合作,因为以太坊目前无法支持 Eclipse 的目标吞吐量和成本,即使在 EIP-4844 升级之后,每个块平均提供约 0.375 MB 的 Blob 空间(每块限制约为 0.75 MB)。
根据官方数据,对于基于 Rollup 扩展的 ERC-20 交易,按每笔交易 154 字节计算,这相当于所有 Rollups 总共约 213 TPS,而对于 Compression Swaps 按每笔交易约 400 字节计算,总 TPS 约为所有 Rollups 的吞吐量约为 82 TPS。相比之下,Celestia 的 2MB 区块,随着网络证明稳定以及更多 DAS(数据可用性采样)轻节点上线,Blobstream 预计将增加到 8MB。
Eclipse认为,在Celestia DAS轻节点的支持下,考虑到密码经济安全性和高度可扩展的DA吞吐量之间的权衡,Celestia成为当前Eclipse主网的首选。尽管有观点认为使用以太坊的 DA 是 Layer2 的正统方式,但该项目将在 EIP-4844 之后继续关注 DA 扩展的进展。如果以太坊能够为Eclipse提供更大规模、更高吞吐量的DA,那么迁移到以太坊DA的可能性将会被重新评估。
证明机制:RISC零欺诈证明(无需中间状态序列化)
Eclipse 的证明方法类似于 Anatoly 的 SVM 欺诈证明 SIMD(请参阅扩展的 GitHub 链接 2),与 John Adler 避免状态序列化的高成本的见解一致。为了防止将 Merkle 树(哈希树)重新引入 SVM,早期尝试将稀疏 Merkle 树插入到 SVM 中,但每次事务更新 Merkle 树都会极大地影响性能。如果不使用 Merkle 树进行证明,现有的通用 Rollup 框架(例如 OP 栈)就无法作为 SVM Rollup 的基础,需要更具创造性的防错架构。
故障证明要求:交易的输入承诺、交易本身以及重新执行交易将导致与链上指定的输出不同的证明。
输入承诺通常是通过提供 Rollup 状态树的 Merkle 根来实现的。Eclipse 的执行器将发布每笔交易的输入和输出列表(包括账户哈希值和相关的全局状态)、生成每笔输入的交易索引,并将交易发布到 Celestia,允许任何全节点跟进,从其交易中提取输入账户自己的状态,计算输出账户,并确认以太坊上的承诺是正确的。
可能会出现两种主要类型的错误:
不正确的输出:验证器提供链上正确输出的 ZK 证明。Eclipse 使用 RISC Zero 创建 SVM 执行的 ZK 证明,继续该项目之前证明 BPF 字节码执行的工作(请参阅扩展的 GitHub 链接 3)。这使得我们的结算合约能够确保正确性,而无需在链上运行交易。
输入错误:验证者在链上发布历史数据,表明输入状态与声明的状态不匹配。然后利用塞拉斯蒂娅的量子引力桥让Eclipse的结算合约验证是否存在欺诈性历史数据。
Eclipse 与 ETH 和 Celestia 的连接
数据可用性(DA)是 Rollup 成本支出的主要组成部分之一。目前,以太坊L2的数据可用性主要依赖两种方式:Calldata和DAC(数据可用性委员会)。
· Calldata:例如,Arbitrum 或 Optimism 等 Layer2 解决方案将交易数据作为 calldata 直接发布到以太坊高度抗审查的区块上。以太坊价格将数据以及计算和存储归于一个单位:Gas,这是以太坊 Rollup 产生的主要成本之一。为了提高效率,EIP-4844升级引入了Blobspace来替代calldata,为所有Rollup提供每块375 KB的目标;
· DAC:与直接在链上发布通话数据相比,DAC 提供了更高的吞吐量,但用户需要信任一个小的委员会或一组验证者,以避免恶意扣留数据。DAC,包括基于重质押的解决方案,为 L2 引入了重要的信任假设,从而迫使 DAC 依赖声誉、治理机制或代币投票来抑制或惩罚隐藏数据的行为。因此,使用外部DA在某种程度上需要使用DAC。
值得注意的是,Eclipse 利用 Celestia 的 Blobstream(一种权益证明共识网络)来允许 Layer2 访问 Celestia 的 Blobspace。根据压缩方案,这可实现高达 8 MB 的 blob 空间,大致相当于每秒 9,000 到 30,000 次 ERC-20 传输。然而,使用 Blobstream 的 Layer2 将依赖于 Celestia 验证器的证明。如果轻节点检测到 2/3 的 Celestia 验证者扣留恶意数据,他们可以对其进行惩罚。客观地讲,DAC的可信度相对于原生链DA仍有其不足之处,但从创新和市场叙事的角度来看,这样的不足是不可避免的。
正如官方文档中所解释的以及上图所示,Eclipse 演示了通过 Celestia 的 Blobstream(如上所述,基于 DAS 扩展的以太坊模块化 DA 解决方案)向以太坊证明的数据。这使得桥接器能够基于 Celestia 的签名数据根来验证为欺诈证明提供的数据安全性。用户通过原生以太坊桥将资金存入Eclipse,流程如下:
1、用户调用以太坊上的Eclipse充值桥合约(扩展链接1中的合约地址);
2. Eclipse的SVM执行器(计算SVM结果并输出到新的Eclipse状态节点)和中继器(ETH到Eclipse通道)完成发送方和接收方地址之间的跨链数据交互;
3.中继器调用SVM桥接程序,负责将用户充值发送到目标地址;
4.中继者通过zk-light客户端验证存款交易(待实现);
5. 最后,包含后续存款的交易区块完成并通过 Solana Geyser 插件发布。
在这个过程中,每个Eclipse slot都会被SVM执行器通过Geyser发布到消息队列中。然后这些槽作为数据块发布到 Celestia,Celestia 验证器提交这些提交的数据块,以证明交易包含在 Eclipse 链中并对应于数据根。最后,每个 Celestia 数据块都通过 Blobstream 中继到以太坊上的 Eclipse 桥接器合约。
与其他使用欺诈证明的以太坊 Layer2 解决方案类似,从 Eclipse 提取资金到以太坊也需要一个挑战期,允许验证者在无效状态转换的情况下提交欺诈证明。
· SVM 执行器定期提交以太坊上的 Eclipse 插槽纪元(该过程遵循预定数量的批次)并发布抵押品;
· Eclipse的桥接合约执行基本检查,以确保发布的数据格式的完整性(参见参考文章[2]中的欺诈证明设计部分);
· 如果提交的批次通过基本检查,则会生成预定义窗口。如果在此窗口内,批量承诺表明状态转换无效,验证者可以发布欺诈证明;
· 如果验证者成功发布欺诈证明,他们将赢得执行者的抵押品,提交的批次将被拒绝,Eclipse L2 的规范状态将回滚到最后一个有效的批次承诺。此时,Eclipse的管理员有权选择新的执行器;
· 但是,如果挑战期过后,没有任何成功的欺诈证明,执行人将收回其抵押品和奖励;
· 最后,Eclipse 的桥接合约完成最终确认批次中包含的所有提款交易。
概括
Eclipse 目前正处于开发和测试的早期阶段,标志着以太坊上第一个 SVM Layer2。其测试网已经上线,计划于 2024 年第一季度推出主网。以太坊仍然将 Rollups 视为其开发路线图的核心部分。抛开正统之争,这多少意味着以太坊将 Layer2 的广义定义留给了市场,公开赋能的同时也巧妙地引入了各种形式的竞争。Eclipse 利用这一点,通过模块化开发将以太坊的安全性、Solana 的高性能和 Celestia 的 DA 叙述相结合,以形成强大的市场叙述。
回顾以太坊的发展,一个有趣的现象是上一个市场周期,在 DeFi Summer 的炒作下,“DeFi 嵌套”和“DeFi 乐高”的创新和强化激增,导致生态系统爆发式发展。本轮LSD与Re-stake相结合,“质押嵌套”、“质押乐高”组合激增,EigenLayer、Blast、BTC生态的Merlin短时间内TVL迅速提升。如果说嵌套和乐高被认为是市场情绪的主旋律,那么未来模块化也能发挥其独特的嵌套和乐高旋律。
模块化的魅力在于组件解耦的好处,从而实现堆栈每一层的创新,让每个模块的优化放大其他模块的优化。也许在未来,模块化开发流程可以为开发人员和用户提供过多的竞争选择。