簡介
EIP-4626提供了一種將代幣投資到投資池(通常稱為金庫)的標準方法。當我們存入自己的資產(ERC-20 代幣)時,我們會收到一個份額代幣,代表我們在金庫里的資產。金庫將把匯集的資產投資到一個或多個基礎平臺,為持有者產生收益。
EIP-4626標準的一個結果是,存款和鑄幣函數沒有提供指定回報的最小份額或資產金額的方法。這通常用于防止高滑點或三明治攻擊。mStable 如何通過其 Meta Vaults 解決這個問題——在保持符合標準的同時減輕高滑點攻擊?本文描述了這些挑戰,并解釋了他們的方法是如何工作的。
EIP-4626和mStable金庫存款
mStable EIP-4626的首個金庫將投資于基于Curve 3Pool的Convex池。從EIP-4626的角度來看,金庫的資產是Curve 3Pool的流動性提供者代幣(3Crv)。存款函數是EIP-4626規范的一部分,它指定要存入多少資產以及將接收金庫份額的帳戶。存款函數返回給接收方會鑄造多少金庫份額。
數據:當前DeFi協議總鎖倉量為2224.7億美元:3月28日消息,據Defi Llama數據顯示,目前DeFi協議總鎖倉量2224.7億美元,24小時增加2.76%。鎖倉資產排名前五分別為Curve(204.2億美元)、Lido(175.2億美元)、MakerDAO(173億美元)、Anchor(146.6億美元)、AAVE(136.7億美元)。[2022/3/28 14:22:51]
例如,存入3Crv Convex mUSD金庫將從調用方轉移3Crv,并將vcx3CRV-mUSD金庫份額轉移到接收方。
EIP-4626標準的強大之處在于,在投資池中有一種通用的投資方法,但對資產可以投資到底層平臺的內容和時間沒有限制。對于mStable的3Crv Convx mUSD 金庫來說, 3Crv被添加到Curve mUSD Metapool中,然后產生的流動性提供者代幣(musd3Crv)被存入Convex mUSD池中,該池會投資于Curve mUSD gauge并獲得更高的回報。
這個過程中的一個技術挑戰是如何防止三明治攻擊。
DeFi協議Balanced發起有關分配超100萬美元網絡費用的投票:6月27日,韓國區塊鏈平臺ICON的DeFi協議Balanced宣布完成升級,發布了一個名為“Geometry Release”的更新。在其首次DAO治理投票中,社區將決定是否分配該平臺自4月25日推出以來產生的超過100萬美元的費用。如果獲得批準,該協議將每天將60%的網絡費用分配給其原生代幣BALN的持有者,并將40%分配給DAO基金。(Beincrypto)[2021/6/28 0:11:14]
什么是三明治攻擊?如何預防它們?
當我們向Curve Metapool(或任何其他池)添加流動性時,我們指定自己想存入的資產數量和流動性提供者(LP)代幣的最小數量。對于mUSD Metapool,金額是一個包含兩項的數組。第一個是mUSD的量,第二個是3Crv的量。3Crv Convex金庫只存3Crv,因此金額數組的第一項將為零。
開發金庫時的一個技術挑戰是我們如何設置預期流動性提供者代幣的最小數量。
僅僅將min_mint_amount設置為零是不夠的,因為它會讓存款交易受到三明治攻擊。但在我們深入了解三明治攻擊是如何工作之前,我們需要更多地了解Curve Metapool定價是如何工作的。由于金庫只添加兩個池代幣(mUSD和3Crv)中的一個,因此它接收到的Metapool流動性提供者(LP)代幣的數量將取決于Metapool中mUSD和3Crv的余額。池中的 3Crv 越多,當僅將 3Crv 添加到 Metapool 時,返回的 LP 代幣就越少。
DeFi 預言機項目Fruition.finance 挖礦即將上線:據官方消息透露,Fruition.finance 即將在主鏈上部署一個區塊鏈附帶預言機的借貸項目,以跨鏈橋方式支持ERC20的資產跨鏈。此項目結合流動性挖礦機制,且帶有預言機數據整合功能,使其成為一套邏輯閉環的分布式借貸系統。
據悉,Fruition.finance推出的平臺通證,將其中80%用于挖礦產出,整個挖礦機制通過分布式預言機協議運行,其中設置了數據提供者、數據驗證者和仲裁節點三個角色,按照挖礦和獎懲機制保障生態運行。[2021/2/22 17:40:36]
例如,如果Curve的mUSD Metapool添加了 200 萬個 mUSD,600 萬個 3Crv 和 100k 個 3Crv,則將收到 100,068 個 LP 代幣 (musd3Crv)。如果 Metapool 有 600 萬個 mUSD,添加了 200 萬個 3Crv 和 100k 個 3Crv,將收到 100,892 個 LP 代幣 (musd3Crv)。
那么三明治攻擊是如何實現的呢?
攻擊者在將交易包含到區塊之前,就會監控Mempool中可能被利用的交易。為了利用交易,他們賄賂區塊生產者,將他們的交易包含在可利用的交易之前和之后。也就是說,他們將易受攻擊的交易與自己的交易夾在一起。如果有一筆交易將 3Crv 添加到最低 LP 金額為零的 mUSD Metapool,則攻擊者的第一筆交易將是減少 Metapool 中的 mUSD 數量。這意味著在易受攻擊的添加流動性交易中收到的 Metapool LP 代幣數量遠低于應有的數量。在第三個交易中,攻擊者返還在第一個交易中刪除的mUSD,并將收益裝入囊中。
市值Top5的DeFi項目UMA今日上線OKEx ?:OKEx官方公告顯示,8月31日12:00(HKT)將正式上線DeFi項目UMA并開啟充值,同日15:00(HKT)開放 UMA/USDT、UMA/ETH的市場交易。此外,9月2日17:00(HKT)將開啟UMA提現。
據了解,UMA是目前DeFi市場上市值排行Top5的項目。其致力于在 Ethereum 上建立金融基礎設施,以實現普遍的市場準入。其兩大核心產品分別為:數據驗證機制(DVM)和無價金融合約。此外UMA還擁有較高的市場認可度,曾獲得Coinbase Ventures投資。[2020/8/31]
例子
使用Curve的mUSD Metapool,池中有6,000,000 mUSD和3Crv, 11,917,295個LP代幣(musd3Crv)和1.018095美元的虛擬價格。
攻擊者通過使用 6,500,000 (54.5%) 池流動性提供者 (musd3Crv) 代幣從池中提取 5,973,425 的mUSD,使用他們池中的大部分流動性提供者代幣 (musd3Crv) 來平衡池。使用remove_liquidity_one_coin函數進行單邊提款,池中剩下 0.43% mUSD 和 99.56% 3Crv。虛擬價格上漲了近1%,至1.019105,因為大量不平衡的提現為池收取了費用。
數據:頂級DeFi代幣在過去30天里平均上漲22%:根據分析平臺Santiment的數據,頂級DeFi代幣在過去30天里平均上漲了22%:“在過去的30天里,DeFi項目絕對是爆炸式增長。排名前100位的DeFi代幣平均回報率為22%。COMP、MKR、KNC、REP、AAVE、REN和LRC回報率均大幅超過30日平均值。”(CryptoSlate)[2020/6/20]
受害者使用add_liquidity函數將100,000個3Crv添加到不平衡的池中,且沒有最小流動性提供者數量。如果池是平衡的,受害者得到81978個LP代幣而不是100371個。這意味著受害者得到的LP代幣比他們應該得到的少18,393個(18%)。以美元計算,受害者得到的美元價值減少了18,643(18%)。
對于第三個也是最后一個交易,攻擊者使用add_liquidity將他們從第一個交易中提取的5,973,425個mUSD添加回池中,以接收6,503,610個LP代幣(musd3Crv)。比第一次交易多取了3610美元。池的虛擬價格將增加1%至1.019216,因為這是另一個不平衡的交易。以美元計算,攻擊者的LP價值從6,500,000 * 1.018095 = 6,617,617美元上升到6,503,610 * 1.019216 = 6,628,583美元,增加了10,966美元(1.65%)。
如果受害者損失了18643美元價值,而攻擊者只獲得了10966美元價值,那么缺失的7677美元價值在哪里?
使池失衡的0.04%費用由流動性提供者和Curve投票托管的CRV (veCRV)持有者平均分攤。攻擊者未持有的 5,417,295 LP 代幣的價值從 5,515,323 美元增加到 5,520,794 美元。這比池費用的 50% 增加了 5,471 美元。增加的美元價值歸于托管 CRV (veCRV) 持有人。
Curve的保護
為了防止三明治攻擊,在向Curve Metapool添加流動性時,需要指定一個合理的最小LP代幣數量。通常,DeFi 協議會在交易中傳入相當數量的金額。Curve池中的add_liquidity函數就是min_mint_amount的一個很好的例子。但是對于標準的EIP-4626存款函數,沒有定義參數來指定最小金額,因此我們無法傳入相當數量的鏈下計算的Metapool LP代幣。
Curve池有一個calc_token_amount函數,它可以計算池代幣存款收到的 LP 代幣數量。但這不能用來防止三明治攻擊。如果已經運行了一個交易來平衡池,那么calc_token_amount函數將只返回當前不公平的LP代幣數量。
因此問題仍然存在,EIP-4626函數沒有辦法傳遞最小量。打破標準來添加這一點是不可取的,使用預言機也是次優的。我們需要鏈上方法。
mStable的方法
mStable的金庫獲得一個公平的Metapool LP代幣價格的方法是使用Curve Metapool和Curve 3Pool的虛擬價格。get_virtual_price函數以美元為單位返回池的流動性提供者代幣的價格。它通過計算池的不變式來實現這一點,該不變式是池中代幣的美元價值除以代幣的總供應量。由于池中代幣的余額不影響池的不變值或總美元價值,虛擬價格不會受到三明治攻擊。
對于存入mStable金庫的存款,我們需要在Curve的3Pool LP代幣(3Crv)中對Metapool LP代幣進行定價,因為這是我們在金庫中使用的資產。為此,我們得到3Pool虛擬價格,并將其除以Metapool LP代幣價格。
一旦我們有了一個合理的價格,我們就可以通過目前配置為 1% 的滑點系數來降低它。這個調整后的公平價格用于計算在向池中添加3Crv流動性時可以接收的Curve Metapool LP代幣(musd3Crv)的最小數量。
存款的全部流程如下:
結論
雖然標準在標準化和獲得采用方面起著巨大的作用,但像這樣的問題提醒我們,在DeFi方面沒有輕松的勝利。我們需要認識到現有標準的局限性,并為它們尋找最佳的解決方案。
Source:https://medium.com/mstable/solving-the-issue-with-slippage-in-eip-4626-3af9a5d8e597
去中心化金融社區
個人專欄
閱讀更多
金色早8點
比推 Bitpush News
Foresight News
PANews
Delphi Digital
區塊鏈騎士
深潮TechFlow
鏈捕手
區塊律動BlockBeats
比推BitpushNews
DeFi之道
1.十五張圖看懂 2022 年加密VC的投資變化2022 年,加密 VC 向 Crypto 初創公司投去了總計 300 億美元的資金,這一數值與 2021 年的 310 億美元非常接近.
1900/1/1 0:00:00隱私計算,最開始萌芽于 Zcash、Dash、Monera 等匿名幣,在近兩年開始逐漸開始有了自己的聲量.
1900/1/1 0:00:002022年,是元宇宙在互聯網語境里祛魅的一年,以Meta、微軟為代表的頭部公司在元宇宙發展方面紛紛陷入困境.
1900/1/1 0:00:00文/Julian,wasabiwallet;譯/金色財經xiaozou比特幣正走在大規模采用的征途中。但許多人還不明白,隨著這一技術的成功發展和擴張,國家和個人之間的關系將發生顛覆性變化.
1900/1/1 0:00:00英國跑車品牌阿斯頓·馬丁也出NFT了,名為Aston Martin NFT Vantage Series的這組NFT系列據悉由品牌方與手游廠商The Tiny Digital Factory合作.
1900/1/1 0:00:00圖片來源:由 無界版圖AI 工具生成在與 Avalanche 生態系統共興衰之后,Trader Joe 還是選擇了擴展到 Arbitrum 上.
1900/1/1 0:00:00