
- 结果而非路径:用户只需要表达他们想要什么,而无需关心实现结果的方式是什么。
- 条件授权而非代码授权:当用户签署区块链交易时,他们授权交易代码执行任意计算的能力,修改区块链的状态。相反,当用户批准一个 intent 时,他们是在确保他们想要的结果已经实现之后授权发放他们的资产和小费(有点像网络购物的货到付款)。
- 竞争性 solver 而非受信任的 dapp:在交易主导的世界中,用户与他们选择的 dapp 交互,dapp 将作为服务提供方为用户提供期望的结果,通常是像 Uniswap 这类长期运行的主流 dapp。在 intent 主导的世界中,链下和链上的知名或不知名 solver(求解器)为实现用户的 intent 并获得奖励而相互竞争。从经济原理看,竞争越激烈,效率越高。

- Intent 表达和授权:用户如何输入他们的 intent;用户可以表达什么类型、什么级别的 intent;用户会给予何种授权?
- 候选 solver:是需许可的还是无需许可的?成为 solver 是否有很高的标准?是否存在专注于其他特定领域的不同类型的 solver?
- 求解过程:解决问题的主要途径是什么;由什么来决定 intent 已完成?
- Solver 的选择:从若干候选 solver 中选择获胜者有什么规则?是赢家通吃还是离散竞争模式?
- 验证与结算:如何检查 solver 是否完成了任务?用户和 solver 之间如何结算?

- Cow Swap 和 1inch Fusion 平台上的交易员通过与平台的界面交互来表达他们的 intent,为期望的交易或限价单提供明确的指示。
- 在授权方面,交易员签署链下消息或交易以授予许可。他们用交易代币支付费用,而不是使用 ETH 支付 gas 费,如果交易没有执行,也不会有任何成本。
- 就 1inch Fusion 的情况而言,solver 就是 resolver,以无需许可的方式运行。他们需要注册,经过 KYC 流程验证,并要保持足够的余额来支付订单费用。
- 而 Cow Swap 的 solver 要么通过创建百万美元的绑定池(USDC & Cow)被列入白名单,要么被纳入 Cow DAO 绑定池或 Gnosis DAO 绑定池,并根据 DAO 的标准被 Cow DAO 列入白名单。
- Solver 评估现有交易包,以确定任何可以为执行交易或限价单提供最佳价格的需求巧合(CoW)。他们会考虑各种因素,如流动性、订单簿深度及价格滑点,以确保交易员的最佳执行。
- 此外,solver 可以直接探索其他潜在的链上自动做市商(AMM),如 Uniswap,或利用像 1inch 这样的 DEX 聚合平台来发现最优价格和路径。
- 在 Cow Swap,交易员以任何外部 solver 利用批量拍卖确定的最佳价格执行交易,从而让交易员的利润最大化。提供最优解的 solver 将被选中。
- 相比之下,1inch Fusion 的 resolver 竞争受到的限制更多,并且与利用荷兰式拍卖质押的 1inch 代币相关。
- 验证和结算过程发生在 solver 执行交易或限价单之后。Solver 可以利用授予结算合约的 ERC 20 批准,代表用户转移代币。结算合约验证用户 intent 的签名,并确保执行符合指定的限制价格和数量。此验证确认预期交易或限价单已成功完成。
- 一旦经过验证,结算合约就可以将资金适当地分配给参与交易的 solver 和用户。
- 用户有更多的自由度来定义参数(也可能带来更多的复杂性),包括拍卖的衰减函数、初始荷兰订单价格等。
- 默认为无需许可模式,用户也可以设置为许可模式。
- 荷兰式订单执行价格取决于其入块时间。对交换者(swappers)来说,订单的初始价格估计优于当前市场价格,例如,如果当前市场价格为每 ETH 1, 000 USDC,而卖单起始价可能为每 ETH 1, 050 USDC,随后,订单价格逐渐衰减,直到达到交换者可以接受的最低价格,例如每 ETH 995 USDC。为了获利,提交者(filler)被激励尽快完成订单,否则就有可能错失订单,使愿意获得较小利润的其他提交者获利。
- UniswapX 还支持将 RFQ(允许订单指定一个提交者,该提交者在短时间内获得提交订单的专有权利)用于初始荷兰式拍卖价格设置,在这种情况下,选择的过程几乎与 1inch Fusion 的拍卖方式相同。
- 与 UniswapX 和 1inch 的独立拍卖相比,Cow Swap 更像是批量拍卖,可以合并订单并匹配 CoW。
- 跨链 swap 可以通过类似的流程实现,主要区别在于为实现多领域 swap 的验证和结算:solver 需要在原链上存入更多的债券资产,以确保安全并启用 optimistic 跨链协议;需要一个额外的结算 oracle 来为原链的验证合约提供数据;需要 UniswapX 在不同的领域中部署相应的结算和验证合约。
- 该过程开始于钱包所有者想要执行特定操作的时候,他们通常通过一个 4337 钱包接口生成一个 userop 来表达他们的 intent。
- 在链下,钱包所有者可以请求捆绑器(bundler)代表他们处理该 userop,但需根据 intent 授权有限的控制。例如,钱包所有者可以授权私钥进行主帐户交易,但只能使用 Dapp XYZ 的 hub 合约。
- 在 AA 框架中,捆绑器服务被视为公共产品。大多数捆绑器都是开源的,这使得它们具有非排他性和非竞争性,任何 RPC 端点都可以复制开源代码并作为捆绑器运行。即使捆绑器 RPC 端点想为其服务收费,它也可以通过 API 密钥实现这一点并保持捆绑器作为公共产品的非排他性。
- 两种主要类型的捆绑器包括专门为钱包构建的满足钱包基本需求的捆绑器服务,以及提供第三方基础设施服务的无需许可和模块化捆绑器。
- 捆绑器在 userop 上模拟钱包的 validateOp 方法,以在链下确定是否接受或拒绝,然后,它们将交易发送到 AA 系统的入口点以调用 handleOp 方法。该过程还包括将多个用户操作捆绑在一起,以优化 gas 费、提取 MEV。
- 入口点合约将操作推到链上,链节点将验证操作并使其达成共识。
- AA 中 solver 的选择取决于多种因素。帐户所有者使用的钱包可能提供捆绑器服务或使用第三方基础设施,用户也可能切换 RPC 端点以选择自己喜欢的捆绑器。在这种情况下,捆绑器的成功率和声誉可能会影响 solver 的选择。
- AA 系统的入口点验证并处理链上操作,它确保 userop 在执行所需操作之前满足需求和安全检查。一旦操作成功执行,入口点将从钱包的存款中向捆绑器退还 ETH。这种退款机制补偿了捆绑器所做的工作及其预付费。
- 采用 Essential 标准的 dapp 或钱包可以为用户提供相关的 intent 支持的服务,并消除潜在的复杂性,用户只需要与接口交互并进行授权。Intent 可以在短期内使用 Essential 标准表达,也可以在长期内使用其新的基于约束的语言进行更通用的表达。与 EVM 链兼容,无需桥接资金。
- Essential 支持代码表达的 intent,各种 solver 可以加入 Essential 网络来解决相应类型的 intent,例如针对 swap intent 的 Cow Swap solver 或监控和执行链状态相关 intent 的建设者(builder)。
- 一个由 solver 组成的网络将监视并努力实现这些 intent。Essentials 正在考虑如来自 CoW 协议或 4337 等的现有的 solver 或捆绑器、MEV 搜寻者和做市商。
- solver 明确他们正在求解的约束环境,然后在链下和链上尝试解决这些基于约束的 intent。
- 选择过程更像是荷兰式拍卖,用户指定约束条件,而 solver 则根据可提取的价值大小来决定何时进入以满足 intent。第一个进入并解决 intent 的 solver 将是被选中的 solver,并且可能是当时市场可以承受的最佳解决方案。
- 验证和结算都是由 solver 触发特定的链上智能合约来验证和分割费用。将有一个核心合约,所有的解决方案和 intent 都将提交到该合约中,并可使用 Essential 准进行扩展。
- SUAVE 用户通过编写 EVM 代码在 SUAVE 中表达他们的意图。这些代码通过定义允许访问用户机密数据的合同列表来概述他们希望执行的期望结果和功能。可能有一些适合普通用户的可用模板。
- 通过 MEVM,开发者可以为特定的 MEV 应用(例如 OFA、区块构建等)部署不同类型的智能合约,或者在 SUAVE 上部署新型 DEX 以供其他用户调用。
- 用户将资金桥接至 SUAVE 链并存入小费。
- 在 SUAVE 中担任 solver 的主要参与者可能是搜索者和构建者。搜索者和其他 solver 负责探索和发现潜在的解决方案以满足用户的 intent,而构建者专注于实施这些解决方案。他们共同努力构建一个强大的生态系统,用于解决用户表达的 intent。为了满足不同领域的与区块相关的 intent,可能存在许多在不同领域有专业技能的 solver,以支持不同的虚拟机(VMs)。
- solver 进行可信且隐私的链下计算,这些计算可以通过 TEE 环境中的特殊预编译用于 SUAVE 上的智能合同。solver 共同努力构建包含一组 intent 的区块。区块构建的目的是将这些意图汇聚并组织成有价值的区块,然后可以提议给网络。
- 在 SUAVE 中,solver 的选择遵循两种主要方法。首先,通常会选择首先完成预期任务的 solver。这提高了交付解决方案的效率和及时性。或者,可以实施订单流拍卖机制,其中解决者向用户出价,将部分订单流价值返回给用户。
- 为了确保 intent 的有效性并结算交易,SUAVE 使用了预言机和 SUAVE 验证者。预言机提供外部数据以验证 intent 的执行,而 SUAVE 验证者验证并在 SUAVE 链上结算 intent。
- 用户通过与 Anoma DApps 进行交互,表达他们的 intent,定义最终状态或应该具备的属性。
- Anoma 欢迎各种类型的 solver,每个 solver 专注于不同类型的应用。这些 solver 监视与他们的兴趣和目标相一致的内存池。根据他们的具体关注点,他们可能观察所有 intent 或 intent 的一个子集。
- solver 运行求解算法,利用他们在可互换代币(FT)交易或计算滚动状态等领域的专业知识。solver 还负责匹配 intent。他们接收意图并生成部分或完全匹配的交易。solver 确定何时匹配、部分解决的收费标准以及如何处理多余部分。一旦 solver 形成一个完全平衡的交易,他们将其提交给 Anoma 生态系统的内存池节点。
- solver 的选择可以受到其高效且及时完成任务的能力的影响,遵循「先到先得」的原则,即首先完成任务的 solver 会被选择。
- 来自不同 Anoma 协议的验证者运行 Anoma 虚拟机(VM)来完成 intent 的执行和验证。Anoma VM 通过检查所有相关的有效性谓词(声明式智能合同)是否得到满足,确保 intent 的执行完整性和有效性。对 solver 的资金分配和奖励基于 Anoma VM 执行和验证 intent 的结果。


- 用户表达 intent、存入资金并授权
- intent 非常具有表现力;普通用户可能需要帮助将他们的 intent 转化为代码。这可以通过 dapps/钱包通过提供用户友好的界面来提取这部分来实现,或者可能有一个聚合器提供一个通用界面来表达任何 intent,如借助人工智能的谷歌搜索。
- intent 发送到相关的 intent 内存池
- 请注意,Anoma 可以有多个内存池,为不同类型的 intent 提供服务,并受到不同的 DApps 或协议的信任。
- solver 进行链下模拟并竞争解决 intent
- 在 SUAVE 生态系统中,solver 既具有解决能力又具有构建区块的能力。一些 intent 涉及通过构建区块来解决跨链任务,例如跨链 MEV 操作。熟练的区块构建者在构建有价值的区块和更快完成任务方面具有优势。其他 intent 可能主要需要算法方面的专业知识,例如优化跨多个链的流动性聚合。这些 intent 可能更依赖于特定类型的 solver,而不是广泛的区块构建能力。
- 在 AA 生态系统中,捆绑器执行模拟和捆绑任务。然后,捆绑的 intent 可以发送到公共内存池供搜索者解除捆绑并有可能进行抢先操作,或者直接发送给受信任的构建者。在早期阶段,小额捆绑可能更有效,因为可以将它们私下发送给受信任的构建者,以避免潜在的损失。随着 4337 钱包和其他具有足够订单流量的参与者进入市场,他们可以像搜索者一样运作为捆绑器。
- 验证 intent 的完成
- 目前存在各种各样的验证方法,每种方法都具有自己的一套权衡。使用智能合同进行验证虽然可靠,但往往缺乏可伸缩性,因为不同的 intent 需要特定的验证逻辑和代码;依赖预言机进行验证会引入与预言机相关的风险,但提供了与多个链的无缝集成的优势;利用 Anoma 虚拟机需要 intent 应用程序采用 Anoma 框架,但提供了验证各种 intent 的能力。
- 总之,在以 intent 为中心的世界中,订单流与以交易为中心的世界不同:用户签署并授权交易 vs 用户有更多选择来表达自己的 intent;存在用于不同目的的单个内存池与多个内存池;Dapps 负责执行 vs 一个解决者选择加入的新角色,并以竞争的方式解决问题;不同链一一结算 vs 多个链可以一起结算(新型跨域执行)

- 像 SUAVE 这样的新链可以进行更频繁和更具成本效益的 Intent 结算。
- Anoma 结构链支持新的虚拟机,可以高效、普遍地解决 Intent 验证问题。
- L2 或更多的可扩展链适用于执行与 Intent 逻辑表达、验证和结算相关的低成本计算,因为由于 Intent 自身的表达性,整个过程需要耗费大量计算资源。
- 隐私性在 Intent 领域是至关重要的,它可以防止如抢先交易等恶意的 MEV 问题,并使更多的订单流价值被竞价回给用户/dapp。此外,包含隐私特性还可以支持需要更强隐私保护的 Intent。
- SUAVE 采用 SGX 作为短期解决方案,而 Anoma 则支持零知识证明(ZK)和分布式密钥生成(DKG)加密。
- Oracle 现在有了一个额外功能:协助验证 Intent 的实现状态。
- 通用标准有助于减少不同类型的 Intent 带来的碎片化问题;Solver 可以更容易地将不同的支持 Intent 的应用程序整合在一起;dapp 和开发者更容易扩展到 Intent 系统。Intent 还能避免重建公共 Intent 基础设施。
- 自定义游戏策略:Intent 允许玩家定义和执行自定义游戏策略。他们可以用自己的方式表达游戏目标和行动,并让 solver 在游戏内执行这些 Intent。这为玩家提供了更多的自由和控制权;
- 支持经济系统:通过 Intent,玩家可以参与游戏内经济系统,如交易游戏资产、提供流动性或参与借贷。通过表达他们的 Intent,玩家可以在游戏内进行类似于 DeFi 的金融操作,获得经济奖励。