详解主流去中心化借贷产品预言机原理_币世界+万向区块链

2021-04-08 18:49 栏目:行业动态 来源:网络整理 查看()

从安全性和时效性两个维度比较MakerDAO、Aave和Compound的预言机原理的差异。从安全性和时效性两个维度比较MakerDAO、Aave和Compound的预言机原理的差异。

预测机在分散式金融系统的资产定价中尤为重要,预测机报价的安全性、及时性、准确性和成本是我们应该关注的维度。本文综合分析了主流分散借贷产品所采用的预言机原理,并从安全性和及时性两个维度进行了比较。

广义预言机及其信息源形式

预测机作为一个重要的基础设施已经被广泛讨论。在过去,它一般是指在区块链以外提供狭义的可信数据的模块。本文讨论了更广义的预测机器——,它依赖信息源为分散的系统提供信息。传递的信息有很多种,可能是交易市场使用的价格、指数、宏观参数等信息;或者用来预测市场气候、选举等信息。从属信息源可以来自链上或链外,具有不同程度的分散性。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图1。不同类型的信息源和预测机器的示例

图1给出了几个例子:Coinbase Exchange提供的签名认证API是一个典型的权威信誉背书的集中式链外信息源;作为链中最初的分散交换,Uniswap预测器是链中典型的分散信息源。

这两类信息源各有利弊。链外集中信息源存在运营商信用风险,但能覆盖的信息类型全面,一般时效性强,准确;分散链中的信息源利用区块链消除信用风险,但目前主要是AMM价格预测机,类型单一,操纵事件太多。

所有这些都可以作为广义预测机的基石,通过聚合和相互锚定,参与分散系统的运行,使其更加健壮和安全。比如,

MakerDAO构建了一个联盟预测机系统,授权链外的多个第三方信息源组成联盟,为资产提供价格信息,在一定程度上可以抵御个别集中式信息源的信用问题,但不排除联盟内合谋腐败的风险,目前依靠治理和激励机制进行管理。

Chainlink提出了一种更为分散的预测系统,通过经济激励机制和声誉体系来管理无证信息源。

Compound提出了一种将集中链外的信息锚定到分散链上的信息的方案,既保留了集中信息源的优势,又加强了风险控制。

本文从价格预测机的角度探讨了前三种分散贷款产品(如表1所示)的采用情况,并对它们的原理和性能进行了分析和比较。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

表1 .前三名分散贷款产品采用的预测机器形式和信息源

MakerDAO 的联盟预言机

MakerDAO作为一个老的DeFi项目,在2017年6月推出了单一锚定ETH的稳定货币DAI(现更名为SAI),并在其自建预测机第一版的基础上引用了抵押品ETH。在这个版本的预言机中,由MakerDAO授权的14个个人匿名信息源(Feeds)提供ETHUSD报价,并通过一个聚合契约获得中值报价,最后将价格馈送给MakerDAO系统的主契约。抵御信息源节点被匿名操纵或勒索的风险。MakerDAO治理组织管理配置参数,如信息源的选择和信息源的数量。

MakerDAO在2019年9月推出了第二版预言机。与第一版相比,除了支持多币种报价的功能改进和性能改进外,主要改进点有:

建议增加DeFi合作伙伴作为机构信息源(包括dYdX、0x、Set Protocol、gnosis);

提出创建预言机的团队角色,构建预言机的治理框架;

提出了一种优化的预测机器激励机制。

联盟预测的风险

图2从左到右展示了MakerDAO预测机依赖链下的授权信息源的报价流程(关于DeFi伙伴机构的信息源获取方式,目前还没有找到官方的解释,需要进一步跟踪和上报)。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图2。MakerDAO预言机架构(来源:MakerDAO官网文档)

为了保证链下数据到链的安全传输,每个授权信息源节点运行一个Omnia Feed Client,通过名为scuttlebutt的分布式流言协议,将用Ethereum私钥签名的价格信息广播到中继网络。

中继器监听这些签名的消息,检查它们的活性,并将价格数据和签名打包到以太网交易中,该交易被广播到以太网网络,并且链预测器模块进一步处理价格信息。

链预测机模块主要包括两个合同:中位数和OSM。中值合同的主要任务是验证时间戳,信息源是否在白名单中,价格序列是否按升序排列,并根据第2步推送的价格和签名序列,通过Bloom filter验证价格来自不同的信息源。上述所有验证通过后,计算中位数并替换原始值。Median在合同中维护一个信息源白名单,用于检查价格信息更新是否来自许可地址。MakerDAO治理机构通过更新白名单来调整信息源,并有权更新计算中位数所需的最少信息源数(当前设置为13)。

OSM是进一步提高预测机安全性的智能合同,主要用于设置报价延迟机制,为识别和应对潜在安全事件预留时间。在OSM合同中维护一个价格队列,最新的价格信息将被“中间人”观察员合同采用,并且仅在一小时后被主合同(增值税)检索到。

应急预测机

紧急预测机是马克道抵御攻击的最后一道防线,由MKR持有者投票决定。紧急预报机有权单方面触发紧急停机,因此可以通过冻结单台预报机来缓解运行风险。

MakerDAO预言机的时效性

通过以上过程分析,我们可以发现MakerDAO预测机的工作时间主要受以下几个环节的影响:

信息源更新频率

信息源基于两个原则提交价格更新信息:a)当前价格与上次提交价格之间的差异大于指定阈值(当前设置为1%);b)上次提交价格超过6小时时。

合同更新频率中位数

立即,视中继器传输频率而定。中位数合约只要收到复读机传来的价格序列,就会立即执行验证流程,并在检验合格后更新中位数。

OSM合同更新频率

每1小时左右(至少)。通过调用一个名为Megapoker的公共合同,外部EOA地址可以批量执行OSM合同中的puck()方法来更新每个抵押资产OSM合同中的价格队列,然后触发Spotter合同依次读取最新价格。为了保持这种更新频率,OSM协定中的puck()方法限制只有当块的时间戳间隔大于或等于3600秒时才能再次调用它。图3显示了目前MakerDAO预测器支持的24种抵押资产的OSM合同地址和Spotter合同地址。

网络传输延迟和块生成

这两个延迟大约为几秒钟,相对于OSM的1小时延迟可以忽略不计。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图3。Maker Dao预言机支持的24种资产的合同地址和Spotter地址(来源:MegaPoker合同:0x 7472 e 5830 DC 6402 c 22 bb 53 abcba 14 d6a 058 e 482)

可以看出MakerDAO预测机的价格更新频率最早是每小时一次,但会受到桶效应下中值合约中价格更新频率的影响。我们可以通过ETHUSD的中位数合约交易记录来衡量其更新频率。从图3可以看出,更新该合同报价的时间间隔在大约9分钟和219分钟达到峰值,在60分钟内更新报价的概率为70%,即,对应于OSM合同每小时获得的报价为u

图3。MakerDao预测器ETHUSD中位数合约的LogMedianPrice事件的时间间隔分布(来源:中位数合约:0x 64 de 91 F5 a 373 CD 4c 28 de 3600 CB 34 c 7 c 6 ce 410 c 85)

Aave 采用 Chainlink 报价

链环预言机原理

其实Chainlink预测机的架构和MakerDAO预测机很像。最大的区别是信息源不需要获得Chainlink许可证,其原理和经济激励机制在其他研究报告中也经常提到,这里就不详述了。链环系统可以简单地描述为两类节点的工作:

链外节点

响应聚合契约的请求,通过在以太网链上发送事务,将链外信息传输到聚合契约,聚合契约对收集指定阈值数量的链外节点的回答者生成聚合价格。

链上的节点

在Ethereum上运行智能合同一般是由社区用户发起的,主要包括P Proxy和Aggregator。每个报价资产的最新聚合器合同地址存储在代理中。在接收到来自用户合同的链请求后,访问相应的聚合器以获得存储在其中的最新价格,并将报价反馈给同一链交易中的用户合同。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图4。用户调用链接甲骨文的过程(从官方文档)

有两个因素触发聚合器合同开启新一轮聚合报价:

最后一次合计报价的延迟超过某个阈值;

合约会监听一些信息源的报价,并与上一次的合计报价进行比较,当价差偏离某个阈值时触发。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图4。链结预测机构的ETH/USD价格数据汇总界面(来源:https://data.chain.link/eth-usd)

图4是链结对ETH/USD的汇总报价页面。可以看出,目前有21个链外节点参与工作,价格偏差阈值为0.5%,延迟阈值为3小时。根据ETHUSD的Aggregator合同NewRound日志频率,我们可以测试实际的价格更新频率。如图5所示,峰值更新间隔为10个块(约2.5分钟),10分钟内更新的概率为70%,最高限制约为70分钟。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

图5。链式预测器的ETHUSD聚合器协定中NewRound事件的块间隔分布(来源:聚合器协定:0x 00c 7a 37 b 03690 FB 9 f 41 b5 C5 af 8131735 c 7275446)

Compound 的锚定式预言机

Compound设计了一个叫OpenPriceFeed的预测机系统,不同于上述的联盟预测机和分散预测机,采用集中信息源锚定价格在AMM链上的组合形式,以两个合约为主。

OpenOraclePriceData

任意集中的信息源(记者)可以将私钥签署的价格数据发送给OpenOraclePriceData合同,OpenOraclePriceData合同负责中立地接收这些价格和签名信息,并在未经许可的情况下将其开放给第三方调用。

UniswapAnchoredView

目前Compound自己的系统只采用Coinbase Pro提供的API数据。UniswapAnchoredView合同用于验证和过滤OpenOraclePriceData中存储的签名价格,只有当合同由Coinbase发布且价格在Uniswap报价的TWAP预测值的一定范围内时,合同才会被接受和更新。当前价格范围设定为锚价最大偏差的20%。

值得注意的是,任何人都可以访问Coinbase Pro API接口获取时间戳、价格和签名信息,并提交给UniswapAnchoredView合同。只要能通过其验证,用户就能获得即时价格。也就是说,时效性是三个预测机中最好的,但是在2020年11月26日的大院大规模清算事件中,Coinbase Exchange中DAI的价格剧烈波动,清算机器人利用这个价差在一次交易中完成了抵押价格更新和清算过程。

预言机性能对比

三个借贷产品采用了不同的机制来控制集中信息源的信用风险和单点攻击风险,但预测机的安全性和及时性似乎不能兼得。MakerDAO以保守的方式预留处理突发事件的时间,导致报价至少延迟一小时;链结的报价频率比较高,目前参与报价的分散节点比较少。两者的时间消耗主要受限于多个信息源的聚合阶段。目前Compound的预测机只信任一个集中的信息源,没有聚合过程,允许任何第三方触发价格更新来获得最优的时效性。但锚定机制设定的波动幅度为20%,单个交易所的异常报价容易在极端市场条件下使用;而当集中式信息源出现单点故障或受到攻击时,虽然可以自动放弃,依靠AMM预测机报价,但风险点会转移到AMM预测机。

详解主流去中心化借贷产品预言机原理_币世界+万向区块链

表2 .前三名分散贷款产品采用的预测机器风险控制机制和及时性的比较

总结与思考

预测机作为一个重要的基础设施被广泛提及。预测机的安全性决定了分散系统的抗风险能力和运行鲁棒性。预测机报价的准确性和及时性对DeFi业务的运营起着至关重要的作用。尤其是以贷款产品为代表的项目,很多都是依靠过度抵押模式,预测机对抵押物价值的评估直接决定了是否以及何时触发清算。通过对分散式借贷产品预测机安全性和时效性的分析可以看出,提高安全性的机制会在一定程度上削弱时效性。综合比较chain的体系结构,期望在这两个维度之间获得最佳的权衡,但需要在链下增加更多的节点来改善其分散特性。在复合锚预测器模式下,增加所需信息源的数量,保留锚AMM预测器的特性,减小波动带宽可能是改进的方向。

作者:曹艺馨,在哈斯基资本研究公司工作

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发