原文标题:《AC推出新产品StableCredit》
早在8月,AC就提出了StableCredit的概念,我在文章?YFI的星辰大海?中有过简单介绍,本次AC发文,说明酝酿4个多月的想法要正式实施了。
简单说StableCredit是一个基于抵押型稳定币设计的存借贷与AMM综合运用协议,思路借鉴了?ARCx,抵押万物发债。
举个例子说明:
用户将价值100万的房子抵押给YFI,YFI给用户100万的稳定币贷款额度。这个稳定币贷款额度可以用来借出其他资产,比如一辆汽车。与此同时,协议会根据房子的投放收益来给用户分润。当房子价值上涨时,用户手里的借贷额度还可以向上浮动。
这个模式跟?Uniswap+Maker?很类似。用当下的场景做类比的话,就是用户将ETH存进Uniswap做市,赚收益的同时,Uniswap还会给你一笔钱让你花。这是不是很爽?
下文将对AC的文章做进一步解读:
安全公司:AurumNodePool合约遭受漏洞攻击简析:金色财经报道,据区块链安全审计公司Beosin EagleEye监测显示,2022年11月23日,AurumNodePool合约遭受漏洞攻击。
Beosin分析发现由于漏洞合约的changeRewardPerNode函数未进行验证,导致攻击者可以调用该函数进行任意值设置。
攻击者首先调用changeRewardPerNode函数将每日奖励值设置成一个极大数,接下来调用claimNodeReward函数提取节点奖励,而节点奖励的计算取决于攻击者设置的rewardPerDay值,导致计算的节点奖励非常高。而在这一笔交易之前,攻击者便通过一笔交易(0xb3bc6ca257387eae1cea3b997eb489c1a9c208d09ec4d117198029277468e25d)向合约存入了1000AUR,创建了攻击者的节点记录,从而使得攻击者能够提取出该节点奖励。最终攻击者通过该漏洞获得约50个BNB($14,538.04)。[2022/11/23 8:01:04]
基本概念
AC文章开头,先介绍了几个基本概念,包括:
Beosin:Skyward Finance项目遭受攻击事件简析:金色财经报道,根据区块链安全审计公司Beosin旗下Beosin EagleEye 安全风险监控、预警与阻断平台监测显示,Near链上的Skyward Finance项目遭受漏洞攻击,Beosin分析发现由于skyward.near合约的redeem_skyward函数没有正确校验token_account_ids参数,导致攻击者5ebc5ecca14a44175464d0e6a7d3b2a6890229cd5f19cfb29ce8b1651fd58d39传入相同的token_account_id,并多次领取了WNear奖励。本次攻击导致项目损失了约108万个Near,约320万美元。Beosin Trace追踪发现被盗金额已被攻击者转走。[2022/11/3 12:12:36]
抵押型稳定币,典型代表Maker的DAI
借贷协议,典型代表?Aave、Compound
自动做市商,典型代表Uniswap、Sushi
单边AMM,典型代表:DoDo、CoFiX
利用率,可以理解为抵押率或清算线,是借贷类协议的核心数据
Beosin:EthTeamFinance项目遭受到了漏洞攻击事件简析:据Beosin EagleEye 安全预警与监控平台检测显示,ETH链上的EthTeamFinance项目遭受漏洞攻击,攻击合约0xCFF07C4e6aa9E2fEc04DAaF5f41d1b10f3adAdF4通过LockToken合约的migrate函数没有正确验证_id和params的漏洞,将WTH,CAW,USDC,TSUKA代币从V2流动性池非法升级到V3流动性池,并且通过sqrtPriceX96打乱V3流动池的Initialize的价格,从而获取大量refund套利。共计套利了约1300多万美元。[2022/10/27 11:49:12]
这里可以单独说下利用率,AC支出当利用率为0%时,借1DAI就是1DAI,没有溢价。当利用率为90%时,借1DAI的成本要大于1DAI,就是借1DAI,可能实际得到0.98DAI,存在溢价。
这个现象用AMM解释会非常清晰,当DAI和债务1:1添加到50:50的AMM池时,对债务的需求越多,交易滑点就越高,这也就解释了溢价的存在。
稳定币信贷
Beosin:UVT项目被黑客攻击事件简析,被盗资金已全部转入Tornado Cash:金色财经报道,据Beosin EagleEye 安全预警与监控平台检测显示,UVT项目被黑客攻击,涉及金额为150万美元。攻击交易为0x54121ed538f27ffee2dbb232f9d9be33e39fdaf34adf993e5e019c00f6afd499
经Beosin安全团队分析,发现攻击者首先利用开发者部署的另一个合约的具有Controller权限的0xc81daf6e方法,该方法会调用被攻击合约的0x7e39d2f8方法,因为合约具有Controller权限,所以通过验证直接转走了被攻击合约的所有UVT代币,Beosin安全团队通过Beosin Trace进行追踪,发现被盗资金已全部转入Tornado Cash。[2022/10/27 11:48:46]
StableCredit是一个结合了代币化债务稳定币、借贷、AMM和单边AMM的协议,以创建一个完全去中心化的借贷协议。
慢雾:DEUS Finance 二次被黑简析:据慢雾区情报,DEUS Finance DAO在4月28日遭受闪电贷攻击,慢雾安全团队以简讯的形式将攻击原理分享如下:
1.攻击者在攻击之前先往DeiLenderSolidex抵押了SolidexsAMM-USDC/DEI的LP。
2.在几个小时后攻击者先从多个池子闪电贷借出143200000USDC。
3.随后攻击者使用借来的USDC在BaseV1Pair进行了swap操作,兑换出了9547716.9个的DEI,由于DeiLenderSolidex中的getOnChainPrice函数是直接获取DEI-USDC交易对的代币余额进行LP价格计算。因此在此次Swap操作中将拉高getOnChainPrice函数获取的LP价格。
4.在进行Swap操作后,攻击者在DeiLenderSolidex合约中通过borrow函数进行借贷,由于borrow函数中用isSolvent进行借贷检查,而在isSolvent是使用了getOnChainPrice函数参与检查。但在步骤3中getOnChainPrice的结果已经被拉高了。导致攻击者超额借出更多的DEI。
5.最后着攻击者在把用借贷出来DEI兑换成USDC归还从几个池子借出来的USDC,获利离场。
针对该事件,慢雾安全团队给出以下防范建议:本次攻击的原因主要在于使用了不安全的预言机来计算LP价格,慢雾安全团队建议可以参考Alpha Finance关于获取公平LP价格的方法。[2022/4/28 2:37:18]
用户可以提供任何资产并创建名为StableCreditUSD的代币化信用。
具体创建流程如下:
提供一定金额的USDC
调用USDC价格预言机,确定1个USDC的美元价值
协议铸造相应美元价值的StableCreditUSD
将USDC和StableCreditUSD按照50:50的比例提供到AMM
该协议计算系统利用率,最高可达75%
所提供的USDC的利用率以StableCreditUSD的形式计算
此时,用户得到的StableCreditUSD就是「借贷信用」。可以用它来借贷通过AMM抵押的其他资产。所以如果有其他用户提供LINK作为抵押,你可以通过「卖出」借贷信用来借贷LINK。当你想还债的时候,你可以把LINK「卖」回去换成StableCreditUSD,还清债务,然后收到你的USDC。
实际案例
下面举几个具体实例来说明这个过程:
用户A提供1000DAI进行借款:
将1000DAI存入StableCredit协议
系统调用预言机查询DAI价值1020USD
系统铸造1020个USD
系统将用户A的1000DAI和1020USD添加到AMM
系统计算利用率,最高为75%
系统为用户A提供75%额度的借贷信用,即1020*0.75=765StableCreditUSD
此时用户A提供了1000DAI,得到765个StableCreditUSD。
用户B提供2个ETH进行借款:
将2ETH存入StableCredit协议
系统调用预言机查询ETH价值1400USD
系统铸造1400个USD
系统将用户B的2ETH和1400USD添加到AMM
系统计算利用率,最高为75%
系统为用户B提供75%额度的借贷信用,即1400*0.75=1050StableCreditUSD
此时用户B提供了2ETH,得到1050个StableCreditUSD。
同理,有用户C提供了1个WBTC,得到26000个StableCreditUSD;用户D提供了1个YFI,得到了23000个StableCreditUSD,等等…
此时系统中存在多个借贷AMM池:
DAI:StableCreditUSD
ETH:StableCreditUSD
YFI:StableCreditUSD
WBTC:StableCreditUSD
其他各类用户添加的抵押资产池
用户A想借出1个ETH,于是他将525个StableCreditUSD提供给AMM,得到1个ETH。用户币想借出500DAI,他将510个StableCreditUSD提供给AMM,得到500个DAI。
他们想要赎回本金时,是需要向提供偿还对应借出资产即可从LP中提取本金。当提取本金时,系统会烧毁对应数量的StableCreditUSD。比如,用户A赎回1000DAI,此时系统会调用预言机价格,假设此时价格仍为1020USD,协议将烧毁对应数量的StableCreditUSD,以保证整个借贷资产的平衡。
这个赎回并烧毁StableCreditUSD的过程,AC文章中并没有提,是我个人的猜测和判断。主要依据是EMN当时的设计,也是铸造信贷和销毁信贷,遗憾的是当时被黑客利用导致项目没有继续。
StableCredit的优势
StableCredit的设计充分利用了代币化债务、借贷、AMM的特点,相对单独存在AMM和借贷协议具有很多优势:
首先,系统的借贷利率实际是根据需求自动平衡的,用户需求多的借出资产,在偿还时会支付更高的利息。原理是需求多资产,在AMM中被卖出更多,用户在偿还借贷购买对应资产时,会支付更多的StableCreditUSD。
StableCreditUSD类似于Uniswap的ETH,是AMM全部池交易的中间介质,这就让借贷信用可以享受交易手续费,间接的实现了资产提供者收取利息。即借贷用户支付的交易手续费和交易滑点等溢价,间接的提供给了代币提供者。
如果用户只提供代币而不进行借贷,会一直积累整个系统的借贷溢价,也就实现了存款收益。
这种方式还实现了非常优美的借贷最大化利用率,像AAVE这些借贷协议,一旦用户的抵押率达到红线便会被清算。StableCredit的模式基本不存在被清算风险,只有相对的整体系统风险,即利用率。
举例来说:用户A存入的1000DAI,得到765个StableCreditUSD。之后他全部用于借出ETH,根据之前的案例,计算得出可借765/700=1.09个ETH
假设经过1个月,ETH价格上涨至1000,用户偿还1.09个ETH,会得到1.09*1000=1090StableCreditUSD。此时用户偿还765StableCreditUSD,可赎回1000DAI。
经过以上过程,我们发现用户最初抵押了1000DAI,得到了75%的购买力,然后他购买了ETH,享受了ETH价格上涨的红利,当他结清头寸时,最终收回本金1000DAI,同时还结余1090-765=325USD。
但其实我这个案例有些过于理想,在真实的系统运行环境中,由于套利者的存在,StableCreditUSD与各类资产的汇率会实时的通过AMM交易进行调整,因此在抵押和赎回过程中,不可能是按照原比例兑换。
以上的一些内容纯粹是我个人根据一些零散信息拼凑后的猜想,具体StableCredit的运作模式,还要等系统正式上线后再来详细验证。
但不难想象,这样的一种设计,绝对能释放更多的购买力,吸收更多的流动性。
写在最后
之前文章中我也有说,StableCredit的设计,是YFI整个战船中非常关键的一环,它为整个金融帝国提供了一个吸收流动性的接口,最终可能发展成为流动性黑洞。
通过大量的吸收存款,叠加?yearn?的智能理财服务,yearn的愿景正在一步一步实现。
简单说,YFI的愿景是要让「收益最大化」。
AC的初心一句话概括,「获得持续安全稳定便捷的最大化收益」。
来源:金色财经
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。