# 预言机丨web3基础设施

By [Lavi](https://paragraph.com/@laviscar) · 2024-02-21

---

撰文：Laviscar.eth 于 2024年2月21日

区块链生态的日渐繁荣，web3应用和各种protocol层出不穷。而多数项目都需要的基础设施之一就是今天介绍的对象——预言机（oracle）。

*   **什么是区块链预言机**
    

区块链是一个封闭的系统。链上的智能合约中使用的数据都是链上原生数据，其目的是为了确保整个系统和系统内使用的数据是安全可靠，可在链上溯源的。好比一个在与世隔绝的岛上的部落里，出生的人都拥有一个出生证明，证明孩子的父母是谁，由此确认这个新生儿是岛上部落的土著，有完整的血缘链。区块链就是这个岛，这些岛上的土著就是安全可靠可溯源的数据，没有数据是凭空出现或捏造的。

区块链预言机是一个连接封闭的区块链系统和外部世界的渠道。计算机领域的预言机（oracle）一词又译为神谕机，神谕意指“不需要通过计算直接获得某问题的答案”，想象一下你是个计算机，你不需要通过复杂的数据分析气象报告来判断明天是否会下雨，而是直接选择相信天气预报告诉你的结论。你不需要怀疑或者验证，只需要接收这个信息，这就是个神谕。而区块链预言机，就是告诉区块链这个封闭系统，今天大陆会不会下雨的天气预报，或者说消息管道，如果放在刚才的小岛的例子上，那可以是一艘连接小岛和外部大陆的船。

智能合约向预言机提出请求，获取外部数据，以此执行合约内容，因此预言机是区块链世界里的重要基础设施。其经典的应用场景包括：在航班延误触发赔付的智能合约中提供航班是否延误的信息、在美国总统竞选押注和体育赛事押注的智能合约中提供选举赛事的结果、在去中心化交易所中提供不同商品货币的价格等。

其中，最后一项可以说是目前预言机在区块链中应用最广泛的场景，是所有DeFi项目的核心——喂价。Defi项目本身的智能合约并不能抓取众多币种的价格，只能靠预言机提供外部世界的数据。

要致富先修路，预言机带来的是信息的流通，其重要性在整个区块链生态不言而喻。

*   **预言机问题**
    

那么，如果连接岛上和外部大陆的小船上装的不是小岛上请求的物资，而是病毒或者炸弹怎么办？预言机最主要的问题在于数据源的可信性、数据准确性、节点安全性：发出地是否可信、货物是否合格、在海路上是否被拦截掉包等。介于区块链的特性，用户通常会考虑预言机是否足够去中心化，毕竟一个去中心化产品的数据源来自于中心化机构，那这产品本身的去中心性便站不住脚。除此之外，预言机还面临请求的数据没有标准的格式，以及数据清洗的难题，毕竟天气信息和总统竞选结果不太可能以统一的标准打包成数据，每一种新的数据类型请求都会造成额外不菲的成本。

综上所述，可信性、准确性、安全性、去中心性、标准化，都是区块链预言机面临的挑战。那么现有的预言机赛道上的项目是怎么做的呢？

*   **ChainLink丨以太链上老牌龙头**
    

ChainLink是区块链技术公司SmartContract的项目，白皮书发表于2017年9月，是最早的区块链预言机项目之一，部署在ETH链上目前公认的预言机龙头，代币为LINK。

其预言机的工作原理，去中心化预言机网络，以Link最主流的产品Data Feeds喂价工具为例：

首先，数据聚合商从各大交易所读取交易数据，整合处理成可用的价格数据，并出售给需要的个体。其次，每个Chainlink节点运营商（Nodes）从多个数据聚合商读取需要的数据，进行交叉验证，取各聚合商提供的价格的中位数，得到一个确定的价格数据，签名后发送到网络上，该网络被称为DON（Decentralized Oracle Network），由多个独立运营的节点组成。至此，DON网络上就有了多个节点签名验证过的价格信息，根据信息和签名形成一份报告，发送至ChainLink的链上智能合约，在报告发送之前的步骤，都是在链下进行的。链上的ChainLink智能合约会检查报告中的数据和节点的签名，确认无误后生成当前的价格，喂给请求数据的其他dApp。

值得注意的是，Data Feeds上价格更新并不是实时的。由于每次在合约中写入价格都算一次链上操作，需要占用链上内存并消耗手续费，频繁更新也会导致网络的拥堵。为了解决这个问题，Link给Data Feeds的更新设计了两个条件，一是定时更新（heart beat），另一个是价格浮动更新（deviation threshold），当其中一个条件满足时链上价格进行更新。两个条件根据不同的商品而有所不同，例如ETH的价格每一小时更新一次，或，价格偏差阈值超过0.5%时更新。这样定期更新记录在链上的喂价方式叫“推送”（push-base model）。

ChainLink通过DON的方式解决了数据来源可信性和节点的安全性和去中心化的问题，DON获取数据和形成报告的方式也很大程度上保证了数据的准确性，是目前发展较为成熟的预言机模式。ChainLink的其他产品包括获取随机数，储备金证明，跨链通信等。

*   **代币LINK的用途**
    

关于ChainLink的代币经济模型会另做分析，这里只关注LINK代币的作用。2021年4月发布的白皮书2.0版本的核心是代币的权益质押。社区持有者和节点运营商通过质押LINK获得相应的权益和奖励，其中节点运营商，由于消耗金钱设备和人力成本向DON提供数据，因此获得的奖励在一定比例上比普通社区质押者更丰厚。质押奖励包括使用LINK预言机服务的项目提供的代币和LINK代币本身，未来ChainLink还会继续更新调试LINK代币的权益，其中包括用于打造节点的声誉系统等。

*   **其他服务**
    

ChainLink团队推出的BUILD和SCALE两个服务，旨在帮助早期区块链项目更快接上自己的预言机产品，提供技术支持帮助项目发展。参与BUILD program的项目方给ChainLink项目方和LINK质押者发放自己项目3%-5%的代币和其他奖励换取服务。如此一来，若是孵化出了明星项目，LINK质押者便能获得额外不菲的回报。**SCALE** progam则是面对不同的新旧公链提供服务。公链承诺承担预言机提供的信息上链的手续费及其他成本，让ChainLink一定时间内免费在链上发布数据，降低节点的运营成本，让预言机服务变得可持续，简化链上其他dApp的开发，丰富公链的生态。

可以看到，LINK代币在2.0经济模型的赋能下多了不少实用价值，个人最看好的还是BUILD项目的盈利能力。预言机作为区块链的基础设施收收各项目的过路费还是非常合理的，也因此让LINK有了金铲子的功能。ChainLink团队也持续努力让项目能实现经济自循环，而不是单靠LINK代币来给予运营商奖励。

下一篇来探讨PTYH，预言机垂直赛道的新龙头，强势挑战LINK地位，2月初刚上BINANCE。采用“拉取”（pull-base）喂价模型，高吞吐量低延迟，专门服务于Defi项目。目前已给161个项目提供喂价服务，仅次于ChainLink，且支持40多条公链，官网上的客户包含TradingView, Synthetix等。

---

*Originally published on [Lavi](https://paragraph.com/@laviscar/web3)*
