分布式價格預言機:多層聚合機制提升可靠性與安全性

robot
摘要生成中

分布式價格預言機的設計與實現

爲了避免單點故障和提高服務可靠性,某知名預言機項目採用了分布式價格預言機的設計。以提供比特幣美元價格爲例,該服務聚合了31個獨立的價格預言機來爲用戶提供數據。

這種聚合器的設計可以在以太坊區塊瀏覽器上查看其合約源碼。通過調用合約中的特定方法,可以獲取該聚合器包含的所有鏈下預言機信息。每個鏈下預言機都可以通過調用特定方法來提供價格數據,以響應聚合器中用戶的請求。這些鏈下預言機通常是一些外部擁有帳戶(EOA),它們不僅爲比特幣/美元匯率提供數據,還可能爲其他貨幣對如以太坊/美元提供價格信息。

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

鏈上合約的處理流程主要包括以下幾個步驟:

  1. 讀取當前合約狀態並進行一系列檢查。
  2. 進行必要的準備工作。
  3. 對每一個籤名數據進行驗籤,確保數據的真實性和完整性。
  4. 檢查觀察值的排序,選取中位數,並確保其不超過預設閾值。
  5. 記錄本次預言機的答案,並進行進一步的驗證。

在驗證過程中,還會通過一系列調用最終與其他價格源(如某去中心化交易所的錨定視圖)進行比較,確保價格偏差在可接受範圍內。

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

價格源註冊表

爲了簡化不同代幣價格的獲取過程並降低治理成本,該項目引入了價格源註冊表的概念。這是一個價格源的聚合器,已經整合了多個價格數據源。使用者可以直接通過此註冊表讀取價格數據,無需單獨設置每個代幣的價格源。

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

多層次價格聚合機制

該預言機系統的價格數據通過多層次的聚合獲得,主要包括三個層級:數據源聚合、節點運營商聚合和預言機網路聚合。

  1. 數據源聚合:原始價格數據主要來自各大中心化和去中心化交易平台。專業的數據聚合服務商會從這些平台收集並整合數據,考慮交易量、流動性等因素進行加權計算。

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

  3. 預言機網路聚合:整個網路層面的聚合通常採用中值法,當響應節點數量達到預設值時,取這些節點提供的價格數據的中值作爲最終價格。

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

值得注意的是,並非每一輪的價格結果都會更新到鏈上。只有滿足偏差閾值或心跳閾值兩個觸發參數之一時,才會進行更新。不同的價格源可能有不同的參數設置。

總的來說,這種設計提供了便捷的接入方式和較高的安全性。然而,由於其價格更新機制存在偏差閾值,導致價格更新相對較慢,可能從幾分鍾到24小時不等。因此,這種預言機主要適用於對價格更新不太敏感的應用場景,這也是其局限性所在。

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

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 5
  • 分享
留言
0/400
止损艺术家vip
· 07-09 21:54
老盘磨得慢 结果还不精准
回復0
烤猫铁粉vip
· 07-09 16:33
31个给同一个价?卡慢点没事吧
回復0
RugPullSurvivorvip
· 07-06 22:58
预言机靠谱? 听着就慢
回復0
测试网学者vip
· 07-06 22:55
真香 就一更新慢罢了
回復0
雏菊独角兽vip
· 07-06 22:43
预言机宝宝萌萌哒 但跑起来慢吞吞像只小蜗牛~
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)