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)