Aave V3 协议系统梳理

Aave 是一个去中心化的非托管流动性市场协议。用户可以作为存款人(Supplier)存入资产赚取被动收益, 或作为借款人(Borrower)以超额抵押或不足额抵押(闪电贷)方式借出资产。 最新的 V3.7 版本(2026年3月)持续引入了 Isolated eModes、清算取整优化等特性。

技术栈: Solidity (Foundry 框架) | 许可协议:BUSL 1.1 (核心), MIT (接口)
代码仓库 (最新): github.com/aave-dao/aave-v3-origin (已弃用旧仓库 aave/aave-v3-core)

1. 协议概述

核心机制

机制说明
存款 / 供应 (Supply) 用户存入 ERC20 资产到流动性池,获取对应 aToken(生息凭证),按利用率动态赚取利息。
借款 (Borrow) 用户以存入的抵押品为基础,按 LTV(Loan-to-Value)比例借出资产。需保持 Health Factor ≥ 1(超额抵押)。
利率模型 利用利率曲线:利用率 U < 最优利用率时,利率缓慢增长(slope1);U > 最优利用率时,利率快速增长(slope2),激励存款偿还。
清算 (Liquidation) 当 Health Factor < 1 时,清算人可偿还最多 50% 的债务,获得对应抵押品 + 清算奖励(Liquidation Bonus)。
aToken 生息代币(类似 cToken),随利息累积持续增值。1 aToken = 1 单位底层资产 + 累计利息(通过 liquidityIndex 缩放)。
eMode (Efficiency Mode) 同类资产(如多种 ETH 衍生品)间的借款可享受更高 LTV(最高 97%),大幅提升资本效率。V3.2 起支持 Liquid eModes(资产可属于多个 eMode 类别)。
隔离模式 (Isolation Mode) 新上线/高风险资产可作为隔离抵押品,借款仅限稳定币,且有债务上限(Debt Ceiling)保护。
闪电贷 (Flash Loan) 无需抵押,单笔交易内借款并归还 + 0.05% 手续费。用于套利、清算、再融资等。
跨链 Portal 在不同链的 Aave 实例间进行资产跨链转移。
虚拟记账 (Virtual Accounting) V3.1 引入。协议用内部存储变量追踪底层余额变化,不再依赖 aToken 的 balanceOf(),防御捐赠攻击等向量。

核心参数

参数说明典型值
LTV贷款价值比,决定最大借款额度50% ~ 97%
Liquidation Threshold (LT)清算阈值,HF < 1 时可被清算65% ~ 98%
Liquidation Bonus (LB)清算奖励,清算人获得的额外抵押品比例5% ~ 10%
Reserve Factor准备金率,利息收入中划归 Aave DAO 金库的比例10% ~ 35%
Base Variable Borrow Rate可变利率的基础利率0% ~ 3%
Slope1 / Slope2利用率低于/高于最优利用率时的利率斜率5% ~ 300%

2. 用例图

Aave V3 协议的参与者角色及其可执行的操作:

Aave V3 Use Case Diagram
图1: Aave V3 协议用例图

3. 组件架构图

系统整体分层架构与各组件之间的关系:

Aave V3 Component Architecture
图2: Aave V3 组件架构图

4. 合约类图

核心智能合约的结构与依赖关系(Solidity delegatecall + Library 模式):

Aave V3 Contract Class Diagram
图3: Aave V3 合约类图

5. 资产 (Reserve) 状态机

一个资产从被列入到被清算/下架的生命周期状态:

Aave Reserve State Machine
图4: 资产 (Reserve) 状态机

6. 用户仓位状态机

用户在 Aave 协议中的仓位状态流转:

Aave User Position State Machine
图5: 用户仓位状态机

7. 供应流程 (Supply)

用户存入资产的完整调用链:

Aave Supply Sequence
图6: 用户供应 (Supply) 时序图

8. 借款流程 (Borrow)

用户以抵押品借出资产的完整调用链:

Aave Borrow Sequence
图7: 用户借款 (Borrow) 时序图

9. 清算流程 (Liquidation)

清算人执行清算的完整调用链:

Aave Liquidation Sequence
图8: 清算 (Liquidation) 时序图

10. 版本演进

版本时间核心变更
V3 (初始) 2022.01 全新架构:Portal 跨链、eMode 高效率模式、隔离模式、供应/借款上限、多链部署
审计:ABDK, OpenZeppelin, Trail of Bits, Peckshield, SigmaPrime, Certora
V3.0.1 2022.12 Bug 修复, PeckShield + SigmaPrime + Certora 审计
V3.0.2 2023.04 生产升级补丁, SigmaPrime + Certora 审计
V3.1 2024.04 重大升级:
- 虚拟记账 (Virtual Accounting): 底层余额不再依赖 ERC20 balanceOf()
- 有状态利率策略 (Stateful Interest Rate Strategy): 利率参数从 immutable 移入 storage
- LTV0 on Freeze: 冻结时自动将 LTV 设 0
- 清算宽限期 (Liquidation Grace Sentinel): 解冻后可设最长 4h 清算宽限期
- Stable Rate 弃用: 允许无许可将稳定利率仓位转为可变利率
- 审计: Certora, MixBytes, Cantina(竞赛)
V3.2 2024.09 重大升级:
- 移除 Stable Rate: 完全删除稳定利率逻辑,降低 gas & 代码复杂度
- Liquid eModes: 一个资产可属于多个 eMode 类别,eMode 内可设置 borrowable/collateral 标志
- 审计: Certora, Enigma Dark, Oxorio, Pashov
V3.3 2025.01 功能增强:
- Deficit Tracking: 赤字追踪机制
- 清算优化: 改进清算流程
- 审计: Certora, StErMi, Oxorio, Sherlock, Enigma Dark(Fuzzing)
V3.4 2025.06 功能调整:
- 移除自定义 GHO 处理
- 新增 Multicall 支持
- 新增 Position Manager
- 审计: Certora, StErMi, Blackthorn, Enigma
V3.5 2025.07 可预测取整 (Predictable Rounding)
审计: Certora, StErMi, Mixbytes, ABDK
V3.6 2025.11 默认储备配置与 eMode 解耦: Decouple default reserve configuration from eMode settings
审计: Blackthorn, Certora, MixBytes, Savant, Pashov
V3.7 2026.03 最新版本:Isolated eModes、清算取整优化、代码清理
审计: Pashov, Sherlock, Certora, MixBytes, Savant, Enigma

11. 安全审计

Aave V3 系列经过业界最严格的安全审计流程,累计 6 家以上顶级安全公司参与:

审计机构参与版本
ABDKV3, V3.5
OpenZeppelinV3
Trail of BitsV3
PeckshieldV3, V3.0.1
SigmaPrimeV3, V3.0.1, V3.0.2
CertoraV3 ~ V3.7(全部版本,包含形式化验证)
MixBytesV3.1, V3.5, V3.6, V3.7
OxorioV3.2, V3.3
PashovV3.2, V3.6, V3.7
StErMiV3.3, V3.4, V3.5
SherlockV3.3, V3.7
Enigma DarkV3.2, V3.3, V3.4, V3.7(含 Fuzzing Invariant Suite)
BlackthornV3.4, V3.6
SavantV3.6, V3.7
Cantina (竞赛)V3.1
Bug Bounty: Aave 在 Immunefi 上运行 Bug Bounty 计划 (immunefi.com/bounty/aave/)。 代码仓库在每次 Aave Governance 升级到生产实例后即纳入赏金范围。
参考来源:
- Aave V3 Origin Repo: github.com/aave-dao/aave-v3-origin
- 旧 V3 Core Repo (已弃用): github.com/aave/aave-v3-core
- Aave 官网: aave.com
- 治理论坛: governance.aave.com