Lagrange 协议:通过 ZK 实现无需信任的跨链互操作性
作者:Maven 11
编译:深潮 TechFlow
跨链互操作性和安全性成为了当下区块链技术的一个挑战,ZK 初创公司 Lagrange Labs 给出了它的解决方案。Maven11 作为参投机构撰文对 Lagrange 的重要性进行了阐述,本文详细介绍 Lagrange 协议的核心概念、验证过程以及如何利用零知识证明技术实现无需信任的跨链操作。
跨链状态证明对于多链世界中的应用程序至关重要。它使得应用程序能够使用不受信任的用户提交可验证的链状态声明。用例包括多链 DEX 定价、收益聚合器、借贷定价等。
简单来说,状态(存储)证明是一种证明(零知识),证明了任意链上存在某种链上状态。通过零知识证明(ZKP)的魔力,我们可以高效且无需信任地实现这一点,而无需信任预言机网络。
传统的消息传递协议依赖节点来传递信息,但 Lagrange 采用了不同的方法。它允许任何人加密验证信息提交,类似于 IBC 依赖轻客户端进行跨链验证。
在 Lagrange 中,任何跨链传输层或不受信任的用户都可以提交在链上验证的非交互式证明。这些证明不依赖验证者集合或签名,确保直接在链上获取数据并在链之间高效地聚合。
Lagrange 状态证明的验证涉及多个步骤:
-
状态根验证:验证由 Lagrange 状态委员会生成的简洁零知识证明,显示给定状态根(区块头)的真实性。
-
批量存储证明:验证一组声明的状态是否存在于特定链的状态根中。
-
零知识分布式计算:验证在链上状态上执行的任意分布式计算。
由于 Lagrange 状态证明是模块化的,协议可以选择使用状态、存储或计算的部分证明,以根据其应用程序定制证明系统。现有的跨链应用程序可以轻松提高其跨链工具的安全性或表现力。
Lagrange 零知识大数据框架利用类似于 Verkle 树的动态数据结构,允许应用程序将高效的存储包含证明与任意分布式计算(如 MapReduce 或分布式 SQL)相结合。
![](https://upload.techflowpost.com/upload/images/20230522/2023052214205216679520.jpg)
借助 LagrangeJS SDK,开发人员可以轻松请求任何链的状态证明,并指定在存储状态子集上运行的任意计算。这使开发人员能够在用户友好的界面中利用安全的跨链状态和存储证明。
Lagrange SDK 还简化了同时生成跨多个链的状态证明的过程。这些证明使得与 Lagrange 协议集成的 DApp 可以将多个状态验证集成到单个链上交易中。
Lagrange 协议通过整合主要区块链来促进跨链状态验证。最初,它与所有 EVM L1、L2 和 rollup 兼容。未来,计划支持 Solana、Sui、Aptos 和基于 Cosmos SDK 的链等非 EVM 链。
此外,Lagrange 还致力于通过利用经济债券声明来改善现有跨链桥接和消息传递协议的安全性,为 Optimistic Rollup 创建强大的经济单槽保证最终确定性。这可以显著提高以太坊上孤立的 Rollup 之间的互操作性。
其工作原理本质上是为 Optimistic Rollup 生成 ZK 轻客户端证明,而不是当前在以太坊上的“轻客户端”实现——即以太坊同步委员会。
当前的以太坊同步委员会只有 512 个随机选择的验证者,他们每天获得更高的奖励以提供轻客户端功能。
![](https://upload.techflowpost.com/upload/images/20230522/2023052214205307765098.jpg)
Lagrange 跨链状态委员会的安全性源于不断增长、动态大小的节点,这些节点具有经济债券,这些节点要么用 EigenLayeer 再质押,要么用流动性质押衍生品质押,例如 Rocket Pool。
![](https://upload.techflowpost.com/upload/images/20230522/2023052214205353419653.jpg)
节点必须对每个在他们所证明的链上达到最终结果的新区块执行签名。与以太坊轻客户端同步委员会的 512 个节点上限相反,跨链状态委员会支持无限制的节点。因此,每个证明背后的抵押品可以根据需要动态扩展,为每个给定的链或 Rollup 创建安全证明。
状态证明在诸如共享排序器等协议中具有重要用例,有助于改进跨 Rollup 通信,以及在 SUAVE 等实现中解决预言机问题。