比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > FIL > Info

價格預言機為什么對DeFi如此重要?_THE

Author:

Time:1900/1/1 0:00:00

作者:Samczsun

翻譯:Olivia

2019年年底,我發表了一篇題為?《Takingundercollateralizedloansforfunandforprofit》的文章。在其中,我描述了對以太坊DApp的經濟攻擊,這些攻擊依賴于一個或多個Token的準確價格數據。目前已經到了2020年末,不幸的是,此后眾多項目都犯了非常類似的錯誤,最近的例子是HarvestFinance黑客事件,導致協議用戶集體損失2400萬美元。

雖然開發者對重入等漏洞很熟悉,但預言機操縱價格顯然不是人們經常考慮的問題。相反,基于重入性的漏洞這些年有所下降,而基于價格預言機操縱的漏洞現在卻在上升。因此,我決定是時候有人發表一篇關于價格預言機操縱的權威資源了。

這篇文章分為三個部分。對于不熟悉這個問題的人,有一個關于預言機和預言機操縱的介紹。想要測試自己知識的人可以跳到案例研究,我們在這里回顧了過去與預言機相關的漏洞和利用。最后,我們總結了一些開發人員可以用來保護他們的項目不受預言機操縱的技術。

在現實生活中預言機操縱

2015年12月1日,星期三。你的名字叫大衛-斯帕戈,你正在澳大利亞墨爾本的北京公爵演唱會上。你想親自見見樂隊,但你和后臺通道之間站著兩個保安,他們不可能讓一些普通人直接走進去。

你想知道,如果你表現得像個普通人,保安們會有什么反應。樂隊的家人們肯定會被允許到樂隊后臺參觀,所以你要做的就是讓保安們相信你是他們的家人。你思考了一會兒,想出了一個只能用天才或瘋子來形容的計劃。

迅速安排好一切后,你自信地走到保安面前。你自我介紹說是大衛-斯帕戈,PekingDuk的家人。當保安要求你提供證據時,你向他們展示了無可辯駁的證據--維基百科。?

DefiLlama推出代幣解鎖追蹤服務:金色財經報道,鏈上數據分析網站Defi Llama宣布推出代幣解鎖追蹤服務,允許用戶查看未來會解鎖代幣的DeFi項目,以及每天釋放的代幣數量、監控代幣解鎖時間表。[2023/4/2 13:40:35]

保安向你招手,讓你稍作等待。五分鐘過后,你在想是否應該在執法人員出現之前逃走。當你準備離開時,魯本-斯泰爾斯走了過來并做自我介紹。你和他一起走到一個綠色房間,樂隊對你的聰明才智印象深刻,最后你們一起喝了幾瓶啤酒。后來,他們在自己的Facebook頁面上分享了發生的事情。

什么是價格預言機?

價格預言機,大抵是指任何你可以咨詢價格信息的東西。當Pam向Dwight詢問SchruteBuck的現金價值時,Dwight就像一個價格預言機。?

在以太坊上,一切都是智能合約,價格預言機也是如此。因此,了解價格預言機如何獲取價格信息的方式更有用。一種方法是,你可以簡單地從價格API或交易所獲取現有的鏈外價格數據,并將其帶到鏈上。另一種方式,你可以通過咨詢鏈上去中心化交易所來計算即時價格。

這兩種選擇都有各自的優勢和劣勢。鏈外數據對波動的反應一般較慢,這一特點是好是壞取決于使用它的目的。不過它通常需要少數特權用戶來推送鏈上數據,所以你必須相信他們不會變壞,不能被脅迫推送不良更新。鏈上數據不需要任何特權訪問,并且總是最新的,但這意味著它很容易被攻擊者操縱,這可能導致災難性的后果。

什么可能會出問題呢?

讓我們來看看幾個案例,在這些案例中,一個集成度不高的價格預言機導致了DeFi項目的重大經濟損失。

SynthetixsKRWOracle故障

Synthetix是一個衍生品平臺,它允許用戶接觸其他貨幣等資產。為了實現這一目標,Synthetix依靠定制的鏈外價格推送實現,其中從一組秘密的價格推送計算出的總價格以固定的時間間隔發布在鏈上。然后,這些價格允許用戶針對支持的資產進行多頭或空頭交易。

去中心化交易協議Astroport在Injective測試網上發布測試版:1月19日消息,去中心化交易協議Astroport在Injective測試網上發布了測試版。在主網啟動后,Astroport的管理機構Astral Assembly還可以提議將Injective部署連接到Astroport的Terra 2實例以進行跨鏈治理和持續的費用共享,這可以為整個Injective產生更多的協議費用。[2023/1/19 11:19:38]

2019年6月25日,Synthetix所依賴的其中一個價格推送錯誤地報告了韓元的價格,比真實匯率高出1000倍。由于價格預言機系統的其他地方出現了其他的錯誤,這個價格被系統接受并發布在鏈上,在鏈上一個交易機器人迅速在sKRW市場上進行了買入和賣出。?

理論上講,該機器人總共能夠賺取超過10億美元的利潤,雖然Synthetix團隊能夠與交易員談判,以換取漏洞獎金來返還資金。

Synthetix正確地執行了預言機合約,并從多個來源提取價格,以防止交易者在鏈上發布價格變化之前預測價格變化。然而,一個上游價格源發生故障的孤立案例導致了毀滅性的攻擊。這說明了使用鏈外數據的價格預言機的風險:你不知道價格是如何計算出來的,所以你的系統必須精心設計,使所有潛在的故障模式都能得到妥善處理。

抵押貸款

如前所述,我在2019年9月發表了一篇文章,概述了使用依賴鏈上數據的價格預言機的相關風險。雖然我強烈建議閱讀原帖,但它相當長,技術細節也很多,可能會讓人難以消化。因此,我將在這里提供一個簡化的解釋。

想象一下,你想把去中心化的借貸帶到區塊鏈上。允許用戶存入資產作為抵押品,并借入其他資產,最高金額由他們存入的資產價值決定。假設用戶想用ETH作為抵押品借入美元,ETH當前價格為400美元,抵押率為150%。

數據:平臺幣在交易所總儲備金中占比排前三的是 Huobi、Bitfinex、Crypto.com:金色財經報道,據知識圖譜協議 0xScope 數據,平臺幣在交易所總儲備金中占比比例位居前三的交易所分別為 HuobiGlobal 、Bitfinex、Crypto.com 。

具體來說,從總儲備金證明中來看,火幣平臺幣 HT 占總投資組合的比例高達 32.31%, BTC 占13.84%, ETH占4.5%(僅計算原生幣);Bitfinex 平臺幣 LEO 占總投資組合的 28.39%,而BTC占 34.76%, ETH 占 33.4%(僅計算原生幣);Crypto.com 平臺幣 CRO 占總投資組合的 14.33%,而BTC占 22.59%, ETH 占 9.59%(僅計算原生幣)。[2022/11/25 20:45:35]

如果用戶存入375個ETH,相當于存入150000美元的抵押品。每1.5美元的抵押品可以借到1美元,所以他們最多可以從系統中借到10萬美元。?

但當然,在區塊鏈上,并不是簡單地宣布1個ETH值400美元那么簡單,因為一個惡意用戶可以簡單地宣布1個ETH值1000美元,然后從系統中拿走所有的錢。因此,對于開發者來說,想要獲得預言機所讀取的最近價格是很有誘惑力的,比如Uniswap、Kyber或其他去中心化交易所的當前現貨價格。

乍一看,這似乎是正確的做法。畢竟,只要你想買入或賣出ETH,Uniswap的價格總是大致正確的,因為任何偏差都會被套利者迅速糾正。然而,事實證明,在交易過程中,去中心化交易所的現貨價格可能會出現較大的錯誤,如下例所示。

考慮一下Uniswap的儲備金是如何運作的。價格是根據儲備持有的資產數量計算的,但隨著用戶在ETH和美元之間進行交易,儲備持有的資產會發生變化。如果一個惡意用戶在從你的平臺貸款前后進行交易怎么辦?

螞蟻集團數字科技副總裁婁建勛:數字化轉型已成為推動中國產業邁向全球價值鏈中高端的新動能:金色財經報道,6月23日,鏈上新能源在線研討會舉辦。螞蟻集團數字科技副總裁婁建勛在會上指出,數字化轉型已成為推動中國產業邁向全球價值鏈中高端的新動能。產業協作數字化的關鍵是信任和鏈接。鏈接意味著實現價值流轉的可能性,但當中的交易參與方需要建立信任的底座。區塊鏈提供了信任底層機制的基礎,這是技術本身的特性決定的,螞蟻鏈的工作就是在落實信任和鏈接的基石。螞蟻鏈在區塊鏈核心技術上取得了全面突破,包括高效智能合約引擎、數字資產模型、靈活組織協作、軟硬件一體化、全面安全保護、安全高效隱私計算、新型區塊鏈存儲、可擴展共識機制、豐富的跨鏈服務等。此外,螞蟻鏈在區塊鏈專利方面,連續5年全球申請量第一,2021年全球專利質量第一。同時,螞蟻鏈通過“鏈上+鏈下”助力實體產業數字化,比如助力哈啰構建低碳出行生態鏈,助力車領域50萬+助力車完成資產上鏈,作為可信資產鏈接后端供應鏈。[2022/6/23 1:26:39]

在用戶貸款之前,他們用2000000美元購買了5000個ETH。Uniswap交易所現在計算出的價格是1ETH=1,733.33美元。現在,他們的375個ETH可以作為價值433,333.33美元資產的抵押品,他們借到了這些資產。最后,他們用5,000ETH換回他們原來的2,000,000美元,從而重置價格。最終的結果是,你的貸款平臺只是讓用戶在沒有投入任何抵押物的情況下,多借了333,333.33美元。?

這個案例研究說明了使用去中心化交易所作為價格預言機時最常見的錯誤--攻擊者在交易過程中幾乎完全控制了價格,而試圖準確地讀出這個價格就像在秤上讀出它完成結算前的重量一樣。你很可能會得到錯誤的數字,根據情況,可能會讓你損失很多錢。

SynthetixMKR操縱

深證大學2022年新增“區塊鏈信息管理與信息系統”專業:金色財經報道,深證大學官微發布深圳大學2022年招生計劃和政策解讀公布。內容顯示,2022年總計劃招生擬為7210人,較去年增加260人。此外,2022年新增4個招生專業。其中,新增1個普通專業:“供應鏈管理”,另外新增3個“中外合作辦學”專業。在外方學位中,新增了金融科技(理學學士學位)、大數據管理與應用 (理學學士學位)、區塊鏈信息管理與信息系統 (理學學士學位)。[2022/6/10 4:16:33]

2019年12月,Synthetix又遭遇攻擊,原因是價格預言機操縱。這次值得注意的是,它跨越了鏈上價格數據和鏈下價格數據之間的障礙。

Reddit用戶u/MusaTheRedGuard觀察到,一名攻擊者針對sMKR和iMKR進行了一些非常可疑的交易。攻擊者首先通過買入sMKR購買了MKR的多頭頭寸,然后從UniswapETH/MKR交易對中購買了大量的MKR。等待一段時間后,攻擊者將他們的sMKR賣出換成iMKR,并將他們的MKR賣回Uniswap。然后,他們重復這個過程。

在幕后,攻擊者通過Uniswap進行的交易讓他們可以隨意改變Synthetix上MKR的價格。這很可能是因為Synthetix所依賴的鏈外價格推送實際上是依賴于MKR的鏈上價格,沒有足夠的流動性讓套利者將市場重新設置回最佳狀態。

這個事件說明,即使你認為自己使用的是鏈下價格數據,但實際上你可能仍然在使用鏈上價格數據,你仍然可能暴露在使用這些數據的復雜性之中。

bZx黑客

2020年2月,bZx在幾天內被黑了兩次,損失約1百萬美元。你可以在這里找到palkeo寫的關于兩次黑客的優秀技術分析,但我們只看黑客的第二次攻擊。

在第二個黑客攻擊中,攻擊者首先用ETH購買了Kyber上幾乎所有的sUSD。然后,攻擊者自己從Synthetix購買了第二批sUSD,并將其存放在bZx上。攻擊者用sUSD作為抵押,借到了他們允許的最大數額的ETH。然后他們將sUSD賣回給Kyber。

如果你一直在關注,你會認識到這本質上是相同的抵押貸款攻擊,但使用不同的抵押品和不同的去中心化交易所。

yVaultBug

2020年7月25日,我向yEarn報告了一個關于他們新的yVault合約推出的bug。我將在下面簡單總結一下。

yVault系統允許用戶存入Token并在上面賺取收益率,而不需要自己管理。在內部,金庫會跟蹤yVaultToken的總發行量以及存入的基礎Token總量。單個yVaultToken的價值由鑄造的Token與存入的Token的比例給出。金庫賺取的任何收益都會分攤到所有已發行的yVaultToken(因此,也就分攤到所有yVaultToken持有人身上)。

第一個yVault允許用戶通過向BalancerMUSD/USDC池提供流動性來賺取USDC的收益率。當用戶向Balancer池子提供流動性時,他們會收到BPT作為回報,BPT可以兌換池子的一部分。因此,yVault根據可以用其BPT贖回的MUSD/USDC的數量來計算其持有的價值。

這似乎是正確的實現方式,但不幸的是,與之前給出的原理相同--交易過程中Balancer池的狀態并不穩定,不能被信任。在這種情況下,由于Balancer選擇的價格曲線,用戶從USDC換成MUSD時,不會得到1:1的匯率,但事實上會在池子里留下一些MUSD。這意味著BPT的價值可以暫時被放大,這使得攻擊者可以隨意操縱價格,隨后將金庫耗盡。

這一事件表明,價格預言機并不總是清晰的反映價格數據,開發者需要警惕他們攝取的是什么樣的數據,并考慮這些數據是否能被無權用戶輕易操縱。

對于收益率耕作的黑客攻擊

2020年10月26日,一個不知名的用戶入侵了流動性挖礦的池子,使用的技術你現在可能已經猜到了。你可以在這里閱讀官方的事后報告,但我再一次為你總結一下:攻擊者通過執行交易將曲線池中USDC的價格虛化,以降低的價格進入耕作池,通過逆轉之前的交易恢復價格,并以更高的價格退出耕作池。這導致了超過3300萬美元的損失。

我該如何保護自己?

現在,我希望你已經學會了認識到共同點--你使用價格預言機并不總是安全的,如果你不遵循適當的預防措施,攻擊者可能會攻擊你的協議,將你的錢全部發送給他們。雖然沒有一個萬能的修復方法可以參考,但這里有一些過去對其他項目有效的解決方案。也許其中一個也會適用于你。

尋找有流動性充足的池子

就像跳入游泳池的淺灘一樣,跳入流動性不足市場是痛苦的,可能會導致重大的開支,這將永遠改變你的生活。在你考慮你打算使用的具體價格預言機的復雜性之前,請考慮該代幣的流動性是否足以保證與你的平臺整合。

一鳥在手,勝過兩鳥在林

在Uniswap上看到潛在的匯率可能會令人著迷,但在你真正點擊交易和代幣放在你的錢包里之前,并不意味著那是最終價格。同樣,確定兩種資產之間匯率的最好方法是直接交換資產。這種方法很好,因為沒有回扣,也沒有萬一。但是,對于借貸平臺等協議來說,可能就不適用了,因為這些協議是需要持有原始資產的。

去中心化的預言機

有一種方法可以總結出依賴鏈上數據的預言機的問題,那就是它們有點太新潮了。既然如此,為什么不引入一點人為的延遲呢?寫一個合約,它可以用Uniswap這樣的去中心化交易所的最新價格來更新自己,但只有當一小部分特權用戶提出請求時才會更新。現在即使攻擊者可以操縱價格,他們也無法讓你的協議真正使用它。

這種方法實現起來真的很簡單,而且是速戰速決,但也有一些缺點--在鏈路擁堵的時候,你可能無法像你希望的那樣快速更新價格,而且你仍然容易受到三明治攻擊。另外,現在你的用戶需要相信你真的會保持價格更新。

延遲防御

操縱價格預言機是一個時間敏感的操作,因為套利者總是在觀察,并希望有機會優化任何次優市場。如果攻擊者想把風險降到最低,他們會希望在一次交易中完成操縱價格預言機所需的兩次交易,這樣就不會有套利者在中間跳躍的機會。作為協議開發者,如果你的系統支持的話,可能只需要實現用戶進入和退出系統之間短至1個block的延遲就可以了。

當然,這可能會影響到可組合性,礦工與交易員的合作正在上升。在未來,不良行為者可能會在多個交易中進行價格預言機操縱,因為他們知道與他們合作的礦工會保證沒有人可以跳到中間,從他們的收益中分一杯羹。

時間加權平均價格(TWAP)

UniswapV2引入了一個TWAP預言機,供鏈上開發者使用。文檔中更詳細地介紹了該預言機提供的具體安全保障,但一般來說,對于長期沒有鏈上擁堵的大池子來說,TWAP預言機對預言機操縱攻擊有很強的抵抗力。不過,由于其實現的性質,在市場波動較大的時刻,它的響應速度可能不夠快,而且只適用于鏈上已經有流動性代幣的資產。

M-of-N?喂價

有時候人們會說,如果你想把一件事做好,你就自己去做。如果你召集N個值得信賴的朋友,讓他們提交他們認為合適的鏈上價格,最好的M個答案就成了當前的價格,會怎么樣?

如今很多大型項目都在使用這種方法。Maker運行了一組由可信實體運營的價格源,Compound創建了Open預言機,并擁有Coinbase等報告器,Chainlink聚合了Chainlink運營商的價格數據,并在鏈上公開。只要記住,如果你選擇使用這些解決方案之一,你現在已經將信任委托給第三方,你的用戶也必須這樣做。要求報告人手動在鏈上發布更新也意味著,在市場波動大、鏈上擁堵的時候,價格更新可能無法及時完成。

結論

價格預言機是DeFi安全性的一個重要組成部分,但往往被忽視。安全地使用價格預言機是很難的,而且有很多方法可以讓您和您的用戶都吃虧。在這篇文章中,我們介紹了過去操縱價格預言機的例子,并確定了在交易中間讀取價格信息可能是不安全的,可能會導致災難性的財務損失。我們還討論了一些其他項目過去用來打擊價格預言機操縱的技術。不過最后,每一種情況都是獨特的,你可能會發現自己不確定自己是否正確使用了價格預言機。如果是這種情況,請隨時聯系我們尋求建議!

Tags:ETHUSDMKRTHEethw幣總量多少usdk幣價格mkr幣價格The Beatles

FIL
大餅千點行情多空竄 多頭信號仍然強勁_Chain

主流幣早間開始強勢上行,BTC行情獲得1000美元漲幅沖擊18500關口,最終沖擊失敗在午盤出現了多頭回補引發的瀑布行情,行情快速跌超1000美元.

1900/1/1 0:00:00
江蘇連云港祥云投資債權融資產品_元宇宙

連云港祥云投資有限公司,灌云縣人民政府100%控股,公開發債主體,1只債券存續,規模4.5億,主體信用AA-,債項連續三年評級AA+,總資產60.31億,是灌云經開區主要建設平臺.

1900/1/1 0:00:00
老何論幣:11.19BTC行情分析 震蕩持久多空爭奪戰愈演愈烈_STA

  不要質疑你的付出,這些都會一種累積一種沉淀,它們會默默鋪路,只為讓你成為更優秀的人。當有一天,你足夠優秀,你會感謝今天所吃的苦,愿你足夠美好,可以堅強似鋼,又可溫柔似水.

1900/1/1 0:00:00
亮哥論幣; 11.18以太坊行情分析及操作建議 以太緊跟大餅步伐回調后該如何操作_區塊鏈

寄語: ???面對金融市場,沒有難做的交易,只有看不懂的行情。機遇太多,誘惑也太多,學會篩選和等待,真正看懂的趨勢,加上全面合理的規劃,再輔助果敢而恰當的出擊,就能把握一波波趨勢帶來的豐厚利潤.

1900/1/1 0:00:00
11.19 比特幣行情分析_BTC

聚精會神學習技藝,提高自己的交易技巧,而不是僅僅把注意力放在自己交易輸贏多少上。只要自己按照自己的交易計劃做了應當做的交易,那么就祝賀自己,對這筆交易感到心安理得,而不要去管這筆交易到底是賺了還.

1900/1/1 0:00:00
比特幣價格觸及1.8萬美元,但交易員預計在創歷史新高之前會出現“輕微”回調_TRA

比特幣(BTC)剛剛在2020年再創新高,三年來首次突破了1.8萬美元。11月17日,比特幣價格上漲至17858美元,此前大量交易推動價格平穩突破17100美元至17300美元的區間,許多分析師.

1900/1/1 0:00:00
ads