Chainlink预言机三层聚合机制解析:分布式设计如何确保数据可靠性

robot
摘要生成中

分布式价格预言机的设计与实现

为了解决单点故障问题,预言机服务采用了分布式设计。以提供BTC美元价格为例,一个聚合服务可能会整合31个独立的价格预言机来为用户提供数据。

这种聚合器的合约设计允许多个链下预言机通过调用transmit方法提供价格数据。这些预言机通常是外部拥有的账户(EOA),不仅可以为BTC/USD提供数据,还可能服务于其他如ETH/USD的价格对。

链上合约在处理这些数据时会经过一系列严格的检查:

  1. 首先验证当前合约状态。
  2. 进行必要的准备工作。
  3. 对每个签名数据进行验证,确保签名者具有适当权限且签名不重复。
  4. 检查观察值的排序,并选取中位数作为最终结果。

最后,合约会对得出的结果进行进一步的验证。例如,某些应用可能会将结果与其他来源(如去中心化交易所)的数据进行比较,确保偏差在可接受范围内。

预言机详解系列之 Chainlink(下)

Feed Registry的引入

为了简化多个代币价格查询的流程,减少治理成本,Chainlink引入了Feed Registry概念。这是一个更高层次的聚合器,集成了多个PriceFeeds。使用者可以直接通过Feed Registry读取各种代币的价格数据,无需为每个代币单独设置PriceFeed。

预言机详解系列之 Chainlink(下)

多层数据聚合机制

Chainlink的价格数据经过三层聚合:

  1. 数据源聚合: 从各大中心化和去中心化交易平台收集原始价格数据。
  2. 节点运营商聚合: Chainlink节点从多个数据聚合服务获取数据,并进行初步处理。
  3. 预言机网络聚合: 多个节点的数据再次聚合,通常采用中位数方法。

价格更新遵循偏差阈值和心跳阈值两个触发条件,不同PriceFeed可能采用不同的参数设置。

这种多层聚合机制提高了数据的可靠性和抗操纵性,但也导致价格更新速度相对较慢。因此,Chainlink价格预言机主要适用于对价格实时性要求不高的应用场景。

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

预言机详解系列之 Chainlink(下)

LINK2.31%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 5
  • 分享
评论
0/400
PanicSeller69vip
· 07-23 18:42
实时性要求不高有啥用
回复0
仓位恐惧症vip
· 07-23 06:39
最终赔的就是预言机
回复0
社区打工仔vip
· 07-21 02:49
多节点也遭不住暴力破解啊
回复0
MEV猎人不看涨vip
· 07-21 02:48
跑预言机真香赚的币都没吃过
回复0
liquiditea_sippervip
· 07-21 02:40
link稳得一批
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)