Chainlink預言機: 區塊鏈世界與現實世界的橋梁

robot
摘要生成中

預言機技術深度解析

預言機是區塊鏈生態系統中的關鍵基礎設施,其核心功能是爲智能合約提供外部數據。作爲連接鏈上智能合約和鏈下真實世界的中間件,預言機扮演着至關重要的角色。

以太坊網路上的一個智能合約如果需要獲取某天的原油交易量數據,就無法直接訪問這種鏈下的現實世界信息。這時就需要通過預言機來實現數據傳輸。具體流程是:智能合約先將所需日期的原油交易量寫入事件日志,然後鏈下會啓動一個進程來監控該事件日志。當檢測到請求時,該進程會通過提交鏈上交易,調用合約相關方法,將指定日期的原油交易量數據上傳到智能合約中。

預言機詳解系列之 Chainlink(上)

在衆多預言機項目中,Chainlink佔據了最大的市場份額。作爲一個去中心化的預言機網路,Chainlink致力於以最安全的方式向區塊鏈提供現實世界的數據。它在基本預言機原理之上,圍繞LINK代幣構建了一個經濟激勵驅動的良性生態系統。

預言機詳解系列之 Chainlink(上)

Chainlink預言機的觸發需要通過轉帳LINK代幣來實現。LINK是以太坊網路上的ERC677合約代幣,這種基於LINK完成的預言機功能屬於請求/響應模式。

ERC677標準在ERC20基礎上增加了transferAndCall方法,將支付和服務請求合二爲一,更好地滿足了預言機業務場景的需求。當用戶調用transferAndCall進行轉帳時,除了標準ERC20轉帳外,還會判斷接收地址是否爲合約地址,如果是則調用該地址的onTokenTransfer方法。

預言機詳解系列之 Chainlink(上)

在請求預言機服務之前,用戶需要先確認該預言機的可信度,因爲預言機提供服務前需要先付款。預言機的可信度可以根據多個維度來劃分。

預言機詳解系列之 Chainlink(上)

當預言機消費者使用transferAndCall方法支付費用並請求服務時,預言機合約中的onTokenTransfer方法會進行一系列安全檢查,包括驗證轉帳代幣是否爲LINK、data長度是否超限、function selector是否正確等。檢查通過後,會通過delegatecall來調用當前oracle合約的oracleRequest方法。

預言機詳解系列之 Chainlink(上)

oracleRequest方法會生成唯一的requestId,設置過期時間,並將相關信息添加到commitments映射中。最重要的是,它會發出一個OracleRequest事件,其中包含了請求數據。這個數據採用CBOR編碼格式,可以包含各種形式的信息。

預言機詳解系列之 Chainlink(上)

鏈下節點會監聽OracleRequest事件。當檢測到新的請求時,節點會解析出具體信息,通過API調用獲取所需數據,然後提交交易調用Oracle合約的fulfillOracleRequest方法,將數據上傳到鏈上。

預言機詳解系列之 Chainlink(上)

fulfillOracleRequest方法會進行一系列檢查,包括調用者授權、requestId有效性等。檢查通過後,會將請求費用累加到可提現金額中,從commitments映射中刪除該requestId,並調用請求者合約的回調函數。

預言機詳解系列之 Chainlink(上)

回調函數會進行進一步的驗證,然後對返回的數據進行處理。對於價格預言機,通常是更新當前價格。

除了這種通用預言機流程,Chainlink還提供了更簡單的價格預言機接口。每個交易對都有一個單獨的Price Feed(Aggregator),開發者可以直接調用其latestRoundData()方法獲取最新價格,無需自行指定API地址等信息。

預言機詳解系列之 Chainlink(上)

總的來說,預言機作爲區塊鏈世界與現實世界的橋梁,在去中心化應用中發揮着不可或缺的作用。Chainlink通過精心設計的激勵機制和安全機制,成爲了目前最廣泛使用的預言機解決方案。

預言機詳解系列之 Chainlink(上)

LINK10.36%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 8
  • 轉發
  • 分享
留言
0/400
数据酒保vip
· 07-08 06:34
link铁粉来补仓啦
回復0
Token风暴vip
· 07-07 23:25
LINK大爷早买早赚就对了
回復0
社区混子王vip
· 07-06 05:58
link卷一辈子
回復0
Satoshi挑战者vip
· 07-06 05:45
数据显示95%预言机都死在半路了
回復0
airdrop_whisperervip
· 07-06 05:41
Link链接万物!
回復0
烧烤铭文师vip
· 07-06 05:35
外部数据喂价也是割韭菜新套路!
回復0
大饼霸霸vip
· 07-06 05:29
注入数据稳稳der
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate App
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)