分布式价格预言机:设计、实现与应用场景分析

robot
摘要生成中

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

预言机服务面临着多种潜在风险,可能导致响应延迟或单点故障。为了解决这一问题,一些项目采用了分布式价格预言机的架构来提供更可靠的服务。以BTC/USD价格服务为例,某系统整合了31个独立的价格预言机来为用户提供数据。

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

这种聚合器的智能合约可以在区块链浏览器上查看。通过调用合约中的特定方法,用户可以获取该聚合器包含的所有链下预言机信息。每个链下预言机都能通过调用相应方法来提供价格数据,以响应聚合器中用户的请求。这些链下预言机通常是一些外部拥有账户(EOA),它们不仅为BTC/USD聚合器提供数据,还可能为其他如ETH/USD等聚合器服务。

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

链上合约的处理流程包括以下几个主要步骤:

  1. 读取当前合约状态并进行一系列检查。
  2. 进行必要的准备工作。
  3. 使用密码学方法对每一个签名数据进行验证,确保数据的真实性和完整性。
  4. 对观察值进行排序,选取中位数,并确保其不超过预设阈值。
  5. 记录本次预言机的答案,并进行进一步的验证。

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

在某些应用中,还会通过比较不同预言机给出的价格偏差来进行额外的验证。这种方法可以有效降低单一数据源可能带来的风险。

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

为了简化使用流程并提高灵活性,一些系统引入了Feed Registry的概念。它可以被理解为PriceFeeds的聚合器,已经整合了多个价格feed。使用Feed Registry,开发者无需自行设置每个token的priceFeed,可以直接通过统一接口读取价格数据。

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

价格预言机的喂价机制通常涉及多层数据聚合:

  1. 数据源聚合:从各大交易平台和去中心化交易所收集原始价格数据。
  2. 节点运营商聚合:每个节点从多个独立的数据聚合服务商获取价格,并进行处理。
  3. 预言机网络聚合:整个网络对节点数据进行最终聚合,常见方式是取中值。

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

值得注意的是,并非每次数据更新都会立即反映在链上。通常需要满足特定条件,如偏差阈值或心跳阈值,才会触发链上更新。这种机制虽然提高了系统的稳定性,但也可能导致价格更新较慢,更新间隔可能从几分钟到24小时不等。因此,这类预言机系统主要适用于对价格更新不敏感的应用场景。

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

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

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

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

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

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

LINK3.04%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 6
  • 分享
评论
0/400
token_therapistvip
· 12小时前
31个预言机是否太多了
回复0
StakeOrRegretvip
· 12小时前
真用31个预言机,慢死了吧
回复0
巨鲸资深观察员vip
· 12小时前
数据延迟有点怕怕
回复0
LiquidatedDreamsvip
· 12小时前
瞬息万变的价格 啧啧
回复0
pumpamentalistvip
· 12小时前
价格都能看 牛逼
回复0
SelfCustodyBrovip
· 12小时前
好思路 太稳了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)