Delphi Digital:从 Anoma 架构角度理解“以意图为中心”

Delphi Digital
2023-09-01 13:09:18
收藏
一些人将意图视为交易的新术语,主张以用户表达的意图为核心进行执行,简化用户与区块链交互的复杂性,实现用户想要的目标,而不需要详细的中间步骤规定,强调意图是声明性的。那么意图到底是什么呢?

作者:Delphi Creative

翻译:火火,白话区块链

 

什么是 Anoma?Anoma 不是区块链。或者,更准确地说,不仅仅是区块链。让我们查看预发布的 Anoma 白皮书以获取一些提示。

「可编程结算架构无法实现交易对手发现和解决,而这两者都是构建大多数交互式多方应用程序所必需的。可编程结算的架构限制导致当代应用协议至少具有一个 Web2 组件,该组件成为中心化点。我们推出 Anoma,一个用于全栈去中心化应用程序的统一架构。Anoma 的设计遵循以意图为中心和同质架构 / 异构安全的原则,共同构成了构建去中心化应用程序的声明性范例。Anoma 的架构还公开了新颖的原语,例如可组合隐私,它使应用程序能够处理透明、屏蔽和私有的状态和操作;以及多链原子结算,允许具有不同安全偏好的用户和应用程序获得原子性。」

如果上面突出显示的术语目前对您来说意义不大,请不要担心;这就是它们被突出显示的原因。我们向您保证,当我们熟悉 Anoma 架构及其旨在解决的独特问题时,它们将开始变得更有意义,这也是本报告的目的。由于 Anoma 范围广泛,我们将此报告分为三个部分,作为单独的报告发布。 

1)意图、交易对手发现、求解器

2)应用程序(意图已经存在,为什么我们需要 Anoma?)

3)Typhon、Chimera 链和多链原子结算

1、意图不仅仅是一个模因

让我们从以意图为中心开始。 

虽然以意图为中心的 Anoma 架构已经开发多年,但意图对于许多人来说还是一个新术语。据我们观察,意图还没有一个规范的定义。有些人认为意图与交易没有太大区别,甚至只是限价单的一个新术语。这在所有单词都是由组成的加密空间中很常见。

好消息是,我们确实对用户可以用意图做什么达成了一些粗略的共识。以意图为中心的执行通常被理解为一种范例,其中用户表达他们想要的东西并依赖第三方代理和中介来实现它。为了更清楚的表述,用户保留对其资产的托管权,但与区块链交互的复杂性被从用户中抽象出来,并推给了这些复杂的第三方代理。这里的一个主要动机是简化用户体验。 

意图被认为是声明性的,而不是命令性的。在以意图为中心的执行中,用户可以定义他们想要的内容,而无需规定实现目标所需的中间步骤。意图只关心「什么」,而不关心「如何」。

 

虽然 Anoma 意图符合这个粗略定义,但 Anoma 对意图的构成有自己的正式定义。

异常意图被定义为对状态空间偏好的具有约束力的承诺。简而言之,它们是经过签名的链下消息,授权一个或多个未来状态。例如,[-2000 USDC,+1 ETH]意图的签名者声明「我授权任何未来状态,即我多 1 个 ETH,少 2000 USDC,我并不关心这种情况会如何发生。」

用户请求的 ETH 可能来自单一方或多个独立方。用户对他们的交易对手是谁或者他们可能有什么动机不感兴趣。

事实上,无法保证用户会得到他们想要的东西。也许永远不会有交易对手相信他们。用户已签署了对某个州的首选项,但该州尚不存在。为了实现它,用户的意图需要满足具有兼容偏好的其他意图并得到解决。在最简单的情况下,我们可以想象我们的意图[-2000 USDC, +1 ETH]与它的精确镜像[+2000 USDC, -1 ETH] 相匹配。 

在实践中,意图匹配并不需要需求的直接重合。我们真的不需要另一个人以我们完全相反的方向进行相同规模的交易。正如我们稍后解释的,具有兼容偏好的意图可以通过涉及许多独立交易对手的许多不同、复杂的方式来识别和匹配。此过程称为交易对手发现和求解,由运行特殊算法的称为求解器的无许可代理执行。

从用户的角度来看,这一切看起来就像一个魔盒。用户不知道也不关心求解的中间步骤。如果找到成功的匹配,意图可以在链上结算并由用户验证(稍后将详细介绍结算)。一旦验证通过,用户将直接「跳转」到他们所承诺的未来状态,否则他们将保持当前状态。 

资料来源:Anom 文档

2、Anoma 意图与以太坊交易

让我们看看 Anoma 以意图为中心的执行与我们在以太坊中习惯的基于交易的执行相比如何。请注意,我们使用 EVM 作为示例,但一般说明适用于所有冯诺依曼 VM。 

回顾一下,在 EVM 中,交易并不强制要求未来的状态;他们授权执行路径。交易者将消息传递给持有一段代码和存储的智能合约。合约将消息作为输入并以逐步的 方式运行其代码。在执行结束时,它可能会调用其他一些合约来传递执行控制权。执行将持续进行,直到成功终止或耗尽 Gas。 

与只能导致二进制状态更改的 Anoma 意图相反,以太坊交易可以根据执行路径任意转换状态。执行路径由交易的执行顺序决定。执行顺序很重要!

 

我们花点时间反思我们的发现。下面,我们将以太坊交易的属性与 Anoma 意图进行比较。 

以太坊交易异常意图:

  • 循序渐进、命令式执行基于承诺的声明式执行
  • 授权执行路径授权未来状态
  • 最终状态取决于执行顺序执行顺序并不重要
  • 仅链上执行(执行和验证交错)链下执行,链上验证 
  • 结算有保障不保证结算 *
  • 交易对手已知交易对手未知
  • 状态改变是任意的状态变化是二元的
  • 不需要其他交易来结算需要其他意图来解决
  • 由用户结算由第三方代理结算

* 在没有兼容交易对手的情况下,可能无法找到链上执行路径。用户可以指定其意图的到期日期,以确保其意图在这种情况下失效。

到目前为止,我们已经对 Anoma 意图与以太坊交易有何不同有了良好的基础。为了真正了解它们的强大功能,让我们看看它们可以实现的大多数用例。 

3、意图不仅仅是限价订单

我们的示例[-2000 USDC, +1 ETH]意图是限价订单;它仅承诺交易的兑换价格。虽然限价单是意图的一个重要用例,但它们只是其中之一。意图可以表达任何形式的广义承诺。例如,意图完全有可能通过承诺根据 xy = k 曲线进行交易来模拟 AMM 订单。事实上,意图可以是程序,甚至可以是编码相当复杂的承诺的整个算法。这些可以是有条件的或无条件的。它们还可能依赖于其他承诺(所谓的高阶承诺),为强大的应用程序铺平道路,否则这些承诺是不可能的。

下面,我们看一下意图可以启用的一些示例用例。

1)组合拍卖:

做市商或高级用户可以根据自己的独特需求使用意图进行各种富有表现力的出价:

  • 经济互补:以 10 美元的价格购买两件商品 A 和 B,每件商品只需 4 美元,因为它们是互补品。
  • 经济替代品:用一些 ETH 购买尽可能多的 USDC 或 USDT。
  • 交易对手歧视:最多出售两个单位的 A,交易对手 C1 的定价为 10 美元,C2 的定价为 9 美元,C3 的定价为 8 美元。

富有表现力的出价更好地接近市场中高级用户的动机。它可用于任何类型的市场(金融交易、电网、物流、碳信用额等)以提高效率。从历史上看,表达性投标场地的一个显着挑战是由于计算复杂性而无法匹配多维投标。随着深度技术和人工智能的进步,我们可能会看到这在未来几年内不再是问题。

1)众筹:众筹是一个有趣的意图用例,因为它涉及许多独立代理。意图可以实现许多很酷的用例:

  • 降低风险的投资:只有在收到超过 X 美元的承诺时才承诺为项目提供资金 。
  • 用户预先承诺向获奖项目捐款,但不知道会是哪个项目。
  • 同侪压力:只有当您最喜欢的影响者也承诺资助一项活动时,才承诺资助该活动。 

2)P2P 借代:贷款人选择可接受的抵押品、LTV、利率和报价资产等规格,并与借款人进行匹配。当借款人还清抵押品时,贷款人可能仍然愿意放贷,在这种情况下,解决者可以代表他们找到另一个交易对手。贷方可以自带预言机,坏账可以隔离给某些方。在这个模型下,什么是 DeFi 借代协议、NFT 借代协议或其他领域没有区别;任何资产都可以借出 / 借入。

3)OTC NFT 交易:NFT 的场外交易通常围绕 NFT 与 NFT 的交换,并涉及特征。例如,用户可能愿意以「x」ETH 的价格出售稀有(且非流动性)的 NFT,但如果具有某些特征,他也会接受 2 个相同的集合。这不是您可以轻易放在链上的偏好,因此交易对手发现通常涉及 Discord DM,并在执行过程中使用户面临网络钓鱼 / 诈骗风险。

4)自动操作: 

  • Good After Time (GOAT) 订单:例如,仅当价格在指定范围内时,才在未来的特定时间点购买 Token。
  • 订阅:即用即付模式,用户承诺在预定义的时间段内每单位时间支付固定金额。
  • MTCS 也称为债务清算,是一种独特而强大的技术,可节省经济体的流动性。

MTCS 的想法很简单。如果 Alice 欠 Bob 1 ETH,Bob 欠 Greg 1 ETH,Greg 欠 Alice 1 ETH,那么实际上没有人需要任何「钱」来履行他们的义务。我们所需要的只是认识到总义务形成一个闭环;所有债务都可以相互抵消并清算。

同样,在实体经济中,公司经常承担交易义务。MTCS 承认一家公司的应付账款是另一家公司的应收账款。理论上,只要能够识别贸易图中的这些循环,公司就可以通过相互抵消来清除自己的义务。这减少了他们对现金流的担忧并提高了经济的生产率。MTCS 已在某些经济体中部署,研究表明可节省大量流动性。还值得注意的是,MTCS 是协作金融(简称 CoFi)这一更广泛运动的一部分。 

未来,意图和解决器可以使 MTCS 或类似技术让公司能够清算其义务并在链上进行结算,而无需依赖集中式清算所。 

1)任何多域和 / 或隐私保护应用程序:

  • 多域:以太坊用户想要在 Stargaze 上购买 Bad Kids NFT。这条路径有许多步骤、钱包、研究开销、运营(即桥接和包装资产)风险,并涉及跨越两个生态系统的 4 个区块链。我们将在提丰和奇美拉链部分深入讨论这一点。
  •  隐私保护应用程序:意图适合广义的隐私保护计算。通过意图,我们可以构建私有多方易货、私有 DAO 等。我们将在本部分后面介绍意图的隐私方面。

4、交易对手发现与解决

Anoma 意图消耗并创建一些「资源」。有点过于简单化了,在我们的意图示例[+1 ETH, -2000 USDC]中,我们可以将创建的资源视为 1 ETH,消耗的资源为 2000 USDC。当意图消耗和创建的相同类型的资源不相互抵消时,意图被视为不平衡。要通过平衡检查,对于所有涉及的资源类型,创建的资源总和必须等于消耗的资源总和。

从技术上讲,这种余额检查是区分 Anoma 意图和 Anoma tx 的唯一因素(不要与以太坊 tx 混淆)。简而言之,在 Anoma 世界中,平衡的意图被称为,你猜对了……交易。按照同样的逻辑,Anoma 意图只是部分 Anoma 交易。

意图由 p2p 意图八卦网络中的求解器组合。当两个 Anoma 意图组合时,它们会产生一个复合意图,这是另一个意图,其资源是其组成意图的资源的聚合。只要求解器愿意,意图就可以相互组合。最终,求解器形成一个通过「余额检查」的交易, 此时他们可以选择在链上结算。 

下面,我们看到一些独特的方式可以匹配意图以形成完全平衡的交易。

  • 解决者带来自己的流动性:解决者通过充当接受者成为交易的对手方。
  • 部分填充:出售的 Token 由许多独立方集体购买。
  • 直接镜像:两个意图是彼此直接相反的。 
  • 环形交易:即使没有直接的奶牛存在,也可以解决意图。例如,3 个意图会产生平衡的交易,即使没有一对意图满足彼此的偏好。 

 

5、求解器激励、审查和 DoS 抵抗

实现「既能抵御 DoS 又能抗审查」的网络非常具有挑战性。为此,Anoma 的意图八卦层被设计为默认进行路径验证;所有八卦消息均由发送者节点签名,形成一条签名链,这样可一直追溯到其发起者。路径身份验证在 DoS 和抗审查方面发挥着至关重要的作用。首先,我们扩展了审查制度的抵抗力。 

在大多数情况下,解决者很可能是寻求利润的代理人。他们执行并结算意图以换取费用,而费用以结算为条件;意图包含费用,只有当它们在链上结算时,解决者才能收取这些费用。这创造了一个竞争环境,解决者相互竞争,成为第一个解决意图的人。求解器竞争是有益的并且是可取的,因为它提高了用户的执行质量(速度、价格等)。 

另一方面,如果激励措施处理不当,竞争可能会失控,从而刺激网络中的贪婪腐败行为。首先,节点可以开始「囤积」意图,以在解决意图方面获得竞争优势,这会阻碍用户的审查制度。路径认证可以通过为鼓励意图广泛传播的激励机制奠定基础来优雅地解决这个问题。 

可以参考下面的例子:

求解器观察到 2 个意图,[+2 ETH, -4 NFT]和[-1 ETH, +2 NFT],虽然兼容,但并不能形成完全平衡的交易。为了形成完整的解决方案,求解器需要找到其他兼容的意图。为了提出完整的解决方案,求解器可以花时间观察新的传入意图。然而,这是有风险的,因为可能有其他求解器处理相同的意图。如果解决方案由另一个解决者解决,他们可能会失去收取任何费用的机会。

路径身份验证提供了一种替代方案,允许节点向网络证明其努力。相反,节点可以提出部分费用索赔,并将其部分解决方案[+1 ETH,-2 NFT]传递给其他节点,以便他们继续解决过程。最终解决后,他们每个人都可以因其在八卦和解决问题上的贡献而获得公平的份额。通过这种方式,意图八卦层可以被想象为激励数据可用性层。人们可以想象,即使存在具有深度流动性和闭源算法的巨型求解器,较小的求解器也可以尽自己的一份力量并赚取费用,继续为网络的审查制度做出贡献。

路径身份验证对于抵御 DoS 也至关重要。在结算有条件费用的情况下,求解者花费计算资源而没有任何获得报酬的保证。回顾以太坊中账户抽象(AA)的历史,我们知道这为廉价的 DoS 向量打开了大门。路径身份验证在保护节点免受恶意行为者侵害方面可以发挥重要作用。也就是说,节点可以跟踪其对等方(以及用户)的行为。随着时间的推移,他们可以建立自己的本地信任图来决定网络中信任谁以及信任程度。 

6、信息流控制

加密领域的信息控制仍然是一个 未解决的问题。一般来说,用户缺乏控制向谁披露哪些信息的能力。在大多数情况下,所有用户活动信息都会暴露给所有链上观察者。这从根本上限制了去中心化应用程序可以向企业和零售用户承诺的用例。

对于那些有兴趣全面了解隐私状况的人,我们推荐我们的《人人都需要隐私》报告。

Anoma 架构通过其称为 Taiga 的统一执行环境 (EE) 为新颖的隐私保护应用程序铺平了道路。要理解 Taiga,我们首先必须了解信息流控制的含义。

在没有观察者的情况下,隐私是一个毫无意义的概念。当我们谈论隐私时,我们首先要定义观察者是谁。在我们的背景下,观察家分为两个阵营。我们可能正在与链上活动的观察者(几乎可以是世界上的任何人)或链下代理(例如求解器和八卦节点)打交道。此外,我们关心的信息可能是关于「谁」,即意图签名者的身份,或「什么」,即意图中表达的功能和 / 或数据。 

基于此框架,Taiga 定义了三种类型的意图:透明、屏蔽和私有。屏蔽意图向所有人隐藏「谁」,但向链外 ZK 证明者暴露「什么」。私人意图更进一步,利用各种隐私保护解决方法(TEE、MPC、阈值 FHE 等)来向解决者隐藏有关「内容」的某些信息。

Taiga 是一个提供可组合隐私的统一执行环境。可组合隐私意味着开发人员可以发布应用程序,并让用户通过透明、屏蔽或私有意图在同一应用程序中相互交互。这使得隐私成为用户的选择,与当前隐私始终是应用程序 / 基础设施选择的现状形成鲜明对比(DEX 要么是私有的,要么是透明的)。 

从直觉上看,交易对手发现和隐私之间存在根本性的权衡。隐藏有关「内容」信息的意图可以得到更公平的处理,但可能更难找到兼容的交易对手。因此,市场可以根据执行质量对透明、屏蔽或私人意图解决进行不同的定价。

还值得知道的是存在一些研究挑战。特别是,虽然求解器可以将屏蔽意图与透明意图相匹配,反之亦然,但将它们与私有意图组合的可行性仍然是一个开放的研究问题。

如今,大多数(如果不是全部)隐私项目只关注结算层的信息控制。这是可以理解的,因为这是迫切需要的。我们首先希望用户能够向观察链上活动的观察者隐藏某些信息。然而,这样做时,项目往往会牺牲交易对手发现层的信息控制。相反,Taiga 既注重结算层的信息控制,又注重交易对手发现层。 

结算层的隐私通常通过 ZKP 屏蔽链上数据来实现。然而,ZKP 在隐私方面有很大的限制。它们通常仅在特殊情况下有用,即用户证明他们独家拥有的某些状态的属性。这适用于支付或身份相关的应用程序,但不适用于多个用户相互交互的应用程序。

通常,多用户应用程序通过引入共享的 ZK 证明器来解决此限制,该证明器收集所有私人用户数据,对其执行一些计算,并代表用户在链上发布计算的 ZK 证明。这充其量只能提供 Web2 式的隐私。虽然用户活动对链上观察者是隐藏的,但它完全暴露给单个、共享、集中式求解器;即 ZK 证明者。它还可能给未经许可和审查制度带来新的挑战。 

Taiga 在这方面提供了一些独特的东西。由于意图不假定立即解决,因此它们可以由独立求解器通过许多部分步骤执行。求解器可以将一些屏蔽意图与其他一些屏蔽 / 透明意图进行匹配,并将此匹配的 ZK 证明传递给其他求解器,以便它们继续求解过程。独立各方在网络边缘生成的证明可以相互组合。  

我们最终得到的架构中,没有任何一个观察者能够全面了解导致交易结算的部分执行情况。如下图所示,其中三个解算器各自对某些意图具有局部可见性,但没有一个解算器具有完全可见性。

 

最后但并非最不重要的一点是,Anoma 还专注于结算层的信息控制。事实上,Anoma 生态系统中推出的第一个应用程序将是 Namada:隐私保护结算层。Namada 的独特产品是一种独一无二的多资产屏蔽池 (MASP),其中所有可替代和不可替代资产都可以共享一个匿名集。反过来,这允许这些资产的所有者形成一个大的匿名集,以保护彼此的隐私。Namada 很快将作为兼容 Cosmos 和 IBC 的应用链推出,旨在成为多链隐私层,最初重点关注以太坊和 Cosmos 生态系统。

 

7、意向结算

Anoma tx 生命周期如下所示:

用户签署意图 → 意图在 p2p 层中传播 → 求解器匹配兼容的意图并形成 tx(交易对手发现和解决)→ tx 在链上结算。在本节中,我们将仔细研究结算。 

为了进行交易结算,需要在链上进行验证。验证是通过称为谓词的链上函数完成的。Anoma 中的每个帐户(用户和 Token)都有一个关联的谓词,它限制了该帐户授权的可能的未来状态集。概念化谓词的最简单方法是将它们视为可能对其银行帐户或智能合约钱包施加的限制。

  • 白名单 / 黑名单:仅向 X、Y、Z 账户发送资金,仅进行 ETH 转账等。
  • 速率限制:每天不得超过 X 量。
  • 访问控制:X、Y、Z 帐户中的 2 个必须签署转账。

意图和谓词在功能上相似;他们都承诺对状态空间有一些偏好。主要区别在于,意图作为偏好的短暂表达存在于链外,而谓词作为偏好的持久表达存在于链上(尽管它们可以随时更新)。它们共同构成了一个两层授权方案。交易必须满足两者才能成功在链上结算。

谓词的主要作用是确保原子(全有或全无)结算。为了使交易能够解决并推进链上状态,交易必须满足其涉及的所有 账户的谓词。

例如,当且仅当 Alice、Bob、ETH 和 USDC 的谓词全部满足时,Alice 和 Bob 之间的 ETH<>USDC 互换才能成功结算。如果状态转换不能满足这些涉及账户的 VP 中的任何一个,则状态转换将会失败,并且其中任何一个账户的链上状态都不会改变。简而言之,如果所有相关方都竖起大拇指,状态转换就会成功,否则就会失败。

8、预期 VS.智能合约

预期和智能合约在某些方面相似,而在其他方面则不同。虽然两者都是链上的,但代码预期只关心验证而不关心执行。它们不执行逐步的命令式执行。给定一个交易,他们只需检查是否满意并返回一个布尔值;要么授权,要么不授权。 

在这方面,意图和预期可能为用户与应用程序交互提供了一种更安全的方式。用户不再需要无限制地访问智能合约并推理其执行路径中的操作码。

两者之间的另一个显着区别是预期词运行的函数不拥有任何状态。由于它们是纯函数,因此验证始终可以完全并行。 

9、开放研究领域

声明式执行有许多值得进一步探索的开放研究领域。当我们完成系列的第一部分时,我们在此向您留下一些我们即将离开的想法。

  • 资源定价: 正如我们所看到的,结算有条件费用可能使节点难以正确核算其消耗的资源。除了 Token 门控和费用之外,我们还可以看到未来会出现新的信任网络型女巫抵抗技术。用户的链上历史、身份和声誉将在这里发挥重要作用。 
  • 用户界面安全:随着执行转移到链外,前端和钱包将承担更多责任,确保用户按照预期准确签署其意图。因此,用户界面将在安全方面发挥更加重要的作用。他们将如何适应还有待观察。盲签名硬件钱包能成为过去吗?
  •  求解器 DAO:求解器可能希望在求解过程中相互协调是有原因的。他们可以在聚合自己的流动性方面找到价值,为解决问题提供更好的保证,并减少解决交易的浪费性失败尝试。在某些情况下,求解器可能希望通过形成共识协议和 / 或在彼此之间运行 MPC 来相互协调。求解器网络的拓扑将相应形成。

10、结论

至此,我们的 Anoma 系列的第 1 部分就结束了。我们在第 2 部分中的重点将放在应用程序层上。我们将重点介绍著名 dApp 转向基于意图的架构的日益增长的趋势。我们还将分析 Anoma 架构对于这些现有 dApp 和即将推出的新 dApp 的独特增值。

链捕手ChainCatcher提醒,请广大读者理性看待区块链,切实提高风险意识,警惕各类虚拟代币发行与炒作, 站内所有内容仅系市场信息或相关方观点,不构成任何形式投资建议。如发现站内内容含敏感信息,可点击“举报”,我们会及时处理。
ChainCatcher 与创新者共建Web3世界