构建Ergo:预言机
2020年4月23日

区块链是孤立的系统,只能引用自身的数据,由共识建立。预言机是处理外部信息问题的解决方案,这对许多日常用例至关重要。
区块链是故意自给自足的。它们只引用在其直接生态系统内记录的信息,这些信息已被大多数矿工达成一致。由于区块链的整个目的基于共识,即没有集中化来源或单点故障,这就造成了一个问题。
当你想要与外部信息互动时会发生什么?许多基于区块链的应用需要处理来自现实世界的数据。这可能是金融信息,例如来自交易所的市场数据和价格,用于DeFi应用;也可能是体育结果,用于电子竞技预测市场;甚至可能是大气噪声信息,用于随机数生成器。
介绍预言机
预言机是作为这些现实世界数据源与孤立的区块链世界之间的链接的软件。它们在原则上是简单的,因为它们只需要定期创建一系列包含必要数据的交易(理想情况下以易于访问的方式格式化)。
然而,虽然任何人都可以将信息记录到开放的区块链上,但这就是一个集中化的来源。那么你如何信任一个预言机呢?
答案是:你不需要。就像区块链的共识方法本身一样,你需要多个预言机从多个来源提取数据,然后就记录到区块链的值达成一致。因此,你不需要信任单个矿工,也不需要信任单个预言机。
示例:比特币价格数据
作为一个例子,假设我们想每天将比特币的收盘价记录到Ergo区块链,以便为我们提供长期可靠的价格数据来源。
我们可以取十个——甚至一百个——不同的数据源,每个数据源从一个主要交易所提取数据。Coinbase、Bitstamp、Kraken,等等。我们确保许多交易所都有代表,虽然从同一交易所获取多个数据示例是好的,但我们不希望任何交易所被过度代表。
然后各方需要就价格达成共识。假设有100个参与方和价格。它们可以通过不同的方式做到这一点:
- 取它们提供的所有价格的平均值
- 丢弃最高和最低的20个价格,取剩余60个价格的平均值
- 选择中位数价格
- 对价格进行加权,中心价格集群具有更大权重,并取平均值
目标是丢弃或降低任何异常值的权重,这可能是由于单个交易所的极端价格波动、API故障或不诚实的预言机数据提供者造成的,同时保留许多良好的数据点,以确保价格的单一可靠记录。
预言机是区块链生态系统中极其重要的一部分。一旦你有了强大的预言机,你就可以创建各种DeFi应用——包括稳定币,这是区块链经济的重要组成部分,我们将在未来几个月在Ergo上进行探索。
Share post




















