分布式價格預言機:設計原理與應用限制

robot
摘要生成中

分布式價格預言機的實現與應用

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

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

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

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

鏈上合約在處理這些數據時會經過一系列步驟:首先讀取當前合約狀態並進行檢查,然後進行準備工作,接着對每個籤名數據進行驗證,最後從排序後的觀察值中選取中位數並進行記錄和校驗。這個校驗過程可能涉及到與其他合約(如某些借貸平台使用的價格預言機)的交互,主要是比較不同預言機給出的價格偏差是否在可接受範圍內。

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

爲了簡化多個代幣價格的獲取過程,一些系統引入了預言機註冊表(Feed Registry)的概念。這可以看作是多個價格預言機的聚合器,使用者可以直接通過它讀取各種代幣的價格數據,無需單獨設置每個代幣的價格預言機。

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

在喂價機制方面,價格數據通常經過多層聚合:首先是數據源聚合,從各大交易平台收集原始價格數據;然後是節點運營商聚合,由獨立的節點從多個數據聚合服務商獲取並處理數據;最後是整個預言機網路的聚合,常見的方式是在達到預設響應節點數量時取中值。值得注意的是,並非每次都會更新鏈上價格,只有滿足特定條件(如偏差閾值或心跳閾值)時才會觸發更新。

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

這種設計雖然提高了安全性和可靠性,但也導致價格更新相對緩慢,可能從幾分鍾到24小時不等。因此,這類價格預言機主要適用於對價格更新不太敏感的應用場景,這也是其目前面臨的局限性。

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

LINK10.41%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 轉發
  • 分享
留言
0/400
梯子上的工具人vip
· 08-10 02:12
中本聪真尸!算法做主!
回復0
0xSleepDeprivedvip
· 08-07 07:26
掐死甲方吧 鬼分布式 总堵
回復0
Liquidation_Watchervip
· 08-07 07:22
懂了,挂空单睡大觉,预言机天天动人心
回復0
GasFeeCryervip
· 08-07 07:16
靠 gas又涨了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)