Andre Cronje:简述Keep3r Network的链上预言机喂价源

原文标题:Keep3r Network: On-chain Oracle price feeds
作者:Andre Cronje
翻译:Typto
翻译机构:DAOSquare
Andre Cronje:简述Keep3r Network的链上预言机喂价源文章插图
什么是预言机?
预言机是提供特定问题答案的外部数据源 , 例如: “过去24小时纽约的温度是多少” 。
预言机的一个子集是价格订阅 , 例如:“ETH 和 wBTC 的兑换价格是多少” 。
为什么我们需要预言机?
并非所有的数据都可以在链上提供 , 如果可以在链上提供 , 那么也并不是所有的数据都是可信的 , 举两个例子:
Bob 和 Alice 就掷硬币的结果打赌 , Bob 说是正面 , Alice 说是反面 。 下注时他们都锁定了他们的 ETH 。 如果 Bob 是这个对赌结果的预言机 , Bob 在合约中输入“heads” , Bob 赢了 , 但 Alice 会相信这个结果吗?拥有外在的、安全的预言机是很重要的 。
Bob 同意卖给 Alice 1个 ETH , Bob 创建了一个智能合约 , 从 Alice 那里获得 DAI , 并根据 Uniswap 上 ETH 兑 DAI 的价格给她 1 ETH 。 目前的价格是400 DAI = 1 ETH , 当 Alice 调起合约时 , 合约要求从 Alice 那里转出 4000 DAI , 因为 Bob 在合约中增加了一笔闪电贷 , 以提高 ETH 的成本 。 因此 , 拥有防篡改的预言机是很重要的 。
什么是 Uniquote 预言机?
不同的最终结果需要不同的产品 , 如果你正在使用高可用资产(如 ETH , BTC...), 并需要最佳的安全性 , 你应该使用 Chainlink 预言机 。
这里有一些限制:

  • 资产的可用性
  • ETH 价格时效性与交易时效性
  • 成本
对于像 yearn.finance的 Uniswap LP 非永久性损失对冲产品 , 或者 year.finance 的 Uniswap 借贷 , 我们需要一个具有以下特点的解决方案:
  • 接受 Uniswap 的任何资产交易
  • 安全与数据时效性
你可以在这里阅读更多完整文档 , 你可以在这里查看可用的喂价源 。
欲了解最新价格 , 你可以在合约中直接调取:
Uniquote.current(WETH, 1e18, WBTC);
虽然上述调用具有较高的数据时效性 , 但安全性较低 , 开发者只需操作2个数据点就可以影响喂价 , 因此为了更高的安全性 , 你可以使用:
Uniquote.consult(WETH, 1e18, WBTC, granularity);
granularity 就是读数量 , 所以 granularity = 48 就是过去24小时的平均价格 , 更安全 , 但数据的时效是24小时 。
更多阅读
文档
喂价源
【Andre Cronje:简述Keep3r Network的链上预言机喂价源】Github