Chainlink預言機:分布式價格聚合與多層級驗證機制解析

robot
摘要生成中

分布式價格預言機的工作機制

爲了避免單點故障,預言機服務採用了分布式設計。以提供BTC美元價格爲例,一個服務可能聚合了31個獨立的價格預言機來爲用戶提供數據。

這種聚合器的合約設計允許多個鏈下預言機通過調用transmit方法來提供價格數據,從而響應用戶的請求。這些鏈下預言機通常是EOA帳戶,它們不僅爲BTC/USD聚合器提供數據,還可能爲其他如ETH/USD等聚合器服務。

鏈上合約在處理數據時會經過一系列嚴格的驗證步驟:

  1. 首先讀取當前合約狀態並進行初步檢查。
  2. 進行必要的準備工作。
  3. 使用ecrecover()對每個籤名數據進行驗籤,確保hash值正確且籤名者角色有效。
  4. 檢查觀察值的排序,選取中位數,並確保其不超出預設閾值。
  5. 在通過所有驗證後,記錄預言機的answer並進行最終校驗。

最後一步的校驗涉及與其他預言機系統(如Compound使用的價格預言機)的數據比對,確保價格偏差在可接受範圍內。

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

Feed Registry簡化接入流程

爲了降低治理成本並提高靈活性,Feed Registry作爲PriceFeeds的聚合器被引入。它預先聚合了多個priceFeed,使用者可以直接通過Feed Registry讀取價格數據,無需自行設置每個token的priceFeed。

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

多層級數據聚合機制

價格數據的準確性通過三個層級的聚合來保證:

  1. 數據源聚合:從各大交易平台收集原始價格數據,並由專業數據服務商進行加權計算。

  2. 節點運營商聚合:Chainlink Node Operators從多個獨立數據聚合服務商獲取數據,取中值並剔除異常值。

  3. 預言機網路聚合:當響應節點數量達到預設值時,取這些節點數據的中值作爲最終價格。

價格更新觸發機制包括偏差閾值和心跳閾值,不同PriceFeed可能採用不同的參數設置。

盡管Chainlink價格預言機具有較高的安全性和易用性,但其價格更新機制可能導致數據更新較慢,更新週期從幾分鍾到24小時不等。因此,它更適合對價格實時性要求不高的應用場景,這也是其主要局限性所在。

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

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

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

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

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

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

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

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

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

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

LINK2.9%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 7
  • 分享
留言
0/400
WagmiWarriorvip
· 9小時前
老项目还是稳啊
回復0
花里胡哨研究院vip
· 07-26 06:30
又见价格预言机,又要被智能合约卡住了
回復0
SneakyFlashloanvip
· 07-24 04:24
实时性还是有待优化的说
回復0
Token_Sherpavip
· 07-24 04:19
嘛... 延迟问题仍然是个不容忽视的事实,老实说
查看原文回復0
跨链深呼吸vip
· 07-24 04:16
价格慢就慢点 稳就行
回復0
跨链迷路人vip
· 07-24 04:04
安全性再高延时也受不了
回復0
分叉自由主义者vip
· 07-24 03:56
link无敌啊还能扛
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)