Andre Cronje:解讀預言機發展歷史與未來方向

文:Andre Cronje

來源:medium

豐富的數據源是互聯網發展的基礎。由於API (預言機),靜態頁面變成了動態數據。隨著API (預言機)在傳統網絡中的發展,它們催生了以前不可能出現的全新的應用程序。這是網絡從web1.0(靜態)進化到web2.0(動態)背後的關鍵。

個人說明:3-4年前,我對這個主題的看法是比較二元的。我相信有傳統的中心化網絡(web2.0)和去中心化網絡(web3.0 [虽然我不喜欢这个名称,但我会在文章中使用它,我认为deweb1.0可能是一个更好的标签] )。我認為,這兩者需要完全分開,不能混為一談。當時的去中心化網絡類似於web1.0早期的靜態頁面,它們可以獨立存在。在過去的4年裡,去中心化的網絡已經演變成一個更具交互性的系統。接收“鏈下”數據(天氣、航班、供應鍊等)的Web2.0並沒有削弱它的力量,而是使其呈指數級增長。 web3.0也是如此。

預言機v1:鏈上請求,鏈下提供商;例如Oraclize

  • 用戶向智能合約發起鏈上交易(存款/提款/買入/賣出/清算等)

  • 智能合約向預言機智能合約提交鏈上HTTP請求

  • 鏈下中心化服務接收HTTP請求事件並解析鏈下的HTTP請求,接收數據

  • 中心化批准服務將接收到的數據寫回到鏈上的智能合約

優點:

  • 可以獲取任意的預言機數據

  • 數據只在要求時提供(沒有不必要的數據存儲或gas費用)

缺點:

  • 中心化服務

  • 響應異步延遲(應用程序響應性)

  • 費用(需支付啟動交易及回調的gas費用)

預言機v2:鏈上提供商;例如Chainlink

  • Dapp從預言機(鏈下)請求數據源(主要是價格)

  • 分佈式網絡將數據源添加到其節點

  • 中心化授權器定期在鏈上寫入數據

優點:

  • 數據可用性(數據在需要時在鏈上,無響應延遲)

缺點:

  • 無任意數據

  • 請求預先批准的數據源和訪問

  • 中心化授權器(信任)

  • 成本(對每次鏈上寫入所需的gas提供補貼)

預言機v3:鏈下數據,鏈上驗證者,例如Chainlink(alpha版)

  • Dapp/用戶向授權服務請求鏈下可證明的數據

  • 中心化驗證者請求鏈下數據並簽名(通過他們自己的授權密鑰);返回值、時間戳、數據源

  • Dapp發起鏈上交易(存款/提款/買入/賣出/清算等),作為交易的一部分,它包括簽名數據

  • 智能合約驗證簽名者是預期的證明者,驗證數據的來源,驗證時間戳,並驗證數據。如果全部驗證了,數據集就會用新的數據進行更新,並執行交易的其餘部分

優點:

  • 可以請求任意數據

  • 只在請求時提供數據

  • 數據可用性(在處理交易時可用)

  • 低成本(只需為額外的簽名驗證和SSTORE支付費用)

缺點:

  • 中心化授權/證明者(信任)

  • 合約需要預先知道證明者的公鑰

預言機v4:零知識可證明數據,待定

  • Dapp/用戶從證明者程序請求鏈下可證明的數據

  • 一個任何人(包括dapp本身)都可以運行的證明者程序(為TCP定制的zk電路 [注意:我们离这个很远] ),它將目標端點(HTTP/SSL/TCP/等)作為參數,並提供證明和輸出;返回數據集、時間戳和數據源(目標端點)

  • Dapp發起鏈上交易(存款/提款/買入/賣出/清算等),作為交易的一部分,它包括證明和數據

  • 智能合約驗證證明,驗證數據來源,驗證時間戳,並驗證數據。如果全部驗證了,數據集就會用新的數據進行更新,並執行交易的其餘部分

優點:

  • 可以請求任意數據

  • 只在請求時提供數據

  • 數據可用性(在處理交易時可用)

  • 成本低(只需為證明驗證和SSTORE支付費用)

  • 無中心化實體(去信任)

缺點:

  • 合約需要預先了解證明者程序

  • 高度複雜的電路,短期內不太可能實現

Total
0
Shares
Related Posts