分布式价格预言机:设计原理与应用限制

robot
摘要生成中

分布式价格预言机的实现与应用

为了避免单点故障,一些价格预言机服务采用了分布式设计。以提供比特币美元价格的服务为例,它聚合了31个独立的价格预言机来为用户提供数据。

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

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

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

链上合约在处理这些数据时会经过一系列步骤:首先读取当前合约状态并进行检查,然后进行准备工作,接着对每个签名数据进行验证,最后从排序后的观察值中选取中位数并进行记录和校验。这个校验过程可能涉及到与其他合约(如某些借贷平台使用的价格预言机)的交互,主要是比较不同预言机给出的价格偏差是否在可接受范围内。

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

为了简化多个代币价格的获取过程,一些系统引入了预言机注册表(Feed Registry)的概念。这可以看作是多个价格预言机的聚合器,使用者可以直接通过它读取各种代币的价格数据,无需单独设置每个代币的价格预言机。

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

在喂价机制方面,价格数据通常经过多层聚合:首先是数据源聚合,从各大交易平台收集原始价格数据;然后是节点运营商聚合,由独立的节点从多个数据聚合服务商获取并处理数据;最后是整个预言机网络的聚合,常见的方式是在达到预设响应节点数量时取中值。值得注意的是,并非每次都会更新链上价格,只有满足特定条件(如偏差阈值或心跳阈值)时才会触发更新。

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

这种设计虽然提高了安全性和可靠性,但也导致价格更新相对缓慢,可能从几分钟到24小时不等。因此,这类价格预言机主要适用于对价格更新不太敏感的应用场景,这也是其目前面临的局限性。

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

LINK5.48%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 4
  • 转发
  • 分享
评论
0/400
梯子上的工具人vip
· 15小时前
中本聪真尸!算法做主!
回复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)