中文
铁叔

天地不仁 以万物为刍狗


  • 首页

  • 归档

  • 关于我

  • 公益404

  • 搜索

AAVE源代码分析 -- AAVE 闪电贷

时间: 2021-10-20   |   分类: Defi   AAVE   | 字数: 747 字 | 阅读: 2分钟 | 阅读次数:

flashloan

flashloan, 闪电贷, 是指在无需任何抵押, 一个交易内完成借款,还款的借贷行为。 核心是在一个交易内完成, 正因为在一个交易内完成, 所以才无需抵押, 也正是由于在一个交易内完成,闪电贷使用区块链交易事务的特性,可以检查还款的额度是否>借款+利息, 如果不够, 则交易回滚, 任何数据都被还原, 也就是说, 借给你的资金也同样回滚,因此,没有任何风险。

此外,闪电贷的利息收入非常可观。一个块,也就几秒钟、十几秒钟时间,收取万分之9的利率,而且,一般使用闪电贷的,都是极大的借款量,动辄几千万,上亿美金。

闪电贷是去中心化的一大创新, 不知道是不是 AAVE 首先提出的。 现在很多协议都提供了闪电贷功能,例如:

  1. 借贷平台,如 AAVE, Compound 也有外挂提供闪电贷的功能; AAVE 闪电贷的默认利率是万分之9;
  2. uniswap. uniswap 在 swap 时,同样提供闪电贷功能. swap 时, pair 合约先把买到的token发给你, 你可以用这个token去盈利,然后再把卖出的token转入pair中。uniswap不收取额外费用,只是兑换的手续费为千三;
  3. token. 现在一些token也提供闪电贷的功能, 原理类似。手续费看具体实现。

flashloan 的流程

流程如下:

  1. 验证参数数据(ValidationLogic.validateFlashloan);
  2. 计算需要支付的利息,并把 token 转给用户;
  3. 调用用户合约执行用户的代码;
  4. 增加利息, 并将连本带利数量的 token 从用户合约转入 (用户有抵押物的情况,也可以选择使用转入贷款)

flashloan 的收益归谁

答案是归所有存款人所有。在借贷结束后,flashloan 更新了存款利率指数,也就意味着所有的存款人获得了利息收入。

        _reserves[vars.currentAsset].updateState();
        // 计入收益
        _reserves[vars.currentAsset].cumulateToLiquidityIndex(
          IERC20(vars.currentATokenAddress).totalSupply(),
          vars.currentPremium
        );
        // 更新年化利率
        _reserves[vars.currentAsset].updateInterestRates(
          vars.currentAsset,
          vars.currentATokenAddress,
          vars.currentAmountPlusPremium,
          0
        );

        // 将 token 转回来
        IERC20(vars.currentAsset).safeTransferFrom(
          receiverAddress,
          vars.currentATokenAddress,
          vars.currentAmountPlusPremium
        );

值得注意的是,与 uniswap 闪电贷不同的是, AAVE 的闪电贷时,用户合约执行完成后, token 的转移是在 AAVE 合约中发起,从用户合约转入,而不是让用户将 token 转入 AAVE 合约。

#AAVE# #Compound# #Defi# #Solidity# #flashloan# #闪电贷#

声明:AAVE源代码分析 -- AAVE 闪电贷

链接:https://guotie.github.io/post/aave/aave-flashloan/

作者:铁叔

声明: 本博客文章除特别声明外,均采用 CC BY-NC-SA 3.0许可协议,转载请注明出处!

创作实属不易,如有帮助,那就打赏博主些许茶钱吧 ^_^
WeChat Pay

微信打赏

Alipay

支付宝打赏

AAVE源代码分析 -- AAVE 部署及初始化
AAVE源代码分析 -- AAVE 利率代码分析
铁叔

铁叔

千里之行 始于足下

25 日志
14 分类
56 标签
GitHub twitter telegram email medium
标签云
  • Solidity
  • Defi
  • Aave
  • Compound
  • Abi
  • Dapp
  • Ethereum
  • Evm
  • Lend protocol
  • Lending
© 2010 - 2024 铁叔
Powered by - Hugo v0.119.0 / Theme by - NexT
/
0%