火币成长学院320人学过发布于2023.07.28 更新于2024.01.09
区块链
总课程3讲
摘要
预言机(Oracle)是一种将现实世界数据引入区块链的技术,预言机刚刚诞生的时候并不被重视,后来随着应用场景扩大,预言机也越发重要。
上一轮牛市周期中,预言机龙头ChainLink暴涨便主要得益于“DeFi Summer”的爆火;近期,RWA赛道大热,现实世界中的各类资产不断上链,预言机的需求也进一步增加。
预言机的运作原理可以简单描述为以下步骤:数据获取、数据验证、提交数据到区块链、智能合约执行。需要注意的是,预言机本身并不是区块链上的智能合约。
预言机是外部世界数据与区块链智能合约之间的桥梁,其自身安全性和数据可信性是面临的主要挑战。另外,预言机操纵和价格操纵本质上看并不相同。
预言机是什么
预言机(Oracle)是一种将现实世界数据引入区块链的技术,用于在区块链上获取和验证外部数据的工具。在区块链世界中,智能合约通常只能访问其自身的内部数据,无法主动获取来自外部世界的信息,例如股票价格、天气数据、体育比赛结果等。预言机的作用就是将这些外部数据带入区块链,使智能合约能够依赖准确的现实世界数据进行执行。
预言机刚刚诞生的时候,因为缺少应用场景,并没有受到太多重视。但是随着智能合约的应用场景逐渐增多,各种DeFi和NFTFi应用破土而出,越来越多的应用场景需要与现实世界进行交互。上一轮牛市周期中,预言机龙头ChainLink暴涨在一定程度上就得益于“DeFi Summer”的爆火;近期,RWA赛道大热,现实世界中的各类资产不断上链,现实世界中的美债价格、股票价格、以及房产价格等更需要借助预言机为各类DeFi应用喂价,这也使得预言机的需求进一步得到提升。
注:RWA持币人数和资产变化图(来源:Dune)
预言机是如何运行的
为什么互联网也需要有 “网下” 数据, 但没有预言机问题呢? 因为区块链上的数据需要经过共识, 因此预言机上传上来的数据也需要是可信的,而互联网 (Web2) 上的数据本身都是中心化的。从本质上看,预言机所需要解决的是数据从数据源到处理以及喂价的信任问题, 通常不是数据本身的问题。
预言机的运作原理可以简单描述为以下步骤:
数据获取:预言机负责从外部世界获取需要的数据。这些数据可以是任何来自现实世界的信息,例如天气情况、股票价格、比赛结果等。
数据验证:获取到数据后,预言机需要对其进行验证,确保数据的准确性和真实性。验证过程可能涉及多个步骤,包括数据源验证、数据真实性验证、数据传输的完整性验证等。
提交数据到区块链:一旦数据被验证无误,预言机将数据提交到区块链上的智能合约中。通常,智能合约会提供一个接口,使预言机能够将数据发送到合约中的指定位置。
智能合约执行:一旦数据被智能合约接收,合约会根据这些数据执行预先编写的逻辑和条件。智能合约可以基于预言机提供的数据做出决策、触发事件或执行相应的功能。
需要注意的是,预言机本身并不是区块链上的智能合约,它只是外部世界数据与区块链智能合约之间的桥梁。预言机的作用在于为智能合约提供来自现实世界的信息,使智能合约能够更加智能化和实用化。
预言机操纵与价格操纵有何不同
正如上文所说,预言机是外部世界数据与区块链智能合约之间的桥梁,在货币市场、期权市场、合成资产、算法stablecoin和自动化资产管理等DeFi协议中一旦出现预言机操纵,会造成一系列负面后果,比如stablecoin脱锚、恶意套利交易、强制清算以及协议流动性枯竭等。预言机操纵行为的产生可能是预言机有意发起攻击或不小心犯错,也可能是预言机的数据源头出了问题。其中,数据源可信是预言机信任问题中最重要的一个点, 这是因为这些数据很多都是链下的, 链下的数据其实无法证明是完全可信的。在加密市场中,因预言机故障导致的黑客攻击也偶有出现。
2020年11月,由于预言机发送错误价格,使得Compound的智能合约接受喂价后执行清算操作(贷款被以折扣价格售出),导致用户损失了8900万美元。当时,预言机从CoinbasePRO获取的DAI价格为1.3美元,而正常的价格应该在1美元左右。2022 年 3 月 , Deus Finance 遭到黑客攻击,损失约 300 万美元。知道创宇区块链安全实验室监测分析指出,攻击者从 SPIRIT-LP_USDC_DEI 中闪电贷借出约 970 万 DEI 代币,之后再次使用闪电贷从 sAMM-USDC/DEI 中获取了 2477 万 DEI 代币用于操纵价格预言机,最终导致普通用户资产被清算。
值得注意的是,预言机操纵与价格操纵有所不同。尽管市场操纵和预言机操纵都是通过操纵喂价来使其偏离真实的市场供需情况,不过其形成机制却大相径庭。市场操纵改变的是资产价格,而预言机操纵是将错误或无效的喂价上传到链上,这些喂价并不反应资产的真实价格。市场操纵的本质是改变资产的底层供需关系,以至其价格偏离正常水平。当预言机被操纵,市场价格仍反应真实的供需关系,但预言机会有意或无意地错报价格。