预言机
想象一下,一个完全自动化的保险合约,能根据真实的天气数据自动理赔;一个去中心化金融协议,能实时获取全球资产价格进行清算。这背后都离不开预言机,它让封闭的区块链世界第一次拥有了感知现实的能力。
区块链就像一个绝对诚实但“与世隔绝”的账本先生,它只相信自己链上记录的东西。智能合约是这位账本先生写下的自动执行规则,但问题来了:它怎么知道今天上海是否下雨了?或者此刻比特币的价格是多少?这些信息都在墙外的现实世界里。
预言机就是专门负责翻过这堵墙的一个应用程序。它从外部世界(比如天气 API、股票交易所)获取数据,经过验证后,安全地传递给区块链上的智能合约。
假设 Alice 下注 20 个以太币赌谁将成为下一任美国总统。这种情况下,预测市场去中心化应用程序就需要预言机来确认选举结果,并判定 Alice 是否有资格获得付款。
为什么不直接从外部获取信息给智能合约而是需要预言机
因为以太坊是确定性系统。 确定性系统是指在给定初始状态和特定输入的情况下始终产生相同结果的系统,这意味着根据输入计算输出的过程不存在随机性或变化。
如果区块链从外部来源(例如现实世界)接收信息,确定性将不可能实现。以一个智能合约为例,该合约根据从一个传统价格应用程序接口获得的当前以太币-美元汇率执行交易。该汇率可能会经常变动或被弃用或遭到黑客攻击,这意味着执行相同合约代码的节点会得出不同的结果。
因此区块链需要一个集中管理机构作为真实性来源,也就是预言机!
发展
预言机并非一蹴而就,它的演进与区块链应用深度绑定,大致可分为几个阶段:
-
概念萌芽期(2015-2018):随着以太坊智能合约兴起,如何获取外部数据成为首要难题。早期方案如 Oraclize 尝试用技术证明数据来源,而 Chainlink 在 2017 年提出了去中心化预言机网络的愿景。
-
DeFi 驱动期(2019-2021):DeFi 的爆炸式增长,让价格预言机成为刚需。清算、借贷、衍生品都依赖实时、准确的价格数据。这一时期,出现了 Tellor、Band Protocol 等更多解决方案,信任机制从单一来源向市场博弈和抵押模型演变。
-
专业化与跨链期(2021-2023):需求催生专业化。Pyth Network 引入“第一方数据”,由交易所等数据源自己签名报价;API3 提出“第一方预言机”模型。同时,预言机开始服务于多链生态,成为跨链基础设施的关键一环。
-
价值捕获与 AI 融合期(2023-至今):人们发现预言机数据更新本身蕴含价值(Oracle Extractable Value, OEV),即通过操纵更新时机套利。新方案开始设计拍卖机制来捕获和分配这部分价值。同时,预言机开始与 AI 结合,提供可验证的 AI 推理服务,迈向“智能信任层”。
预言机工作原理
大致有三个角色:智能合约、预言机合约、预言机节点。
智能合约
预言机服务的基本工作流程始于智能合约向预言机合约发送数据请求。数据请求通常包含下列问题:
-
链下节点可以在哪些来源中查询请求的信息?
-
报告者如何处理数据来源中的信息并提取有用的数据点?
-
有多少预言机节点可以参与数据检索?
-
在筛选提交并将报告聚合为单个值时应该采用什么方法?
预言机合约
预言机合约是预言机服务的链上部分,它对外公开了一些函数供客户端合约调用,侦听其他合约的数据请求,并将数据查询转送到预言机节点,最后将返回的数据广播到客户端合约。该合约还可以对返回的数据点进行一些计算,以产生聚合值并发送给请求合约。
预言机节点
预言机节点是预言机服务的链下部分,它从外部来源提取信息,例如托管在第三方服务器上的应用程序接口,并将信息放在链上供智能合约使用。
种类
- 发布-订阅预言机
预言机节点主动定期将数据更新提交到链上的智能合约存储,合约可以随时读取。
- 请求-响应预言机
智能合约在需要数据时发起数据请求,预言机节点响应并将数据返回给链上。
- 中心化预言机
中心化预言机由单个实体控制,该实体负责聚合链下信息并按照请求更新预言机合约的数据。依赖单一真实性来源,效率高。但如果预言机耍赖或被攻击,智能合约将基于错误数据执行,低正确性、可用性差、激励兼容性差。
- 去中心化预言机
消除单点故障,由多个参与者组成,这些参与者先就链下数据达成共识,再将数据发送到智能合约,高正确性、激励兼容性高。
预言机带来的问题
预言机的出现是为了解决区块链直接从外部获取的数据不稳定不正确的问题,那么预言机如何保证数据来源正确未被篡改并且数据始终可用并且定期更新呢,这就是预言机问题!
不同的预言机对于预言机问题有着不同的解决方案,通常会根据以下几个能力来评估:
-
正确性:预言机不应导致智能合约基于无效的链下数据触发状态变化。 预言机必须保证数据的真实性与完整性。真实性是指数据是从正确来源获取的,完整性是指数据在发送到链上前保持完好无缺(即数据未修改过)。
-
可用性:预言机不应延迟或阻止智能合约执行操作或触发状态变化。 这意味着预言机提供的数据必须在请求时可用并且不会出现间断。
-
激励兼容性:预言机应激励链下数据提供者向智能合约提交正确的信息。 奖励兼容性包括可归因性和问责性。 可归因性指将一条外部信息与其提供者联系起来,而问责性则将数据提供者和他们提供的信息联结起来,因此能够根据提供的数据质量奖励或者惩罚数据提供者。
链桥
预言机是为了解决区块链从现实世界获取数据的问题,那么链桥则是不同区块链之间沟通的桥梁。传统区块链存在于孤立的环境中,区块链之间无法进行交易和通信,连通性和互操作性受到限制。链桥则在区块链之间建立一条条传输路线,允许区块链网络之间交换数据和转移资产。
链桥设计多种多样,以下是三种常见的资产跨链转移的方法:
-
锁定并铸币 – 锁定源链上的资产并在目标链上铸币。
-
销毁并铸币 – 销毁源链上的资产并在目标链上铸币。
-
原子交换 – 通过第三方将源链上的资产与目标链上的资产交换。
类型
-
原生链桥:这些链桥通常用于加强特定区块链上的流动性,使用户更容易将资金转移到生态系统。例如 Arbitrum 链桥就是为了方便用户从以太坊主网桥接到 Arbitrum。其他此链类桥包括 Polygon PoS 链桥、Optimism 网关等。
-
基于验证者或预言机的链桥:这些链桥依赖于外部验证者组或预言机来验证跨链转移。例如:Multichain 与 Across。
-
通用信息传递链桥:这些链桥可以跨链传输资产、信息和任意数据。例如:Axelar、LayerZero 与 Nomad。
-
流动性网络:这些链桥主要是通过原子交换将资产从一条链转移到另一条链。 一般来讲,它们不支持跨链信息传递。例如:Connext 与 Hop。