> For the complete documentation index, see [llms.txt](https://cmdefi.gitbook.io/cmdefi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cmdefi.gitbook.io/cmdefi/home/defi-qu-zhong-xin-hua-jin-rong/uniswap-unichain.md).

# Uniswap - Unichain 🦄

Unichain 是一个基于 OP Stack 的 L2 扩展解决方案，采用Optimistic Rollup，目标成为全链 DeFi 流动性中心枢纽，一个超级应用正在构建应用链来回收协议本身所创造价值。

其核心创新有

* 可验证区块构建：与 Flashbots 合作开发，快速处理交易，捕获 MEV 并保护用户交易。
* Unichain 验证网络：解决单一排序器中心化风险，实现“可验证排序”，更快的经济最终性。
* 意图驱动的交互模型：用户只需关心自身的需求和意图，由系统自动选择最优路径执行跨链交互，无需关心链间底层执行的复杂性。

### 1 可验证的区块构建

Unichain 的可验证区块构建（Verifiable Block Building）过程依赖于与 Flashbots 合作开发的 [**Rollup-Boost**](https://writings.flashbots.net/introducing-rollup-boost)。主要解决三个问题：

* 减少MEV风险
* 提高交易速度
* 提供交易回滚保护（降低用户因交易失败而支付高额费用的风险）

#### 1.1 工作原理

1. Unichain 将区块构建与排序器（Sequencer）的角色进行分离，由 **Verifiable Block Builder** 来负责区块构建。该构建器运行在可信执行环境 TEE 中（一个安全硬件环境，能够在不暴露内部数据的情况下执行程序，并生成可验证的执行证明），使得外部用户可以验证区块构建是否遵循指定的规则。
2. Flashblocks 区块预确认机制，相当于提前确认即将包含在区块中的交易集合。每个区块被分为多个 Flashblocks，这使得区块时间可以压缩到 200-250 毫秒，远低于当前大多数Rollup的区块时间。另外，在 TEE 环境中将强制执行每个 Flashblock 内的交易排序规则，这意味着用户和应用程序能够透明地知道交易的执行顺序，进而减少 MEV 操作带来的不公平性。
3. TEE 提供了 无信任回退保护（Trustless Revert Protection），通过在区块构建过程中模拟交易，检测并移除任何可能失败的交易。这可以避免用户因交易失败而支付不必要的费用。

总结来说，做了两件事情，先是把区块构建和排序两个角色分离，并在一个公开透明的环境（TEE）中去构建区块，增强了可验证性，同时提高了交易效率也减弱了MEV，然后在区块确认过程中引入了一个“预确认”机制，将交易提前包含在区块中，让用户和应用程序提前知晓，在度过预确认时间窗口后，进行最终的打包确认。

<figure><img src="/files/huy9XwCNti5U9DKgv7B1" alt=""><figcaption></figcaption></figure>

#### 1.2 Flashblocks 在安全性上的权衡

Flashblocks 的预确认机制看起来加速了交易确认的过程，这是否会对安全性产生影响？

预确认虽然加速了区块的确认过程，但**预确认不等于最终确认，**&#x5B83;意味着交易在被打包进入最终区块之前，用户可以提前知道这些交易将被包括在内。这有助于降低交易延迟，提高用户体验，但在这个阶段这些交易状态并没有被正式确认到链上，它不会改变区块链的区块确认流程，也不会饶过共识机制。

这里包含一个时间概念，就是控制预确认的时间窗口，预确认的区块信息在一定的时间窗口内可以被修改或调整，它不会完全消除对区块的验证和检测过程。这意味着如果检测到恶意行为或潜在问题，预确认的交易仍有机会被筛选和拒绝。

在白皮书中提到，Flashblocks 的预期区块时间是 **200-250 毫秒**。这意味着 Flashblocks 可以在这个时间段内对交易进行预确认。但实际的最终确认需要更多的时间，因为区块最终会被合并并与其他区块进行状态更新和提交，以保证整个链的状态一致性。

所以，预确认的时间窗口理论上是可管理的，它的长度直接影响到用户的交易体验以及流动性提供者的风险管理。更短的时间窗口意味着更快速的交易确认，但也可能带来更高的技术要求和网络压力。同时，时间窗口的长度也决定了在预确认状态下，交易是否有足够的时间进行回退处理，或者在恶意操作被检测到时，是否有足够的时间将其排除。

综合来说，预确认的这个时间窗口设置是为了在加快交易速度和确保网络安全性之间取得平衡。

{% hint style="info" %}
**在区块链的背景下，「终局性」可以分为不同的阶段：提交（Submitted）、确认（Confirmed）和最终确定（Finalized）。**

提交表示交易已经被广播到网络中并进入了内存池（Mempool）；确认意味着交易被打包进了一个区块，并被成功地添加到当前的链上；而最终性是指这个区块已经被多个后续区块所验证和巩固，达到了不可更改的状态。因此，区块链中的最终性是确保账本一致性和安全性的一个重要属性，它为用户提供了高程度的确定性，尤其是在涉及大额转账和复杂金融交易&#x65F6;**。**

**在以太坊中，终局性通过一种被称为「验证者投票」（Validator Voting）的机制来实现。**

每一个 Epoch（由 32 个区块组成的时间窗口）内，验证者会对当前和前一个 Epoch 的检查点区块（Checkpoint Block）进行投票，直到这些检查点区块达到三分之二（2/3）的多数共识为止。一旦某个检查点区块获得了三分之二的验证者投票支持，它就被视为 “被证明的”（Justified）。而当两个连续的检查点区块都被证明，并且它们之间存在超级多数链接（Supermajority Link）时，这些区块之前的所有区块将被视为最终确定（Finalized），无法被简单的重组（reorg）所影响。这种机制有效地防止了简单的分叉和攻击，因为要对这些最终确定的区块进行篡改，攻击者需要同时控制三分之二以上的验证者，这几乎是不可能实现的。因此，以太坊的最终性机制为其 PoS（权益证明）共识带来了很高的安全性。

**尽管以太坊的 PoS 系统提供了较为明确的终局性机制，但在不同的区块链系统中，实现终局性的方式可能有所不同。**

例如，乐观型 Rollup（Optimistic Rollups）和零知识 Rollup（ZK Rollups）作为以太坊二层扩展解决方案，它们的终局性定义和实现方式存在显著差异。乐观型 Rollup 依赖于欺诈证明（Fraud Proof）机制，因此在提交交易后需要等待欺诈窗口（通常为 7 天）关闭，才能达到终局性。相反，ZK Rollup 由于使用数学证明（Validity Proof）来验证状态转换的正确性，因此可以在本地生成证明后立即达到局部终局性，而无需等待欺诈窗口期。**对于 L2 网络而言，最终性通常分为「局部终局性」和「全局终局性」两个层次。**&#x5C40;部终局性指的是在 L2 网络内部达成的状态确认，例如，当 ZK Rollup 生成有效性证明时，L2 状态就可以被认为是局部确定的。而全局终局性则发生在 L2 网络将其有效性证明提交到以太坊主链，并等待主链区块的最终确定（约 13 分钟）后，才能被视为完全不可更改。
{% endhint %}

<figure><img src="/files/zZB0UNFRJlSuAAXKfUOB" alt=""><figcaption></figcaption></figure>

### 2 Unichain 验证网络

UVN（Unichain Validation Network）是 Unichain 为解决单一排序器架构潜在风险而设计的去中心化验证系统，结合 Flashblocks 和可信执行环境 TEE 实现了“可验证排序”。

#### 工作原理

1. 验证者是 UVN 中的节点操作员，需要质押 UNI 才能成为验证者，每个验证者都有权利参与验证过程，同时根据其质押的 UNI 数量获得相应的奖励。
2. Unichain 的区块被分为固定长度的Epochs（纪元）。在每个纪元的开始，当前所有验证者的质押数量会被快照记录，并计算出每个质押代币的奖励值。具有最高 UNI 质押权重的验证者会被选入活跃验证者集，这些验证者有权参与当前纪元的区块验证。
3. 活跃验证者运行 Unichain 节点需要保持在线状态，以验证排序器提出的区块。
4. 验证者对每个提议的区块进行验证，并生成区块的哈希值签名，将其发布到 UVN 的服务智能合约上，合约会对这些签名进行验证，并根据验证者的质押权重发放奖励。如果验证者未能在纪元内对区块进行有效验证，或者参与发布无效区块的签名，他们将会失去当期的奖励，并可能面临质押代币的惩罚。

总结来说，单一排序器风险主要体现在排序器中心化可能引发的区块不确定性、交易排序不公、以及对网络安全性和公平性的不利影响。

市场上出现过的解决方案就是引入去中心化排序器，并对其设计激励奖惩机制，比如Metis。而 Unichain 是通过去中心化验证（UVN）和透明排序机制（可验证的区块构建）两者结合，同时具备验证能力和排序的公开透明性，减轻了这些中心化带来的问题。两者各有特点，区别在于效率、成本和安全性之间的平衡，这里不展开做过多比较。

有些问题我们经常能够遇到，比如：单一排序器掌握了交易的排序权力，可以在打包交易时决定哪些交易先被打包进区块。这种权力使得排序器可能有机会进行最大可提取价值（MEV）的提取，即通过重新排序或插入自己的交易从其他用户的交易中获取利益。

### 3 意图驱动的交互模型

白皮书中提到了基于意图的跨链交互（[ERC-7683: Cross Chain Intents](https://eips.ethereum.org/EIPS/eip-7683)），它将用户的交易需求转化为可执行的“意图”（Intents），然后由系统自动选择最优路径完成这些意图，而不需要用户手动在多个区块链之间操作。

用户可以提交一个意图，将 100 个 USDC 从 Unichain 转移到以太坊主网去购买NFT。意图驱动模型会自动识别该意图，并选择最佳路径自动完成跨链交互等操作。这种设计使得跨链交易过程在无需信任中介的情况下实现自动化和去中心化，减少了第三方依赖和人工操作的风险，同时也实现了链抽象的最终目标 - 让区块链交互的复杂性与最终用户体验分离，用户只需关心自身的需求和意图即可，解决了流动性碎片化和链间交互体验割裂的问题。

### 4 终极目标：成为 DeFi 流动性中心

Unichain 选择了 OP Stack 阵营，在外部能够借助 Superchain 的互通性与主流 L2 进行深度整合，比如Base、Mode、OP Mainnet等等，在这些链之间，Unichain 可以轻松地利用意图驱动模型。（今年 8 月，Optimism 宣布采用 ERC-7683 跨链意图标准，旨在实现 Superchain 上的高速 ETH 和 USDC 转账）

那么对于不在 OP 阵营的链，ERC-7683 的标准化设计使得 Unichain 的意图驱动模型可以与其他非 OP Stack 的链进行交互。这是通过标准化的接口和智能合约结构（如 CrossChainOrder 和 ISettlementContract 接口）来实现的。不同链只要遵循这一标准，或某些跨链桥只要兼容这一标准，都可以解析和处理跨链意图，参与 Unichain 的跨链订单执行流程。

最终成为全链 DeFi 生态系统中的重要连接点，为用户提供广泛而快速的流动性访问。

### 5 UNI 的价值捕获

从目前的资料来看，UNI 将作为 UVN 验证网络验证者的抵押品，并获得奖励。

1. 可能打开的交易费用开关（这个争议很久了，迟迟没有打开，也面临监管等各方面的压力）
2. 区块链节点质押奖励（完成节点验证工作获得区块奖励）
3. MEV 捕捉与分配：Unichain 基于 UVN 验证网络和可验证的区块构建，拥有对交易排序的控制权，因此可以捕捉到大量的 MEV，同时也包括基于意图的跨链交易产生的MEV（例如，通过对跨链订单的执行路径进行优化，确保在交易发生时以最低的成本和最高的收益来完成订单），然而这些 MEV 价值是可分配的，可以回补给用户，也可以分配给质押UNI的验证者。
4. 跨链交互费用捕获：Unichain 的终极目标是成为DeFi流动性中心，而实现这一目标的关键因素就是 ERC-7683，它能够让用户无感的在多链流动性之间交互，接近于链抽象想要实现的效果。这种跨链交易和意图驱动的交互模型需要填充者（filler）和验证者的参与来完成交易。这些角色在处理跨链订单和结算时，可以从订单的手续费或结算费用中获得收益。

<figure><img src="/files/AQgIj9udmKjkzh7Endzb" alt=""><figcaption><p>ERC-7683</p></figcaption></figure>

与普通的L2相比，Unichain 的额外价值捕获在3和4。在推出 Unichain 之前，Uniswap 所产生的 MEV 被以太坊验证者和 L2 排序器捕获，随着 Unichain 的推出，这部分价值将转移至 Unichain。而跨链交互费用将取决于Uniswap在全链的交易量，以及当这种多链交易可以流畅地互通后是否带来交易规模的增长，原本需要经过跨链桥产生的费用也将全部流入 Unichain 本身。（当然，以上未考虑潜在的治理价值和未来生态系统增长带来的价值，这些是不可预测的）这是一种超级应用通过构建应用链来回收协议本身创造价值的独特手段。
