區(qū)塊鏈預(yù)言機(jī):將外部世界連接到去中心化
?智能合約[1]是一種代碼,其中包含一組管理各方如何交互的規(guī)則。如果滿足預(yù)定義的規(guī)則,協(xié)議將自動執(zhí)行。
原則上,區(qū)塊鏈網(wǎng)絡(luò)和智能合約是確定性的,無法訪問來自外部世界的數(shù)據(jù)。
預(yù)言機(jī)解決了這個看似主要的問題。
在區(qū)塊鏈網(wǎng)絡(luò)的背景下,“預(yù)言機(jī)”是將鏈下世界的相關(guān)數(shù)據(jù)帶入智能合約的服務(wù)或數(shù)據(jù)源,反之亦然。
什么是預(yù)言機(jī)?
在我們的文化中,oracle被定義為提供明智和有見地的建議或做出卓越預(yù)測的人。
當(dāng)談到區(qū)塊鏈網(wǎng)絡(luò)時,它們并沒有那么不同。
預(yù)言機(jī)是使智能合約能夠與外界通信和交換數(shù)據(jù)的第三方服務(wù)。它們不是區(qū)塊鏈共識機(jī)制的一部分。
例如,在您的代碼中,您可以包含一個函數(shù),以確保人們只能向智能合約發(fā)送大于當(dāng)前以太幣價格的金額。
調(diào)用該函數(shù)時,將執(zhí)行兩次。
1. 因為我們的合約沒有該信息,智能合約將使用預(yù)言機(jī)從外部鏈下源檢索當(dāng)前的 ETH 價格。
2. 智能合約將執(zhí)行檢查以確保僅存入或接受大于當(dāng)前以太幣價格的金額。
下面的偽代碼演示了執(zhí)行是如何發(fā)生的。
預(yù)言機(jī)的主要類別
預(yù)言機(jī)的好處在于它們有多種形式,因此無論區(qū)塊鏈系統(tǒng)及其要求如何,您都可以找到有效的方法并將其集成。讓我們來看看它們。
入站預(yù)言機(jī)
這是目前為止最常見的預(yù)言機(jī)類型。
Inbound oracles,顧名思義,具有將數(shù)據(jù)注入智能合約的功能。
該傳入數(shù)據(jù)來自外部來源,一旦交易完成,合約將根據(jù)接收到的數(shù)據(jù)進(jìn)行后續(xù)執(zhí)行。
入站預(yù)言機(jī)是一種數(shù)據(jù)饋送,可為合約提供當(dāng)前股票價格或當(dāng)前溫度等更新。一些最受歡迎的入站預(yù)言機(jī)是Chainlink(LINK)[2]和WINlink(WIN)。[3]
出站預(yù)言機(jī)
與入站預(yù)言機(jī)相比,出站預(yù)言機(jī)將智能合約數(shù)據(jù)發(fā)送到合約外的來源。
考慮一個智能合約用例,其中某些功能的執(zhí)行導(dǎo)致現(xiàn)實世界中某些屬性的釋放。
出站預(yù)言機(jī)的工作方式類似于從您的合約進(jìn)行 API 調(diào)用以觸發(fā)外部源中的事件。
軟件預(yù)言機(jī)
絕大多數(shù)入站和出站預(yù)言機(jī)都是軟件預(yù)言機(jī)。
軟件指標(biāo)似乎是進(jìn)出現(xiàn)實世界的實時和最新數(shù)據(jù)源。
由于它們的執(zhí)行模式,可以通過公共數(shù)據(jù)庫和平臺中的幾行代碼輕松訪問它們。
他們提供有關(guān)任何可量化事物的可靠數(shù)據(jù),例如股票和加密貨幣價格以及天氣更新。目前,軟件預(yù)言機(jī)是最強(qiáng)大和用戶友好的預(yù)言機(jī)。
硬件預(yù)言機(jī)
有人可能會問,需要直接從物理世界獲取信息的智能合約怎么樣?這就是硬件預(yù)言機(jī)發(fā)揮作用的地方!
它們?yōu)閰^(qū)塊鏈網(wǎng)絡(luò)和物聯(lián)網(wǎng) (IoT) 之間的數(shù)據(jù)交換提供了通道。
例如,車輛穿過裝有運動傳感器的特定障礙時,可以檢測車輛的運動并將數(shù)據(jù)發(fā)送到智能合約。
數(shù)據(jù)可以在出站硬件預(yù)言機(jī)中從智能合約發(fā)送到物理世界。
基于共識的預(yù)言機(jī)
基于共識的預(yù)言機(jī)使用多個預(yù)言機(jī)和共識算法來獲取智能合約的事實數(shù)據(jù),就像基于共識的決策建立信任并產(chǎn)生最佳結(jié)果一樣。
越多越好,因為減少或消除了操縱。
當(dāng)只使用一個來源時,警告就會起作用。這使得數(shù)據(jù)不可信。
多個預(yù)言機(jī)(4-6)的組合可能會提高我們收到的數(shù)據(jù)的可靠性。
區(qū)塊鏈預(yù)言機(jī)的優(yōu)勢和可能的用例
預(yù)言機(jī)對區(qū)塊鏈網(wǎng)絡(luò)至關(guān)重要,因為它們改進(jìn)了智能合約承諾。
如果不存在去中心化的預(yù)言機(jī),智能合約只能訪問其加密網(wǎng)絡(luò)中的數(shù)據(jù),從而限制了它們的潛在應(yīng)用和穩(wěn)健性。
可靠性是區(qū)塊鏈預(yù)言機(jī)成功的關(guān)鍵因素。
如何獲取數(shù)據(jù)的基本概念是系統(tǒng)匯總并徹底分析來自多個來源的數(shù)據(jù)。只有來自不同資源集的準(zhǔn)確且經(jīng)過審查的數(shù)據(jù)才能以這種方式到達(dá)智能合約。
用例 1:去中心化博彩
博彩業(yè)是智能合約和預(yù)言機(jī)技術(shù)有可能發(fā)生革命性變化的領(lǐng)域。
博彩公司/書簽是允許玩家在游戲預(yù)測上下注的實體。
玩家會因正確預(yù)測而獲得一定數(shù)量的獎勵,這總是比初始投注數(shù)量有所增加。
在幕后,博彩公司從中央 API 檢索游戲信息并運行檢查以確保當(dāng)前的選擇與玩家的預(yù)測一致。
玩家的錯誤預(yù)測導(dǎo)致投注被結(jié)算,導(dǎo)致資金損失。
以下是 Web2 博彩公司的一些問題。
Web3 博彩公司將提供什么好處?
擁有基于分布式賬本的基礎(chǔ)設(shè)施的博彩公司可以幫助減少交易摩擦和集中化。
由于智能合約本質(zhì)上是確定性的,因此自動化資金轉(zhuǎn)賬和存款似乎很簡單。
需要注意的是交易費用的概念,這不應(yīng)該成為可擴(kuò)展區(qū)塊鏈平臺的問題!
智能合約可以與預(yù)言機(jī)通信,預(yù)言機(jī)將負(fù)責(zé)從外界注入實時數(shù)據(jù)。
將執(zhí)行額外的檢查以確保獲獎?wù)呤盏剿麄兊臅M。將解決 Web2 投注的主要缺點,例如延遲計入收益和未計入獲勝。
最后,自動化可以為企業(yè)節(jié)省大量時間(提高用戶響應(yīng)率)和金錢。雙方都從這種安排中受益。
用例 2:購買房產(chǎn)
當(dāng)前購買房屋和汽車等財產(chǎn)的模型涉及使用交易清算和結(jié)算所需的可信中介。
購買汽車時,會涉及其他第三方,例如銀行和保險公司。
客戶不必?fù)?dān)心車輛的保險費用,但他們必須應(yīng)對一個漫長的過程。
考慮一個所有相關(guān)方都使用分布式賬本技術(shù)的場景。傳統(tǒng)的步驟都不會被跳過,但我們可以使用預(yù)言機(jī)和智能合約來創(chuàng)建一個安全、廉價和可靠的過程。
這將如何進(jìn)行?
具有唯一區(qū)塊鏈身份的買家將發(fā)起“購買”交易,將一定數(shù)量的資金存入賣家的錢包。保險單計劃的輔助智能合約交易將包含在更復(fù)雜的交易中。
將執(zhí)行進(jìn)一步的檢查以確保僅需要一定數(shù)量的錢才能成功進(jìn)行轉(zhuǎn)賬。
當(dāng)達(dá)到成功傳輸點時,硬件出站預(yù)言機(jī)進(jìn)入畫面。這個預(yù)言機(jī)的工作是將智能合約數(shù)據(jù)發(fā)送到帶有集成智能鎖的外部世界(智能車庫和汽車),例如新所有者的身份和訪問代碼。只有在相關(guān)財產(chǎn)的付款成功后,才會執(zhí)行整個程序。
新所有者的區(qū)塊鏈身份隨后將與該物業(yè)相關(guān)聯(lián),他將以安全代碼的形式獲得對該物業(yè)的獨家訪問權(quán)。
好處和更大的前景
該技術(shù)消除了車輛和保險公司手動交互的需要。運行區(qū)塊鏈節(jié)點的計算機(jī)可以潛在地確定某人是否是汽車的合法所有者。
如前所述,流程自動化將需要使用智能合約和出站預(yù)言機(jī)來交換數(shù)據(jù)。
一個顯著的優(yōu)勢是所有者可以使用智能合約訪問控制來授權(quán)他人訪問他們的財產(chǎn),方法是將區(qū)塊鏈身份(臨時或永久)注冊到他們的財產(chǎn)。
車主無需擔(dān)心被盜,因為汽車配備了用于訪問控制的數(shù)字鑰匙。
使用區(qū)塊鏈預(yù)言機(jī)的缺點
在堅定地確定預(yù)言機(jī)是智能合約和我們常規(guī)外部世界之間橋梁的重要組成部分之后,不討論利益相關(guān)者在使用預(yù)言機(jī)時將面臨的一些主要缺點是沒有道理的。
1. 安全
安全概念是利益相關(guān)者必須準(zhǔn)備好應(yīng)對的一個問題。
鑒于區(qū)塊鏈網(wǎng)絡(luò)的歷史,要確保源自鏈下的數(shù)據(jù)是可信的尤其困難。
盡管我們可以吹噓數(shù)據(jù)在到達(dá)智能合約之前會被多次聚合,但應(yīng)該注意的是,單個不可靠的數(shù)據(jù)點有可能改變最終數(shù)據(jù)的狀態(tài)。由于攻擊者操縱 oracle 數(shù)據(jù),Warp Finance 損失了 770 萬美元。Synthetix、Harvest Finance 和其他 DeFi 公司都因糟糕的預(yù)言機(jī)執(zhí)行和數(shù)據(jù)操縱而損失了數(shù)百萬美元。
2.成本
在使用區(qū)塊鏈時,簽署交易會產(chǎn)生費用是眾所周知的,而由于從預(yù)言機(jī)中獲取數(shù)據(jù)需要大量的計算能力,因此需要支付相應(yīng)的高額資金來支付費用。
在區(qū)塊鏈網(wǎng)絡(luò)的當(dāng)前狀態(tài)下,廣泛的計算仍然不方便。隨著可擴(kuò)展性的提高,智能合約中的預(yù)言機(jī)很可能會得到廣泛采用。
3.執(zhí)行時間
與集中式數(shù)據(jù)相比,從多個來源聚合數(shù)據(jù)并就結(jié)果達(dá)成共識所需的時間更長。此外,托管大部分去中心化應(yīng)用程序的以太坊等流行的智能合約網(wǎng)絡(luò)速度很慢。同樣,隨著各種區(qū)塊鏈網(wǎng)絡(luò)的可擴(kuò)展性提高,我們將能夠擁有更快的流程。
Chainlink:最受歡迎的區(qū)塊鏈預(yù)言機(jī)概覽
Chainlink[4]于 2017 年在以太坊區(qū)塊鏈上推出,是一項開源和去中心化服務(wù),為 Defi、企業(yè)、保險、NFT 和游戲中的智能合約用例提供支持。
Chainlink 提供的去中心化預(yù)言機(jī)網(wǎng)絡(luò)是一種開源技術(shù)基礎(chǔ)設(shè)施,允許任何區(qū)塊鏈安全地連接到鏈下數(shù)據(jù)和計算資源。
LINK是網(wǎng)絡(luò)的原生加密貨幣,用作數(shù)據(jù)有效載荷,將所需數(shù)據(jù)從鏈下源傳送到智能合約。從這些代幣中獲得的交易價值用于支付節(jié)點運營商檢索數(shù)據(jù)的費用。
Chainlink Data Feeds是一種安全、可靠且去中心化的鏈下數(shù)據(jù)源,可用于支持獨特的智能合約用例。
Chainlink 可用于各種鏈下計算功能,包括可驗證隨機(jī)函數(shù) (VRF),它正在推動去中心化游戲行業(yè)的發(fā)展。
原文:https://asiedu-dev.hashnode.dev/blockchain-oracles-connecting-the-outside-world-to-decentralization
引用鏈接
[1]? 智能合約: https://www.michaelasiedu.com/the-lifecycle-and-application-of-blockchain-smart-contracts
[2]? Chainlink(LINK): https://chain.link/
[3]? WINlink(WIN)。: https://winklink.org/
[4]? Chainlink: https://chain.link/
[5]? 博客: https://www.michaelasiedu.com/