解讀| Compound 遭受價格預言機操縱攻擊事件始末

DeFi開發者們若想在區塊鏈世界裡構建一個龐大的金融帝國,必須要先解決價格預言機問題。
撰文 | 區塊鏈金融分析師.Matlif
出品| NEST愛好者(nestfans.com)已獲作者授權發布

11 月26 日下午Coinbase 交易所穩定幣DAI 價格出現劇烈波動,一度暴漲超30% 至1.34 美元(圖1),後又快速回落,這導致使用Coinbase 作為預言機餵價信息的去中心化借貸平台Compound 的抵押資產出現了大規模清算。


圖1 :Coinbase 交易所DAI/USD 交易對價格,數據來源Coinbase
 
Debank 數據顯示,有價值高達87837568 美元的加密資產被系統強制清算(圖2)。

11 月26 日Compound 抵押資產大規模被清算。

圖2 數據來源:Dune Analytic
 
Compound 是目前DeFi 市場上主流的以太坊借貸平台之一,成立於2018 年9 月。

Debank 數據顯示,截止2020 年11 月30 日11 點,平台總鎖倉的加密資產高達16 億美元。借款總量16.26 億美元,在抵押借貸平台中排名第一(圖3)。

抵押借貸平台借款總量排名
        圖3 數據來源:Debank

Compound 內不同幣種的抵押率最低要求各不相同,DAI 一般是75%。 DAI 價格的大幅波動導致平時看起來比較安全的抵押率(債務價值/抵押資產價值)出現了大幅波動,因此觸發了清算線。

舉個例子來計算,如果某用戶使用300 UDST 貸出了210 DAI,若DAI 和USDT 的價格均能穩定在1 美元左右,其抵押率是70%,當DAI 漲至1.34 美元,借款價值大增而抵押資產價值不變,此時的抵押率將升至約93.8%,遠大於抵押率最低要求,導致清算發生。

而本次Compound 預言機攻擊事件並非近期首起針對報價系統進行的攻擊,Harvest Finance、Value DeFi、Cheese Bank、Origin Protocol 等近期都先後遭到類似預言機的攻擊,MakerDAO 和Aave 歷史上也都因此發生過大規模清算。
 
操控預言機所依賴的信息源進行短時間的價格操縱以達成誤導鏈上價格是典型的預言機攻擊,其本質是對預言機進行操控,造成內外價格差並利用閃電貸等新型金融工具從中套利。

Compound 需要預言機的價格來確定借貸能力和抵押要求,以及用於需要計算帳戶價值的所有功能。 Compound 白皮書中提到將所謂的預言機功能委託給了一個委員會,該委員會從前十大交易所中匯總價格,現實情況是Compound 使用的DAI 價格數據只依賴Coinbase 這個中心化的交易所來提供,其預言機取價數據來源中心化且單一,而中心化的來源則很容易被偽造、篡改、修改或隱藏信息。

使用中心化預言機的主要弊端具體分析有以下3 點:

1)可靠性差,容易被攻擊,中心化預言機有單點故障和單點攻擊的問題;

2)用戶需要信任中心化平台或者第三方獨立機構,這違背了區塊鏈的去信任、去中心化的基本原則:

3)單平台和第三方機構掌握所有用戶Query 數據的信息,無法保證用戶的隱私。
 
去中心化預言機拯救DeFi 生態:NEST Protocol
 
Compound 是典型的DeFi 項目,是去中心化的,一個去中心化的借貸平台一直採用的是一個自建的中心化預言機,這是很矛盾的。所以我認為使用符合區塊鏈本質的去中心化的預言機服務是避免這類事件的最佳解決方案。

預言機是一個能夠將數據從鏈下世界以某種符合區塊鏈共識機制的方式帶到區塊鏈上的基礎設施。 DeFi 對鏈下信息的需求很大,其發展離不了真正去中心化驗證的價格預言機。

現在市場上去中心化預言機項目並不多,最具代表性的有:Chainlink、NEST Protocol、Band Protocol 等,(圖4) 綜合分析了各預言機方案的優劣勢,我們認為NEST 預言機是現在唯一一個經過證明的可以被DeFi使用的預言機,可參讀《為什麼NEST 是唯一可用於DeFi 的預言機》
      
圖4:當前主要預言機項目對比分析
 
Chainlink、NEST Protocol、Band Protocol 和Tellor。這四個預言機遵從不同的設計原則,並擁有不同的去中心化程度,可參讀文章《Chainlink、NEST、MakerDao 預言機全方位綜合對比》: https://www.jinse.com/blockchain/ 602096.html

其中NEST Protocol 採用了一種全新的激勵方法來進行去中心化數據上鍊過程,礦工通過質押報價交易對資產的方法進行雙邊報價。例如,同時質押30 個ETH 和17400 個USDT 意味著該礦工對ETH 的報價為580 USDT/ETH。當報價不正確時,套利者可以在25 個區塊內(約5 分鐘),對報價礦工質押的任意一邊通證進行買入,從而進行價格修正。若在25 個區塊內,報價未被挑戰,則意味著該報價無法被套利;該報價將被NEST Protocol 下游DeFi 協議所調用(圖5)。在其它預言機中並無類似的驗證過程,因此,其它預言機無法保證其價格數據不被市場套利。

圖5:NEST 預言機的套利機制使得報價處於一個可計算的範圍內

NEST Protocol 的驗證機制使得惡意報價難以生效。若攻擊者在NEST Protocol 進行惡意報價,便會暴露給市場很大的套利空間。有關NEST 預言機的抗攻擊性機制和攻擊成本的計算,可參考NEST Protocol 中文白皮書:
https://nestprotocol.org/doc/zhnestwhitepaper.pdf

可以理解為,NEST 預言機系統是將經過全市場驗證後的價格數據在鏈上生成出來,利用驗證者與報價礦工之間的博弈,來懲罰犯錯誤的報價礦工,使得錯誤數據不會被NEST預言機系統收錄。而其他預言機將鏈下價格數據“上傳” 到鏈上,無論數據錯誤與否,調用者無法驗證。他們是先使用,後驗證。如果出了錯,用戶資產受到損失再進行追溯和懲罰。而NEST 是直接杜絕錯誤數據被採用,這是NEST 預言機與其他預言機的本質區別。 DeFi 開發者:如何調用NEST 預言機價格數據

分析總結:

目前的DeFi 協議實質上是傳統金融的區塊鏈化。這裡有一個“滑稽”的事實: 當前的大多數DeFi 開發者們並沒有使用符合區塊鏈原則的方式去開發,而是用互聯網的方式去改造,這與區塊鏈精神背道而馳。 我看到了一些DeFi 開發者一味的妥協和折中,捨本逐末,越走越偏。

DeFi 開發者們還需要認清一點,若想在區塊鏈世界裡構建一個龐大的金融帝國,必須要先解決價格預言機問題。 對於價格預言機本身,必須要做到,通過符合區塊鏈共識機制的方式將價格數據在鏈上生成出來,就算成本再高、再難,這也是唯一可行的正確邏輯;而不是謀求便利找幾個節點取個中位數簡單的給鏈上餵價。 金融是非常嚴謹的一門學科,行業亟需金融專業選手與開發者一起構建符合區塊鏈本質的專業金融產品。 v
分享至:

作者:NEST爱好者

本文為PANews入駐專欄作者的觀點,不代表PANews立場,不承擔法律責任。

文章及觀點也不構成投資意見

圖片來源:NEST爱好者如有侵權,請聯絡作者刪除。

關注PANews官方賬號,一起穿越牛熊
推薦閱讀
2020-12-05 03:10
2020-12-05 03:07
2020-12-05 03:02
2020-12-05 02:48
2020-12-05 02:26
2020-12-05 02:23

熱門文章

行業要聞
市場熱點
精選讀物

精選專題

App内阅读