区块链预言机(Oracle)是什么?|金色百科
此前,据Medium消息,去中心化借贷平台Compound发布了名为“开放预言机系统”的社区项目,以此设定价格预言机的开放标准,让开发者可以从分布式的价格信息流中贡献价格数据。该项目的原型机目前已经在以太坊Rinkeby测试网上运行,发布来自Coinbase Pro、Kraken和币安这三个来源的价格信息。
为什么智能合约不直接调用Coinbase Pro、Kraken和币安的价格信息,而是要通过“开放预言机系统”呢?
要弄懂这个问题,首先,我们必须什么是预言机(oracle )。预言机(oracle)既不是预测价格的机器,也不是甲骨文(oracle),而是打通区块链的链上和链下的机制,即将区块链外信息写入区块链内的机制。
区块链是一个确定性的、封闭的系统环境,目前区块链只能获取到链内的数据,而不能获取到链外真实世界的数据,区块链与现实世界是割裂的。区块链不允许不确定的事情或因素,智能合约不管何时何地运行都必须是一致的结果,所以虚拟机( VM )不能让智能合约有 network call (网络调用),不然结果就是不确定的。 即 智能合约不能进行输入 / 输出,无法主动获取外部数据的,所以只能通过预言机将数据给到智能合约。
而预言机可以将外界信息写入到区块链内,完成区块链与现实世界的数据互通。它允许确定的智能合约对不确定的外部世界作出反应,是智能合约与外部进行数据交互的唯一途径,也是区块链与现实世界进行数据交互的接口。
下图就是理想中预言机的工作流程,即外部把数据给链上的 Oracle 合约,然后 Oracle 合约再把数据给用户的智能合约。
预言机作为区块链与现实世界进行数据交互的桥梁,应用场景非常多。或者说,一切需要与链下进行数据交互的 DApp 都需要预言机,比如金融衍生品交易平台、借贷平台、快递追踪 /IoT、稳定币、博彩游戏、保险、预测市场等。
以目前最热门的 DeFi 概念为例,如果是一个通过加密资产抵押或者借贷的项目,那就需要预言机在贷款生成时提供价格数据, 同时能监控加密抵押物的保证金比率,在保证金不足的时候发出警告,并触发清算程序。 甚至,借贷平台能用预言机来导入借款人的社交、信用和身份信息,以确定不同的贷款利率。
举个例子, 稳定币DAI需要获取 ETH 的实时价格,来判断所抵押的加密货币是否达到了平仓价格进而触发平仓。假设有 1000 个节点,那就需要向交易所(比如币安)或 CoinMarketCap 的 ETH / USDT 交易对进行 1000 次的 API 数据请求 ,但是,由于 ETH 的价格是实时变动的,加上网络延迟、计算速度等原因,每个节点获取到的价格可能都不相同,这部分数据被输入到智能合约后,节点间无法达成共识,那么整个系统就会崩溃。
在保险应用方面,类似 Etherisc 这样的平台正在建立去中心化的保险应用, 包括航空延误险、 农作物保险等等。用户以 ether 支付保费,购买保险,并根据保险协议得到自动赔付。预言机能为这类应用引入外部数据源和事件, 帮助去中心化的保险产品做出赔付的决定,并能安排未来的自动赔付。所以在 DeFi 领域稳定币、去中心化杠杆交易、金融衍生品交易等都需要预言机。
参考知乎孙孝虎文章《什么是区块链预言机(BlockChain Oracle)》
Ondo Finance Acquires SEC-Registered Broker-Dealer Oasis Pro in Major Tokenization Play
Strategic acquisition provides comprehensive US regulatory infrastructure to accelerate tokenized se...
Elon Musk Backs Bitcoin in America Party Launch, Market Reacts
The post Elon Musk Backs Bitcoin in America Party Launch, Market Reacts appeared first on Coinpedia ...
Bitcoin Crash to $70K? Analyst Warns of Massive Sell-Off Ahead
The post Bitcoin Crash to $70K? Analyst Warns of Massive Sell-Off Ahead appeared first on Coinpedia ...