Time:2023-09-21 Click:117
原文标题:《Uniswap v4 Truncated Oracle Hook》
原文编译:Frank,Foresight News
Uniswap 协议是数百万交易者的重要加密基础设施,并通过提供深度流动性来支持超过 1.6 万亿美元的交易量,而 Uniswap v4 是该协议的最新演进版本,允许开发人员使用钩子(Hooks)在 Uniswap 之上构建自定义 AMM 功能。
之前我们写过关于时间加权平均做市商钩子的文章,今天我们将重点介绍「截断式预言机」(truncated oracle)。
众所周知,价格预言机(如 Uniswap v3 池中的预言机)可向其他 DeFi 协议传递有关流动性池的价格信息,而作为可选的 v4 钩子部署的截断式价格预言机,则可以降低大额交易对价格产生的影响,并使其更具预言机抗操纵能力,从而更安全地用于 DeFi 场景。
价格预言机是一种用于查看特定资产价格信息的工具。这些链上预言机是反映链上数据的去信任的价格源。Uniswap v3 价格预言机允许智能合约集成和使用链上定价数据,以跨 DeFi 创建更多可组合的应用程序。
Uniswap v3 价格预言机在构建时考虑了以太坊的工作量证明(PoW)机制,但在以太坊的共识算法转为权益证明(PoS)后,该预言机的一些关键假设发生了改变,从而使其安全性降低。
尽管在 Uniswap v3 上操纵高流动性池的价格成本太高,但价格预言机的重要性,也使其成为恶意行为者的攻击目标,攻击者有足够的经济动机来操纵价格预言机。
所以我们需要修改预言机以使其更具韧性,而截断式价格预言机使用不同的公式来计算价格,并可以提供更可靠且不易被操纵的喂价。
截断式预言机是一种链上价格预言机,它使用几何平均公式记录 Uniswap 流动性池中资产的价格,然后对该预言机的喂价进行截断——这意味着在单个区块内,记录的价格只能向上或向下移动到最大值。
这种截断有助于消除大额交易对价格的长期影响——无论这些大额交易是合法的还是恶意的,因为如果一个恶意行为者试图操纵价格,则必须在多个区块上持续进行操纵,这使得截断式预言机的操纵成本变得很高。
该 Hook 的智能合约合约存储了对应流动性池的价格的副本,其中在 Uniswap v3 和 v4 中,这些价格以一个个点位(Tick)表示。
在进行交易或 LP 调整之前,Hook 会将流动性池的当前价格变动与其合约中存储的价格变动进行比较,如果这两个数字之间的差异小于某个数字单位(根据我们的研究,我们使用 9, 116),那么 Hook 将更新到这个新的价格点位。
但是,如果流动性池的当前价格变动超过 9116 个数字单位,则预言机会将其价格上限限制为 - 9116 ,从而在一个区块中限制流动性池的价格点位移动量。
Hook 更新后,交易或 LP 调整才会执行,直到对应区块结束,然后循环重复下一个触发 Hook 智能合约的区块。
目前 Uniswap v4 和截断式预言机 Hook 仍在开发中,最终规格可能会有所变化。