✈️ Gate 广场【Gate Travel 旅行分享官召集令】
广场家人们注意啦!Gate Travel 已经上线~ 机票+酒店一站式预订,还能用加密货币直接付款 💸
所以说,你的钱包和你的旅行梦终于可以谈恋爱了 😎 💕
现在广场开启 #GateTravel旅行分享官# 活动,邀你来秀旅行灵感 & 使用体验!💡
🌴 参与方式:
1️⃣ 在【广场】带话题 #Gate Travel 旅行分享官# 发帖
2️⃣ 你可以:
你最想用 Gate Travel 去的目的地(私藏小岛 or 网红打卡点都行)
讲讲用 Gate Travel 订票/订酒店的奇妙体验
放放省钱/使用攻略,让大家省到笑出声
或者直接写一篇轻松的 Gate Travel 旅行小故事
📦 奖励安排,走起:
🏆 优秀分享官(1 名):Gate 旅行露营套装
🎖️ 热门分享官(3 名):Gate 旅行速干套装
🎉 幸运参与奖(5 名):Gate 国际米兰旅行小夜灯
*海外用户 旅行露营套装 以 $100 合约体验券,旅行速干套装 以 $50 合约体验券折算,国际米兰旅行小夜灯以 $30合约体验券折算。
📌 优质内容将有机会得到官方账号转发翻牌提升社区曝光!
📌 帖文将综合互动量、内容丰富度和创意评分。禁止小号刷贴,原创分享更容易脱颖而出!
🕒 8月20 18:00 - 8月28日 24:00 UTC+
分布式价格预言机系统: 多层聚合与Feed Registry优化
分布式价格预言机系统
为避免单点故障,一些预言机服务采用了分布式设计。以提供BTC美元价格的服务为例,某知名预言机平台汇集了31个价格源来为用户提供服务。
这种聚合器的合约源码可以在以太坊区块浏览器上查看。通过调用合约中的transmitters方法,可以查看该聚合器包含的所有链下预言机。
每个链下预言机可以通过调用transmit方法来提供价格数据,以响应聚合器中用户的请求。这些链下预言机是一些外部拥有账户(EOA),它们不仅为BTC/USD聚合器提供价格数据,还可能为其他聚合器(如ETH/USD)提供价格数据。
链上合约的处理流程大致如下:
首先读取当前合约状态,并进行一系列检查。
检查通过后,进行一些准备工作。
接下来使用ecrecover()对每个签名数据进行验签,校验hash值是否对_report做的hash。同时检查签名者的角色是否是Signer,且要检查签名的重复性。
最后,检查观察值是否按顺序排列。从排序后的观察值中选取中位数median,并确保median不超过上下两个阈值。如无问题,在s_transmissions中记录本次预言机的answer。此外,还要对answer进行校验。
这里经过一系列调用最终会调用某价格预言机合约的validate方法,关键是比较两边预言机给的价格偏差是否在一个可接受范围内。
Feed Registry
为了提高灵活性和降低治理成本,一些平台推出了Feed Registry。它可以理解为PriceFeeds的聚合器,已经聚合了多个priceFeed。有了它,使用者无需自己设置priceFeed,可直接通过Feed Registry读取价格数据。
喂价机制
价格预言机的价格通常通过多个层级的数据聚合得到,主要包括数据源聚合、节点运营商聚合和预言机网络聚合三个层级。
最原始的价格数据主要来自各大中心化和去中心化交易平台。一些专门的数据聚合服务商会从这些平台收集原始价格数据,并进行加工整合,如根据交易量、流动性和时差等进行加权计算。这是第一层面的数据源聚合。
第二层是节点运营商的聚合。每个节点运营商负责运行核心软件,从多个独立的数据聚合服务商获取价格数据,并取中值,剔除异常值和API停机时间。
最后一层是整个预言机网络的聚合,常见方式是当响应节点数量达到预设值时对数据取中值。
价格更新通常需要满足偏差阈值或心跳阈值两个触发参数之一。不同价格源的这两个参数值可能不同。
总的来说,一些知名预言机平台的价格预言机接入方便且安全性较高,但由于价格更新机制存在偏差阈值,导致更新较慢,适用于对价格更新不太敏感的应用。这也是其局限性所在,无法适用所有场景。