{"content":{"title":"弹性网络（Elastic Network）中原生互操作的工作原理","body":">- 原文链接：[zksync.mirror.xyz/gtooCgtbTAmp...](https://zksync.mirror.xyz/gtooCgtbTAmpVagPeTtYgSBVZpPslS145bLeLBoX0-k)\r\n>- 译者：[AI翻译官](https://learnblockchain.cn/people/19584)，校对：[翻译小组](https://learnblockchain.cn/people/412)\r\n>- 本文链接：[learnblockchain.cn/article…](https://learnblockchain.cn/article/10473)\r\n    \r\n今年早些时候，我们介绍了我们对 **[弹性网络](https://learnblockchain.cn/article/10351)** 的愿景——一个不断扩展的 ZK 链生态系统，由数学保障安全。其核心是一个**原生互操作性层**，使整个网络感觉像一个统一的链。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850178)\r\n\r\n## 去中心化问题\r\n\r\n当今的区块链生态系统是分散的。用户、应用和流动性分散在众多链上，常常导致：\r\n\r\n*   有限的可扩展性\r\n    \r\n*   分散的流动性\r\n    \r\n*   较差的用户体验\r\n    \r\n\r\n我们行业的解决方案是依赖第三方桥接，这在最好的情况下强迫信任假设，而在最坏的情况下[被黑客攻击](https://rekt.news/leaderboard/) 。即使有额外的安全风险，资本仍然是分散的，用户体验也很差。\r\n\r\n### 为什么选择原生互操作性\r\n\r\nZKSync 的互操作性通过允许弹性网络内的 ZK 链在协议层面**直接**进行交易和通信，改变了游戏规则——无需第三方桥接，无需复杂的用户体验——只有顺畅的原生跨链体验。与其他跨链社区方法相比，这降低了安全风险，提高了透明度，并且成本更低。\r\n\r\nZKsync 上的原生互操作性之所以有效，是因为[共享桥接和 ZK 网关](https://learnblockchain.cn/article/10351) 。共享桥接将以太坊连接到 ZK 链，并持有弹性网络中的所有资金。ZK 网关是不同 ZK 链可以有效相互通信的地方。通过充当共享的会议点，网关在链之间提供快速且成本高效的消息，同时保持强大的安全措施。\r\n\r\n## 弹性网络中的四个互操作性层级\r\n\r\n有几种类型的跨链交易，复杂性各不相同。要理解 ZKsync 的原生互操作性如何工作，我们需要从**四个层级**进行探讨。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850180)\r\n\r\n### 层级 1：InteropMessage\r\n\r\n`InteropMessage` 是互操作性栈的最低层级——所有其他互操作性层的基础接口。它提供了链之间最简单的通信形式，使一个 L2 能够向另一个发送消息（有效载荷）。可以将其视为广播数据的一种方式，就像在说“*嘿，这里发生了某事！*”\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850595)\r\n\r\n**工作原理：**\r\n\r\n当你创建一个互操作消息时，系统会添加重要的细节，例如：\r\n\r\n*   你的 L2 地址\r\n    \r\n*   源链的 ID\r\n    \r\n*   一个唯一的消息编号以保持其独特性\r\n    \r\n\r\n结果是一个唯一的“消息哈希”，作为此消息的 ID。\r\n\r\n使用默克尔证明来确认消息已发送和接收。该证明来自**网关**。网关是以太坊和 ZK 链之间的中间件，通过收集来自所有链的消息并将其组织成一个加密树（默克尔树），以确保每条链与相同的数据保持同步，从而促进 ZK 链之间的完全互操作性。\r\n\r\nZK 链不需要使用 ZK 网关；它们可以随时在使用 ZK 网关和直接结算到以太坊之间切换，而不会影响其链的安全性。但使用 ZK 网关更具成本效益和性能。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850601)\r\n\r\n### 层级 2：InteropCall\r\n\r\n互操作调用超越了简单的消息传递。它们允许你在其他链上调用合约并触发操作，使跨链操作像在自己链上调用函数一样简单。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850599)\r\n\r\n**如何工作？**\r\n\r\n当进行调用时，它包括**重放保护**。重放保护确保每个调用都是唯一的，不能被执行多次。这防止了重复操作，并确保系统保持安全。\r\n\r\n在目标链上，调用看起来像是来自本地账户。系统将发送者的地址和源链 ID 映射到一个**别名账户**，以简化权限管理，保持交互的安全性。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802850605)\r\n\r\n### 层级 3：Interop Call Bundle\r\n\r\n捆绑将多个调用组合成一个原子交易。这些指令（调用）必须按特定顺序执行，并且都共享相同的命运——要么全部成功，要么全部失败。这使得捆绑在复杂的跨链任务中强大且可靠。\r\n\r\n**它们如何工作？**\r\n\r\n捆绑中的每一步都与其他步骤相关联并按顺序执行。捆绑中的操作不能独立运行，确保一切按计划进行。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802851756)\r\n\r\n如果捆绑失败（例如，耗尽 gas），你可以重试或取消。请注意，失败不会立即通知源链。捆绑仍然可以在目标链上进行重试或取消。调用者可以通过查询**网关**来确定其捆绑的状态。网关跟踪所有捆绑的状态，记录它们是成功、失败还是未处理。\r\n\r\n重试或取消可以直接在目标链上处理：\r\n\r\n*   **重试：** 调用者或授权实体可以使用更新的参数（例如更高的 gas 限制或价格）重新运行捆绑。\r\n    \r\n*   **取消：** 捆绑中指定的 `cancellationAddress` 可以将捆绑标记为已取消，以防止进一步的执行尝试。\r\n    \r\n\r\n### 层级 4：Interop Transactions\r\n\r\n在互操作性栈的顶层是互操作交易，它们作为互操作捆绑的交付机制。它们处理捆绑的选择、管理 gas，并在目标链上运行，所有这些都来自源链。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802851759)\r\n\r\n**工作原理**\r\n\r\n一个 `InteropTransaction` 包含两个指向捆绑的指针：\r\n\r\n*   执行捆绑（你想要做的事情）\r\n    \r\n*   费用捆绑（如何支付 gas）\r\n    \r\n\r\n如果交易失败，你可以在不重新开始的情况下重试。\r\n\r\n![](https://img.learnblockchain.cn/attachments/migrate/1735802851856)\r\n\r\n这简化了跨链的复杂工作流程，如代币交换，并消除了手动执行、gas 管理或切换 RPC 的需要。\r\n\r\n## 互操作性为弹性网络解锁的功能\r\n\r\n*   **共享流动性：** 网络内的 ZK 链可以在不引入额外信任假设的情况下访问跨链流动性。\r\n    \r\n*   **可组合应用：** 一条链上的智能合约可以与另一条链上的合约进行交互，为去中心化应用解锁新的可能性。\r\n    \r\n*   **统一用户体验：** 用户可以通过单一的钱包确认在链之间进行交易，享受快速、低成本和简化的流程。\r\n    \r\n\r\n## 原生互操作性演示\r\n\r\n我们正在发布第一个公共原生互操作性演示，使用 [ZKsync SSO](https://zksync.mirror.xyz/XxZXs957Wf3PzsxuDR2LjR2FcqT0e6HpLcCdfsMKKyY) 提供友好的钱包体验。该演示展示了在链 A 上将  \\$AA 交换为 \\$BB 的跨链交换，该交换通过链 B 路由。交换可能通过链 B 路由，因为链 B 具有更深的流动性、更快的结算或更低的成本。\r\n\r\n[自己试试](https://zksync-interop.web.app/)。\r\n\r\n你可以从 ZKsync 核心书籍中的 [互操作文档](https://matter-labs.github.io/zksync-era/core/latest/specs/interop/overview.html) 中了解更多信息。\r\n\r\n> 我是 [AI 翻译官](https://learnblockchain.cn/people/19584)，为大家转译优秀英文文章，如有翻译不通的地方，在[这里](https://github.com/lbc-team/Pioneer/blob/master/translations/10473.md)修改，还请包涵～"},"author":{"user":"https://learnblockchain.cn/people/24789","address":null},"history":"bafkreib6mcf6jcushxf2rp6dngh5r4qv6pdhct2yqg6kjf5uaq76p4x4oe","timestamp":1735804556,"version":1}