bZx 啟示:DeFi 所需的預言機 (Oracle) 應該是怎樣的

買賣虛擬貨幣

前幾日,行業內最熱門的話題當數 bZx 協議上發生的 DeFi 資產“攻擊”事件。根據 PeckShield 資料分析,bZx 協議前後發生的兩次攻擊使得 bZx 協議使用者累計損失 3649 枚 ETH。由於 Uniswap 協議使用演算法價格,在其交易深度有限的情況下,價格很容易發生劇烈變化。套利者正是利用了 Uniswap 的演算法價格缺陷,透過直接或間接的方式惡意操作了某些資產的交易價格,致使引入 Uniswap 價格資料的關聯 DeFi 協議使用者遭受巨大資產損失。

表明上來看,這是發生在 dydx、bZx、Uniwap 等多個 DeFi 協議上的套利行為;究其本質,這兩次攻擊的核心都在於控制 DeFi 協議所引入的預言機價格,攻擊者透過操縱預言機的價格資料,成功進行了 DeFi 協議間的套利。

bZx 事件使得預言機問題再次暴露出來,引發 DeFi 行業內的集體思辨與警覺。早在 bZx 事件之前,著名的合成資產平臺 Synthetix 就發生過重大的預言機攻擊事件:

2019 年 6 月 25 日凌晨 3 點,Synthetix 遭遇 Oracle 攻擊,損失超過 3700 萬枚 sETH。官方披露,Synthetix 使用預言機向多個商業 API 獲取外匯,商品和加密貨幣的價格,整合過後作為最終結果。在事發當時,KRW 的價格僅由兩個 API 提供,其中一個 API 間歇性地彙報錯誤的 KRW 價格(為正常價格的 1000 倍),因此導致預言機從兩個 API 獲得價格資料之後取均值將得到的錯誤價格上報給平臺的匯率合約。Synthetix 平臺的一個交易機器人檢測到之後利用這個錯誤進行大量交易 sKRW,在短短不到 1 個小時的時間裡獲利 10 億美金。

幸運的是,事發之後,Synthetix 平臺與使用者緊急協商溝通,回滾了所有交易,並給予其使用者 Bug 獎金,以此修復了 10 億美金的錯誤!

有關預言機(Oracle)相關的攻擊,Synthetix 發生過,bZx 也發生過,我們很清楚這並不是最後一次,也許只是開始。

預言機問題,是整個區塊鏈行業的公共問題。在 《Vitalik:回顧區塊鏈近 5 年經濟學進展,以及新出現的問題》一文中,預言機問題排在第 16 條,V 神將預言機問題的重點放在了「獲取真實資料」 這一核心要素上。作為 Web 3.0 時代最為重要的基礎設施之一,安全穩定的去中心化預言機系統將在推動 DeFi 發展方面起到決定性作用!

那麼,DeFi 所需的預言機(Oracle)應該是怎樣的?合格的預言機需要滿足哪些條件?

目前,行業內現有的預言機網路通常採用往鏈上合約“喂資料”的方式將線下資料(價格)上傳到鏈上,形成所謂的預言機,以備其它合約呼叫。

此方案存在一個根本性的問題,即資料的驗證並不是直接的,而是透過對上傳者進行驗證的方式間接保證了資料的真實有效,我們將此方案稱之為間接預言機。間接預言機的另一個問題是,上傳資料的節點的信用風險決定了該預言機資料的攻擊成本。如果基於該預言機提供的價格衍生了 1 萬億美金的資產,則預言機節點的信用也應當與之匹配,這在現實中顯然是不可能的,無論採用怎樣的節點隨機性都無法保證,這是本質問題,不是技術問題,因此間接預言機只能用於小規模的、非金融屬性的場景。

DeFi 是整個區塊鏈技術落地應用最具商業價值的方向,未來,它將承載數以萬億計的資產規模。所以,DeFi 所需的預言機絕不是上面提到的間接預言機,而是一種對價格資料直接進行驗證的預言機,以保證價格的真實有效以及足夠及時;同時,該預言機也應該能夠將攻擊成本提升到一個極高的程度,接近無窮大;當然,該預言機也一定要是分散式的,去除所有的中心化風險。

現在,我們可以對 DeFi 所需要的預言機網路特點進行提煉:

1) 資料具備準確性:能真實反應市場資料

2) 資料具備靈敏性:對市場資料的反應足夠快

3) 資料具備抗攻擊性:扭曲或者影響真實資料的成本極高

4) 對資料進行直接驗證:且驗證者是任意第三方,同時不需要審查或門檻

5) 網路系統是分散式的:不需要審查或門檻,可以自由進入或退出

以上 5 點,是我們對一個真正意義上的預言機系統所提出的嚴格要求,鏈上可用的事實不多,鏈下資料事實的上鍊顯得格外重要。

目前市場上常見的預言機網路有 Oraclize、ChainLink、DOS.Network、NEST Protocol、MakerDAO、Band Protocol、Tellor 等,他們各有各的特點,去中心化程度以及驗證方案也各不相同。根據我們前面的定義,他們中的大部分都屬於間接預言機,並不是直接在鏈上生成資料事實。其中比較特殊的是 Tellor 採用 pow 機制進行驗證,但本質上也是間接預言機;此外,值得關注的是 NEST 分散式價格預言機網路,其定義並實現了一種全新的在區塊鏈網路上生成鏈上事實的機制,採用市場博弈理論,透過礦工雙邊資產報價的方式將鏈下市場的價格事實同步產生於鏈上,並結合 NEST 報價挖礦機制,對礦工進行激勵,使其成為一套邏輯閉環的分散式報價系統,完美的將鏈下價格事實同步在鏈上生成出來,形成了分散式價格預言機。

關於預言機價格資料上鍊的思考:

1)價格上鍊的本質不是往鏈上“上傳”價格資訊,而是要在鏈上形成(生成)價格事實;

2)不管是中心化的上傳價格資訊,還是以去中心化的方式上傳,都意味著鏈下價格事實先於鏈上產生。而真正的預言機系統,應該要做到鏈下價格事實同步產生於鏈上;

3)NEST 分散式價格預言機的獨特之處是直接在鏈上形成一個價格事實,而其他預言機系統則只是往鏈上傳了一個價格事實,這是本質差異;

4)預言機價格形成的成本和信用規模,要能夠支撐遠超過該規模的 DeFi ,才是正確的預言機;NEST 分散式價格預言機產生的每一條資料都是礦工用真金白銀去驗證的。

預言機作為區塊鏈技術落定應用最為重要的基礎設施,其對 DeFi 產業的發展起到決定性作用!我們需要更多創新的、優秀的預言機方案,不止於 ChainLink、NEST、Tellor…(完)

參考內容:

1.《PeckShield:bZx協議再遭駭客“二連擊”背後的技術命門》https://www.odaily.com/post/5146453

2.《慢霧:詳解 bZx 兩次被黑始末》https://www.chainnews.com/articles/577907050630.htm

3.《Vitalik:回顧區塊鏈近 5 年經濟學進展,以及新出現的問題》https://www.chainnews.com/articles/862037184275.htm

4.《NEST Protocol:一種分散式價格預言機網路》https://www.nestfans.com/wiki/whitepaper

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;