分布式價格預言機如何保障數據可靠性

robot
摘要生成中

分布式價格預言機機制

爲了避免單點故障和提高可靠性,某知名預言機平台採用了分布式價格預言機的設計。以BTC美元價格服務爲例,該平台聚合了31個獨立的價格預言機來爲用戶提供更穩定的服務。

這種聚合器的合約設計可以在以太坊區塊瀏覽器上查看。通過調用合約中的特定方法,我們可以獲取該聚合器包含的所有鏈下預言機信息。這些鏈下預言機通常是一些外部擁有帳戶(EOA),它們不僅爲BTC/USD聚合器提供數據,也可能同時爲其他幣對如ETH/USD提供價格信息。

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

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

  1. 首先讀取當前合約狀態並進行初步檢查。

  2. 通過檢查後,合約會進行必要的準備工作。

  3. 接着使用密碼學方法對每個籤名數據進行驗證,確保數據完整性和來源可靠性。同時還會檢查籤名者的角色權限和避免重復籤名。

  4. 最後,合約會對觀察值進行排序和篩選,選取中位數作爲最終價格,並確保該價格不超出預設閾值。

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

此外,某些應用場景下還會引入額外的驗證機制。例如,某借貸平台使用的價格預言機會將獲得的價格與其他來源(如去中心化交易所)的價格進行比對,確保價格偏差在可接受範圍內。

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

全局預言機註冊表

爲了簡化多個代幣價格的管理和降低治理成本,預言機平台引入了全局預言機註冊表(Feed Registry)的概念。這是一個聚合了多個價格源的系統,允許用戶直接通過註冊表讀取各種代幣的價格數據,無需爲每個代幣單獨設置價格源。

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

多層級數據聚合機制

該預言機平台的價格數據經過三個層級的聚合處理:

  1. 數據源聚合:從各大中心化和去中心化交易平台收集原始價格數據,並由專業數據服務商進行初步整合。

  2. 節點運營商聚合:每個預言機節點從多個獨立數據服務商獲取價格,並通過中值計算等方法剔除異常值。

  3. 預言機網路聚合:整個網路層面再次聚合多個節點的數據,通常採用設定閾值後取中值的方式。

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

最終,只有當價格變化達到特定閾值或經過一定時間間隔時,新的價格才會更新到鏈上。這種機制雖然保證了數據的可靠性,但也導致價格更新相對緩慢,可能需要幾分鍾到幾小時不等。因此,這類預言機服務主要適用於對價格實時性要求不高的應用場景。

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

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

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

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

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

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

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

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 6
  • 分享
留言
0/400
MeaninglessGweivip
· 17小時前
就卷个预言机也得31个??
回復0
MetaverseMigrantvip
· 19小時前
预言机搞这么复杂干啥?
回復0
ProveMyZKvip
· 19小時前
安全归安全,那更新慢了谁还玩啊
回復0
SandwichVictimvip
· 19小時前
不是吧 几十个数据源还不够实时
回復0
ProofOfNothingvip
· 19小時前
31个预言机 这也太水了吧
回復0
矿难幸存者vip
· 19小時前
切~又见别人讲安全了,熊市前我都听腻了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)