# 隐私支付网络Anoma 架构概述

By [xiaobushou](https://paragraph.com/@xiaobushou) · 2023-03-08

---

**介绍**

在以物易物的经济体系中，最简单的易货形式是双方见面然后互相交易，这需要需求的双重巧合，还要求双方都有时间，以便转移相关商品。 Anoma 提出了一种数字易货方案，可以促进商品、服务或仅受计算约束的数字资产的交易。 Anoma 既不需要需求的双重巧合，也不需要使用特定货币。相反，该方案只要求所有各方都希望进行交换，最多 n 方都可以在该数字易货方案中进行价值交换。

为了使数字易货交易机制发挥作用，Anoma 要求用户能够找到彼此并进行匹配，以执行后续交易。 Anoma 的意图八卦网络（The intent gossip network）包含两个关键部分：帮助用户传达意图的意图八卦节点运营商，以及运行软件以检查这些意图是否相互匹配的配对节点运营商，只有这样才能创建交易并匹配他们。

**基本概念**

交易

常规交易是区块链的基础。通过去中心化计算机网络传输，可以验证新交易并将其提交给验证器。然后，验证者使用密码学将这些块链接在一起，从而创建无法更改或撤销的永久交易信息的历史记录。此交易可以很简单，比如爱丽丝用 1 个比特币换取 5 个以太坊，也可以包含更复杂的意图。

意图

虽然每个区块链都有交易功能，但没有一个使用意图。 Anoma 的独特之处在于意识到，意图是一种表达用户愿望的方式，可以描述他们想要什么——他们想要买卖什么，以及对应约束条件，这些条件具有不同程度的复杂性。条件由任意数据定义，允许用户表达需求，范围从特定代币（例如 BTC）的销售订单，到特定体验（例如在巴黎乘船游览），再到仅从已将碳成本纳入其中的制造商那里购买他们的供应链。

![图 1：用户想要在 Rust 中用 1 BTC 换取 10 ETH 。](https://storage.googleapis.com/papyrus_images/5f275f10f8b16772960097d7cdc2ed5eb4c306562ea070fa6267703136eebbd8.png)

图 1：用户想要在 Rust 中用 1 BTC 换取 10 ETH 。

例如，用户拥有 1 个 BTC，但如果可以收到 10 个 ETH作为交换，则愿意持有 0 个 BTC，那么他们可以写一个意图声明（如图 1 所示）。和许多类似的其他意图一起，这个意图被“八卦”，通过意图八卦节点传达，这些节点传达代表用户意图的数据。意图由配对节点侦测，并试图找到两个或更多可以匹配的意图。在上述情况下，这将是一个愿意用 1 BTC 换取 10 ETH 的意图。因为媒人负责寻找其他匹配的意图来创建有效的交易，所以意图必须用对媒人节点易读的代码编写。

**撮合节点运营商的作用**

撮合节点运营商的作用本质上是运行软件来查看意图是否相互匹配。配对节点从包含本地意图子集的八卦层中获取意图，该子集由所有已知和可匹配的有效意图组成，并在创建和提交相应的交易前找到匹配的意图。如前所述，媒人必须理解意图，因此特定的媒人算法与意图的特定格式相关联。这些资产被编码到一个特定的模式中，这使媒人能够轻松解码意图以从意图八卦网络中发现匹配项。

配对节点是一种可以支持易货交易的新颖功能。媒人的后续更新不仅允许交换代币，还允许交换 NFT，这将意味着在当前意图之上添加一种语言以表达更多规则。例如，如果用户 Alice 想要出售 BTC 并购买 CryptoKitty，则可以以指定 Alice 仅在小猫有蓝眼睛的情况下才能匹配的方式编写约束。

另一个例子是多资产交换，它表达了人们想要购买的资产之间的限制，例如音乐会门票或航班，或者音乐会门票和航班。在这种情况下，用户可以编写意图，指定他们只想要和音乐会或者航班在同一天的比赛。撮合节点运营商运行的软件允许所有这些意图相互找到，包括使 n 方能够被匹配的部分意图。

到目前为止，大多数公共区块链协议的设计都不包含类似媒人这样的组件，它所提供的灵活性对于充分利用 Anoma 的功能至关重要。 Anoma 协议从根本上不同于现有的去中心化交易所 (DEX) 协议（建立在智能合约平台之上），在后者中，这种灵活性允许更多面向点对点和无需许可的交易。限价订单簿，例USD 兑 ETH 的市场，意味着在交易所和 DEX 协议上交易的东西是先入为主和预定义的。在 Anoma 上不是如此，这些交易是用户自己定义的，这意味着人们可以为以前从未交易过的东西创建一个活跃的市场。媒人的存在允许协调价值的数字表示，如果“媒人 1”无法匹配，他们可以等待并将意图保留，或者传播它并让其他媒人节点匹配意图，为匹配收取少量费用。撮合节点运营商也可以运行多个撮合节点，每个节点理解不同的主题，以便更有效地匹配意图。

**媒人流程**

在媒人流程之前，相互连接的意图八卦节点创建了意图八卦网络，该网络了解所有订阅它们的媒人。这包括这些各自的媒人感兴趣的主题列表，以及寻找这些主题的意图，例如 BTC 或 CryptoKitties。意图八卦节点也保留所有意图并将它们分发给与每个主题对应的媒人。在此过程之后，不同的媒人从他们选择的主题中接收意图，例如指定用户希望交易超过一定数量的 ETH 的意图，从而启动媒人流程，如图 2 所示。

![](https://storage.googleapis.com/papyrus_images/56906b42a5c80d474b7c7717efbc6d2bbb4f6e3cd92484629ac1f42aeb1923b8.png)

媒人进程和节点由四种不同的服务组成，从 RPC 开始，它控制媒人与八卦节点通信的方式，反之亦然。如果意图八卦节点收到一个带有媒人想要的主题的意图，RPC 会收到意图并将其发送到下一个服务，即过滤器。过滤器检查意图的有效性，一个无效的例子是用户没有足够的 BTC 以供出售。通过消除无效意图，媒人流程更加高效，确保进入分类帐的所有交易都是正确且可能的。如果不检查匹配交易的完整性，如果包含在分类账中的交易无效，媒人将面临失去gas费的风险。操作员可以修改过滤器，允许操作员将匹配器设置为仅匹配，例如，超过一定数量货币的大量意图，或仅匹配具有少于 3 个约束的意图，从而使计算更容易。

过滤器之后是匹配器，提供实际匹配意图的服务。匹配节点中的匹配器连接到状态，这是匹配器存储所有内容的地方，包括意图和数据结构。如果找到匹配，媒人将交易发送到账本节点，离开媒人进程。如果媒人从状态中提取的意图无法找到匹配项，则可以将其保存到状态或将其发送回意图八卦节点进行重播。

**结论**

媒人是意图八卦网络中的第二个拼图，负责将意图八卦节点传播的意图匹配在一起，以发现交易对手和进行易货交易。配对节点运营商可以灵活地根据自己喜欢的主题定制和运行多个配对器，为成功配对赚取少量费用，并成为用户需求和愿望的促进者。媒人的作用是 Anoma 发展不可或缺的一部分，增加了寻求交易的用户的可访问性。

---

*Originally published on [xiaobushou](https://paragraph.com/@xiaobushou/anoma)*
