本文深入探讨了去中心化交易所(DEX)的发展历程,从 Uniswap 的基础公式 x * y = k 开始,介绍了 Uniswap 各个版本的演进、Curve Finance 在稳定币交易中的作用、Balancer 的多资产池管理,以及 Bancor、DODO 和 Maverick 等专业 AMM 的创新设计及其安全 implications。
在我们之前的文章 第一部分 中,我们剖析了简单但强大的 x * y = k 公式,这个公式开启了整个去中心化交易所(DEX)的热潮。但是,尽管这个公式非常优雅,但也仅仅是个开始。今天,我们将深入探讨 DeFi 领域中最大的几家公司是如何利用这个核心思想,并构建出满足独特金融需求的专业平台——每个平台都有其自身的优势、劣势,以及至关重要的、独特的安全概况。
我们的目标是深入了解这些平台所做的设计选择,以追求更高的资本效率、更低的滑点,甚至是自动化的投资组合管理等目标。在探索的过程中,我们还将查明这些创新引入了哪些新的攻击面,反之,又在哪些方面为开发者们创造了构建更安全、更复杂的金融原语的令人兴奋的机会。
DEX 的格局实际上是由少数创新者塑造的。要了解事情的进展,最好的起点莫过于 Uniswap,这个协议开启了这一切,然后再看看它那些更专业的同类产品。每一次演变都不仅带来了新功能,也带来了新的安全考虑,这是我们将在文章中不断重温的一个主题。
Uniswap v1:最初的蓝图。
第一个版本的 Uniswap 因其简洁性而显得非常出色。它证明了 x * y = k 模型是可行的,为去中心化交易奠定了基础。然而,这种优雅也带来了一个重大的限制:每个流动性池都必须与 ETH 配对。例如,如果你想将 DAI 兑换为 MKR,你必须进行两次单独的交易(DAI 兑换为 ETH,然后 ETH 兑换为 MKR),这意味着要支付双倍的费用并处理双倍的滑点。
从安全的角度来看,V1 相对简单。其固定的结构限制了某些类型的复杂漏洞利用,但其基本简洁性也限制了其经济效率。
Uniswap V2:具有新风险的重大飞跃。 V2 于 2020 年发布,是一个游戏规则改变者。它通过引入直接的 ERC20 到 ERC20 的池来解决了 ETH 配对问题。此更新还为我们提供了闪电兑换和更可靠的链上价格预言机。这些预言机成为重要的基础设施,允许其他 DeFi 项目安全地使用 Uniswap 的价格数据。
虽然功能非常强大,但闪电兑换等功能引入了新的安全挑战,主要是通过重入攻击的潜力或复杂的套利策略,如果集成协议没有仔细管理,这些策略可能会耗尽资金池。预言机也成为一个关键的依赖项;其完整性至关重要。我们将在后续的协议文章中更深入地研究预言机安全和闪电贷漏洞。一个缺点是,流动性仍然稀疏地分布在从零到无穷大的无限价格范围内,这不是很有效。
Uniswap V3:资本效率革命和放大的无常损失。 此版本通过一个新概念彻底改写了规则:集中流动性。流动性提供者现在可以将他们的资本集中在大多数交易发生的特定范围内,而不是在整个价格范围内提供流动性。这大大增加了赚取费用的潜力,但也带来了更高的无常损失风险。如果资产的价格超出提供者选择的范围,他们的头寸将变为非活动状态,与仅持有资产相比,可能会导致重大损失。这实际上将流动性提供者从被动参与者转变为主动管理者。
V3 流动性提供(LP)策略的增加的复杂性引入了新的经济安全考虑因素。LP 需要复杂的工具来管理他们的范围,不正确或非活动的范围可能导致大量的资本损耗。对于开发人员来说,这既是挑战也是机遇:构建复杂的 LP 管理策略、自动范围再平衡器和无常损失缓解工具已成为新的前沿。我们后续的深入研究将探讨高级的无常损失情况和 LP 范围管理的最佳实践。
Uniswap V4:未来是可定制的——并且可能很复杂。 展望未来,V4 的重点是通过一种称为“hooks”的东西进行定制。可以将 hooks 视为插件,让开发人员在交易期间的某些时候运行自己的智能合约。这为动态费用、链上限价单、MEV 捕获机制,甚至需要合规性检查的池等功能开辟了一个广阔的世界。V4 还引入了“singleton”合约设计和临时的“transient”存储,这将使部署新的交易对和执行复杂的兑换变得更加便宜和容易。
虽然提供了前所未有的灵活性,但 V4 的 hook 架构大大扩展了攻击面。每个自定义 hook 都会引入潜在的漏洞,从复杂的回调函数中的重入风险到经济漏洞,如果动态费用或自定义逻辑没有经过精心编码和审计。开发人员获得了巨大的力量,但也承担了更大的自定义池逻辑安全责任。这种模块化虽然强大,但需要严格的安全测试和对智能合约交互的深刻理解。未来的文章将重点介绍开发安全的 Uniswap V4 hooks 和缓解新型漏洞利用向量的最佳实践。
当 Uniswap V3 忙于解决波动性代币的资本效率问题时,Curve Finance 正在抢占交易相似资产(尤其是 USDC 和 DAI 等稳定币)的市场。
他们的秘诀是 Stableswap 不变量,这是一种混合公式,可以在 1.00 美元附近创建一个巨大的、平坦的流动性区域。这允许稳定币之间进行大量交易,几乎没有滑点。Curve 生态系统也因其代币经济学而闻名,这引发了“Curve Wars”。在这场战斗中,Convex Finance 等协议获得了大量的 CRV 代币。通过将它们锁定为 veCRV,他们可以投票将流动性激励导向他们自己的池,使他们的 stablecoin 更深入、更具弹性,并在 DeFi 中更广泛地集成。
从安全的角度来看,Curve 的独特不变量已被证明对于其预期的用途来说非常强大。然而,其代币经济学的复杂性和“Curve Wars”引入了新的经济操纵和治理漏洞形式。控制 veCRV 的很大一部分可以对协议的激励层产生强大的影响,可能导致投票购买计划或将排放导向不太安全甚至恶意的池。虽然不是直接的智能合约漏洞,但这些经济激励会产生系统性风险,需要仔细监控。我们将在即将推出的系列中探讨激励层和治理攻击的经济安全性。
Balancer 采取了一个完全不同的角度。他们没有只关注双资产池,而是提出了这样的问题:如果一个池可以作为整个投资组合呢?
使用 Balancer,你可以创建具有多个资产的加权池,例如一个具有 40% WETH、40% WBTC 和 20% DAI 的池。这个池会自动重新平衡自身,本质上就像一个去中心化的指数基金。Balancer 还率先推出了流动性引导池(LBPs),这是一种新的项目启动代币的流行方法。LBPs 的设计目的是从高价开始,然后慢慢降低,这有助于阻止机器人,并允许更自然的价格发现。设置自定义交换费用的能力也使池创建者具有 Uniswap 早期版本所缺乏的战略灵活性。
Balancer 加权池的灵活性虽然强大,但引入了更广泛的潜在错误配置。错误设置的权重、糟糕的资产选择或操纵的自定义交换费用可能导致大量的无常损失,甚至直接的漏洞利用。LBPs 虽然对于代币启动具有创新性,但必须经过精心设计,以防止在初始价格发现阶段出现抢先交易或夹层攻击。多资产性质还增加了通用套利机器人在单个池中利用各种代币之间细微的价格差异的范围。对于开发人员来说,构建用于模拟最佳池权重和费用结构的工具,同时考虑套利盈利能力和攻击向量,是一个重要的机会。
虽然 Uniswap、Curve 和 Balancer 在很大程度上主导了叙事,但 DeFi 生态系统充满了创新的小型 AMM,每个 AMM 都在以独特的设计和随之而来的独特安全概况来突破界限。这些平台通常会引入旨在解决特定问题的新机制,从而创造令人兴奋的机会和新的风险。
Bancor:无常损失保护器(一个警示故事) Bancor 的雄心勃勃的目标是通过其无常损失保护(ILP)功能完全解决 LP 的无常损失(IL)问题,同时也允许使用其原生 BNT 代币进行单边流动性提供。该协议承诺通过以新铸造的 BNT 支付 LP 来弥补 LP 产生的任何 IL。
然而,这成为了一个经济模型失败的关键案例研究,而不是智能合约攻击。在 2022 年的市场崩盘期间,所有池中的大量 IL 迫使该协议铸造大量的 BNT。当 LP 出售这些新铸造的 BNT 时,其价格暴跌,这反过来又导致了更多的 IL,从而造成了“死亡螺旋”。该功能最终被暂停。这突出了一个关键的权衡:以长期经济可持续性为代价的激进 LP 保护。对于开发人员来说,这强调了对黑天鹅事件进行经济模型压力测试的重要性,而不仅仅是智能合约漏洞。我们未来的文章将深入探讨代币经济学安全性和通货膨胀保护机制的危险。
DODO:预言机通知的做市商 DODO 的主动做市商(PMM)使用外部价格预言机(如 Chainlink)来动态地将流动性集中在当前的真实世界市场价格附近。这种集中导致极高的资本效率和交易者非常低的滑点,因为流动性不会分散在无限的价格范围内。
然而,DODO 的设计引入了一个根本的权衡:效率与去信任化。其安全性本质上取决于外部预言机的完整性和可靠性。如果预言机被操纵或提供过时的数据,PMM 的集中流动性很容易被利用,可能导致重大损失,甚至耗尽资金池。
集成或构建在依赖预言机的 AMM 上的开发人员必须优先考虑强大的预言机选择、回退机制和实时监控。我们将在即将推出的协议文章中专门用一个章节来介绍预言机操纵攻击和防御策略。
Maverick Protocol:自动流动性管理器 Maverick 旨在简化和自动化管理集中流动性头寸的复杂、高度消耗 gas 的过程(由 Uniswap V3 推广)。LP 选择四种自动流动性移动模式之一(例如,看涨、看跌、区间震荡)。然后,协议的智能合约自动移动 LP 的集中流动性以跟随市场价格,从而最大限度地提高费用捕获,而无需 LP 手动再平衡和支付 gas 费用。
这提供了一个引人注目的权衡:自动化与细粒度控制。虽然它大大简化了普通用户的高效率流动性提供,但它引入了自动化智能合约逻辑的安全考虑因素。自动化再平衡逻辑中的错误或意外的市场情况可能导致 LP 的次优性能或意外的资产风险。开发人员有机会构建日益复杂和有弹性的自动化策略,但同时也增加了确保自主代理的安全性和可预测性的负担。我们的安全系列将提供自动化策略漏洞利用和此类协议的审计考虑因素的具体示例。
| 特性 | Uniswap (V3) | Uniswap(V4 - 拟议) | Curve Finance | Balancer | Bancor (ILP) | DODO (PMM) | Maverick |
|---|---|---|---|---|---|---|---|
| 粘合曲线 | 中心化 x * y = k |
可通过 hooks 自定义 | Stableswap 不变量(混合型) | 加权,多资产不变量 | 带有 ILP 的 x * y = k |
预言机通知的 PMM | 动态、自动化的集中流动性 |
| 资本效率 | 非常高(在选定的范围内) | 可能更高(动态) | 极高(对于类似资产对) | 高(充当指数基金) | 中等 | 非常高 | 非常高(自动化) |
| 理想用例 | 通用,波动性资产对 | 高度自定义/专业化的池 | Stablecoin 和类似资产的兑换 | 投资组合管理、代币启动 | 单边流动性,IL 保护 | 高效率交易,新资产启动 | 波动性资产的自动化 LP |
| LP 复杂性 | 高(需要主动管理) | 非常高(需要开发) | 低到中等(深入的代币经济学) | 中等(池配置是关键) | 低(单边) | 低(自动化集中) | 低(自动化模式) |
| 主要安全风险 | 中心化 IL、预言机操纵 | 基于 Hook 的漏洞、重入 | 治理操纵,经济激励漏洞 | 多资产攻击向量、错误配置的权重、LBP 抢先交易 | ILP 的经济崩溃,BNT 通货膨胀 | 预言机操纵,经济漏洞 | 自动化逻辑中的错误,意外的市场行为 |
| 开发者机会 | LP 管理工具、IL 缓解 | 安全的 hook 开发、MEV 捕获 | 用于代币经济学的高级分析,收益优化 | 池优化器、LBP 设计工具、套利机器人 | 用于 ILP 的可持续经济模型 | 强大的预言机集成、反操纵 | 安全的自动化策略,高级性能分析 |
从 Uniswap V1 的简单公式到 V4 的可编程 hooks——以及像 Curve 和 Balancer 这样的专业巨头,以及像 Bancor、DODO 和 Maverick 这样创新型的小型参与者——的道路,都清晰地表明了一种朝着复杂性和专业化发展的趋势。通过引入改变游戏规则的想法,如集中流动性、混合曲线、加权池、IL 保护、预言机通知的 AMM 和自动化 LP 管理,这些平台变得非常高效。
但这种创新并非免费。从在 Uniswap V3 中主动管理范围到驾驭 Curve 复杂的代币经济学,或者信任外部预言机和自动化策略,增加的复杂性也为交易者和流动性提供者带来了新的风险和更大的攻击面。每一个设计选择,在解决一个问题的同时,不可避免地会打开通往另一个问题的大门。这才是 DeFi 安全的持续战斗的真正所在。
在 Zealynx,我们生活和呼吸上述复杂的 AMM 设计和经济模型。无论你是构建新协议、审计现有协议,还是只想讨论你的 AMM 项目的安全性,我们的团队都随时为你提供帮助——联系我们。
1. 集中流动性到底是什么?
集中流动性是 Uniswap V3 成名的原因,它让流动性提供者(LP)可以将他们的资金投入到特定的价格范围内,而不是将其从零到无穷大分散开来。这使得他们的资本在赚取费用方面效率更高,但这意味着 LP 必须主动管理他们的头寸,以确保它们保持在活跃的交易范围内。
2. 什么是流动性引导池(LBP),它们的风险是什么?
流动性引导池(LBP)是由 Balancer 开创的一种池,主要用于启动新代币。LBP 从高代币价格开始,然后逐渐降低,从而有助于防止机器人狙击并鼓励公平的价格发现。但是,如果配置不当,它们仍然容易受到抢先交易和夹层攻击。
3. 集中流动性中的无常损失是什么?
无常损失(IL)是指将资产保留在流动性池中与仅将它们保留在你的钱包中的价值差异。在集中流动性头寸中,这种风险被放大。如果价格超出 LP 的狭窄范围,他们会被困住只持有价值下跌的资产,如果管理不善,损失可能会变得非常真实和永久。
4. “Curve Wars” 到底是怎么回事?
“Curve Wars” 是不同 DeFi 协议之间的一场战斗,旨在获取和锁定尽可能多的 Curve 的 CRV 治理代币。通过这样做,他们获得了投票权,可以将 CRV 奖励排放导向他们自己的流动性池。这吸引了更多的流动性到他们的 stablecoin 或其他资产,使它们在整个 DeFi 世界中更加稳定和广泛使用。
5. 什么是预言机操纵,为什么 AMM 担心它?
预言机操纵是一种漏洞利用,攻击者在其中影响外部预言机提供的价格数据,导致智能合约做出错误的决定。像 DODO 这样依赖外部预言机进行定价的 AMM 特别容易受到攻击。如果预言机受到威胁或提供过时的数据,攻击者可能会耗尽流动性或执行不公平的交易。
6. 什么是 Uniswap V4 “hooks”?
Hooks 是拟议的 Uniswap V4 的主要功能。它们是外部智能合约,让开发人员可以在兑换生命周期的关键时刻运行自定义代码。这可以用于创建诸如随波动性变化而变化的费用、真正的链上限价订单甚至流动性池的内置 KYC 检查等功能。
- 原文链接: zealynx.io/blogs/amm-sec...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!