ChainLink是最早提供类似oracle的服务的项目。以太坊于2015年创建时,它彻底改变了区块链可以为公司提供的解决方案。在此之前,比特币类型的加密货币主要仅由另一种价值交换组成,允许从交易中删除中介。以他的智能合约,以太坊的创始人Vitalik Buterin打开了一个潘多拉魔盒,该盒子为区块链技术提供了许多应用程序。但是智能合约的最大问题是它们只能管理区块链上存在的信息。因此,由于这些智能合约无法直接获取某些信息,例如给定日期的温度,体育赛事的获胜者,对新法律的投票结果等,因此极大地限制了这些合约的利益。
这就是ChainLink及其Oracle服务的来源。借助ChainLink,智能合约的用户可以使用公司设置的oracle网络来检索称为“脱链”的信息,也就是说从网络外部获取信息。 。 ChainLink的主要目的是连接链上世界(在区块链上)和链外世界(不在链上的信息)。为了实现其目标,该项目将由两个基础结构组成:一个链上和另一个链外。
ChainLink的第一个组件是链上的,由部署在以太坊区块链上的智能合约组成。这是一个“ oracle合同”,它将处理来自想要获取链下信息的用户的请求。当用户想要获取链下信息时,他将通过“用户合同”向ChainLink网络提交请求,然后区块链将通过他自己的“ oracle合同”处理该请求。这种类型的智能合约负责将请求与适当的Oracle匹配。
ChainLink的第二个组件是链外的,由连接到以太坊网络的“ oracle节点”组成。目前,ChainLink仅在以太坊网络上运行,但将来有可能在其他网络上运行,该项目旨在与所使用的区块链无关。
与其他集中化的Oracle不同,ChainLink协议是完全分散的。这将解决可能提供不准确数据的集中式Oracle遇到的问题。例如,如果要接收有关财务结果的报告,则该oracle可能会更改该数据,如果它意图不佳或被破坏以提供虚假数据。为了解决这个问题,ChainLink实现了所谓的分布式源和预言。如果甲骨文希望获得良好的声誉,则可以从多个来源提取其数据。另外,当“用户合同”向网络发出请求时,该请求由几个“预言节点”脱链转包。
因此,每个预言家将在不同的地方查找其信息。然后,“ oracle合同”将编译这些不同的数据,并在信息不一致时给出平均值。使用这种系统的优势在于,不同的预言家对伪造其信息没有兴趣。 ChainLink确实能够检测到那些提供虚假信息的人,并且可以通过不付钱或降低其在网络上的声誉来惩罚他们。