原文標題:《一文讀懂 Chainlink 如何連通鏈下數據源並展開鏈下計算》
原文來源:Chainlink
重點摘要:
Chainlink並非單體預言機網絡,而是一個通用框架,可以構建出無數個去中心化預言機網絡。
Chainlink各個預言機網絡並行,互不依賴,將鏈下數據源和計算資源連接至智能合約。
Chainlink框架可以用來打造安全的預言機網絡,爲智能合約應用提供喂價、儲備金證明、可驗證的隨機數以及選舉結果等。
過去幾年中,智能合約生態快速增長,總鎖倉量約至400億美元。除此之外,生態中還涌現出種類繁多的去中心化應用。智能合約之所以能實現今天的增長勢頭,最大功臣非去中心化預言機網絡莫屬。如今,去中心化預言機網絡的應用規模不斷擴大,爲智能合約接入原生區塊鏈以外的數據源。預言機驅動了DeFi生態向前發展,實現了全新的鏈上抵押模式,並極大豐富了智能合約的功能。
然而,不同的智能合約用例需要接入不同的鏈下數據集和運算資源。因此,單一預言機網絡無法滿足高級智能合約應用所需的靈活性。比如合成資產協議需要輸入實時喂價,以錨定黃金等大宗商品的實時價格發行通證;預測市場需要從官方渠道獲取美國總統大選的最終結果,以進行結算;區塊鏈遊戲應用需要輸入安全的鏈下隨機數來發放遊戲物品。
以上每種智能合約用例對預言機的需求都完全不同。因此,智能合約生態需要一個面向基礎架構的框架,讓開發者可以開發或接入任何類型的預言機網絡,並能夠定製網絡中的節點、數據源、更新頻率、傳輸方式、安全參數和聚合方式等。
Chainlink網絡爲用戶提供了這樣一種通用框架,靈活配置預言機網絡,以滿足智能合約應用的需求。Chainlink網絡具有極高的兼容性,所有配置的預言機網絡都可以同時並行。本文將探討Chainlink框架的優勢、開發者如何定製預言機網絡以及Chainlink預言機的真實用例。
去中心化網絡通常採用單體設計模式,即同一組節點共同協作,按照預設定的規則提供具體的服務。區塊鏈就是典型的單體設計模式,區塊鏈網絡中的所有節點都執行一套標準化的運算,包括驗證簽名、計算區塊哈希值,最終對交易驗證達成全局共識。每個區塊鏈節點都執行同樣的確定性運算,最終達成共識,它們之間的主要區別就是運算規模不同。
這個模式也許對區塊鏈有用,但對預言機網絡卻並非如此。預言機網絡需要對來自非確定性的現實世界的數據達成共識,通常需要支付費用或獲得許可才能鏈接至鏈下數據源。預言機不適合採用這種單體模式,因爲並非所有節點都可以隨時訪問所有需要訪問的鏈下資源。強迫網絡中每個節點都花錢訂閱用戶所需的付費數據源,這個方法不適用大規模的網絡。另外,許多數據集只對少數人開放,比如企業後端數據庫。因此,採用單體設計模式的預言機網絡只能限制其服務範圍,確保其網絡中所有節點都可以交付服務,比如只從免費的開源API獲取數據,而這些API往往無法提供優質的數據,也無法保障連接質量。
爲了打破這一限制,Chainlink另闢蹊徑,開發出異構網絡,網絡中多個獨立的預言機網絡並行,互不依賴。任何一個預言機網絡的運行都不會對其他網絡產生影響。每個網絡都是專門設立的,爲某一智能合約連接至鏈下數據源和鏈下運算,因此開發者擁有極大的靈活性。Chainlink框架無須許可,任何人都可以在其中創建自己的預言機網絡。這將驅動預言機網絡創新,並使Chainlink網絡不斷向前發展。
Chainlink是一個異構預言機網絡,可以靈活定製預言機網絡。
這種異構模式的最大優勢是Chainlink節點運營商可以定製節點服務。這可以提高預言機的成本效益,因爲節點只需接入所在預言機網絡要求的鏈下資源。比如,Chainlink喂價網絡中的節點只需接入金融市場數據,而不用再接入體育比分、天氣等其他不相關的數據。這樣做可以降低運行Chainlink節點的門檻,也可以進一步使網絡去中心化。當然,如果Chainlink節點希望同時接入多個數據源,他們也可以做到。
如果節點接入企業後端系統、物聯網傳感器和法幣支付系統等需要權限的鏈下系統,那麼它們可以將數據賣給智能合約。Chainlink網絡通過這種異構網絡模式支持數據提供商運行Chainlink節點,並將數據API直接賣給智能合約。
由於節點運營商擁有這樣的靈活性,Chainlink可以將全世界所有數據傳輸至鏈上,極大豐富智能合約應用的類型。
採用Chainlink框架開發的預言機網絡設置了一系列參數,可以根據具體的應用場景調節。任何一個預言機網絡的參數都不會影響其他網絡,因此可以在最大程度上保障靈活性。以下是可定製的參數:
節點運營商: Chainlink節點可以任意組合成預言機網絡,節點運營商包括專業DevOps團隊運行、口碑過硬的數據提供商、傳統企業以及其他實體。
數據源: Chainlink節點可以靈活設置數據源數量,數據源包括免費的開源API、付費API、設置權限的數據庫以及傳感器等。
鏈下運算: Chainlink節點不僅可以傳輸數據,還可以執行信任最小化鏈下計算,比如創建可驗證隨機數和計算保險額度等。
底層區塊鏈: Chainlink可以兼容任何區塊鏈,並支持各種鏈上環境,保障智能合約一直能夠接入安全可靠的鏈下數據和運算資源。
更新頻率: 預言機網絡的更新頻率可靈活設置,可以選擇基於偏差閾值更新(如:每上下浮動0.5%更新一次)、基於時間更新(如:每小時更新一次)以及按需更新等。
聚合方法: 預言機網絡可以根據數據類型採取不同的聚合方式,如取中位數、平均值、衆數等,最終聚合成一個數據點。
安全參數: 用戶可以在服務協議中明確安全參數,如預言機質押金額、服務時長以及連接要求等。
除此之外,Chainlink預言機網絡還可以採用多種方式將數據傳輸至鏈上智能合約。保險這類智能合約需要將鏈下數據推送至合約中,以得知自然災害等真實世界中發生的事件;而貨幣市場這類智能合約則需要一個定期更新的鏈上數據源,合約採用“拉動”的方式隨時獲取數據,驗證貸款的抵押率。以下是不同類型的預言機網絡:
基本請求模式 (推動式):在 一筆交易中創建併發送數據請求至Chainlink預言機,一段時間後在另一筆交易中獲得響應,以此將智能合約連接至鏈下數據源(開源或付費API)。
去中心化數據模式 (拉動式): 通過鏈上參考合約提供共享數據源,參考合約由多個用戶共同出資,並由經過安全審覈的獨立Chainlink節點網絡定期更新。因此智能合約可以在一筆交易內請求並獲取鏈下數據。
當偶爾請求一個特殊數據集時,最好採用基本請求模式;而如果需要頻繁請求常見的數據集,則最好採用去中心化數據模式,比如常用的Chainlink喂價。DeFi協議可以隨時從這些喂價中獲取安全可靠且及時的金融市場數據。有了這個預言機網絡模型,開發者無需再親自打造預言機網絡,而是可以接入由衆多獨立項目共同支持的現成預言機網絡。
ETH/USD喂價是一個預言機網絡,爲DeFi合約提供以太幣的市場價格。
Chainlink靈活性極高的預言機框架催生出了許多獨立的預言機網絡,爲智能合約應用連接至一系列鏈下數據集和鏈下運算資源。Chainlink框架可以實現無限創新的應用場景,下文將拋磚引玉介紹幾個已經實現的預言機應用場景:
Chainlink喂價: Chainlink喂價爲Aave和Synthetix等DeFi應用接入加密貨幣、穩定幣、外匯、大宗商品、指數和證券等各類金融市場價格。
儲備金證明: 審計錨定法幣的穩定幣以及跨鏈資產的儲備金,並在鏈上公佈審計報告,幫助DeFi應用抵禦抵押率不足的風險,最大程度上減少用戶的損失。
可驗證的隨機數: PoolTogether等區塊鏈遊戲dApp利用Chainlink VRF獲得可驗證且防篡改的隨機數,保障公平且可驗證的用戶體驗。
天氣數據: Arbol接入Chainlink預言機從美國國家海洋和大氣管理局(NOAA)獲取天氣數據,爲發展中國家的農民提供參數型農作物保險,在惡劣天氣條件下快速理賠。
美國大選數據: 接入Everpedia運行的Chainlink節點,將美聯社簽名的2020年美國總統大選結果發佈到區塊鏈上,併爲鏈上預測市場結算。
數據提供商做節點: 領先的數據提供商還接入Chainlink框架爲多個區塊鏈網絡中的智能合約提供加密簽名的數據集,併爲數據來源提供權威認證。
Chainlink是開發預言機網絡的通用框架,可以將智能合約生態接入任何鏈下數據源,極大豐富去中心化應用的種類。正如上世紀九十年代的互聯網一樣,去中心化預言機網絡擁有巨大的發展潛力,數據驅動型智能合約將打造出一個信任最小化的經濟模式。
如果你是一名開發者,並且希望將智能合約連接至鏈下數據和基礎架構,請點擊此處聯繫我們,或查看開發者文檔。
歡迎加入律動 BlockBeats 官方社群:
Telegram 訂閱群:https://t.me/theblockbeats
Telegram 交流群:https://t.me/BlockBeats_App
Twitter 官方帳號:https://twitter.com/BlockBeatsAsia