GTokenTool全网最好的代币发行工具平台
当前位置:首页 >> 加密百科 >> 什么是区块链预言机?它是如何工作的?

什么是区块链预言机?它是如何工作的?

admin 加密百科 54

什么是区块链预言机?

区块链预言机是将区块链连接到外部系统的实体,允许根据现实世界的输入和输出执行智能合约。预言机为 Web 3.0 生态系统提供了一种连接到现有遗留系统、数据源和高级计算的方法。 

去中心化预言机网络(DON)支持混合智能合约的实现,其中链下基础设施和链上代码结合在一起,以提供对现实世界事件做出反应并与传统系统交互的复杂去中心化应用程序(DApp) 。

假设 Alice 和 Bob 希望对一场赛马的结果下注。总计 80 美元的赌注由智能合约托管,Alice 为 X 队下注 50 美元,Bob 为 Y 队下注 30 美元。比赛结束后,智能合约如何知道应该将钱交给 Alice 还是 Bob?解决方案是,需要一种预言机机制来从链下检索准确的比赛结果,并安全可靠地将其传送到区块链。

由于区块链具有分布式账本特性,网络中的每个节点在给定相同输入的情况下都必须获得相同的结果。例如,如果一个节点尝试验证另一个节点的交易,它将获得不同的结果。这种架构的设计初衷是确保确定性。

共识是区块链中就数据值达成一致的技术,节点达成共识需要确定性。其中一些可能对您来说很熟悉,例如中本聪共识的工作量证明 (PoW)拜占庭共识的权益证明 (PoS)。共识是区块链发挥作用的主要因素之一。

然而,区块链世界需要与现实世界相连接。要实现 DeFi,我们需要将以太币和其他加密货币的价格纳入合约。我们需要气象数据来提供去中心化、无需信任的保险。要将区块链用于其最基本的用途之一——智能合约,我们需要数据。那么,在这种限制下,我们如何连接世界呢?

本指南旨在解释区块链预言机的作用、区块链预言机问题并介绍各种区块链预言机项目。

区块链预言机问题

区块链预言机困境凸显了智能合约的一个关键限制,即它们无法以任何方式与其原生区块链环境之外的数据和系统连接。外部资源被称为“链下”,而当前记录在区块链上的数据被称为“链上”。 

区块链预言机问题

区块链通过刻意与外部系统分离来实现其最有益的特性,例如防止双重支付攻击、对用户交易真实性达成强有力的共识以及减少网络停机时间。为了安全地与区块链的链下系统交互并弥合两个环境之间的差距,您需要一个称为“预言机”的额外基础设施。

由于绝大多数智能合约用例(例如 DeFi)都需要了解现实世界的数据和链下发生的事件,因此解决预言机问题至关重要。因此,预言机通过提供链下资源的通用网关,同时保持区块链的关键安全特性,拓宽了区块链可以实现的数字合约类型。 

金融领域的资产价格、政府领域的身份验证、游戏领域的随机性、保险领域的天气信息只是通过将预言机与智能合约相结合而获利的少数行业。

区块链预言机起什么作用?

任何将确定性区块链与链下数据连接起来的设备或实体都称为区块链预言机。每个数据输入都通过这些预言机中的外部交易进行路由。 

然而,我们可以肯定,区块链包含了通过这种方式验证自身身份所需的所有信息。预言机被视为区块链中间件,因为它们充当了两个领域之间的纽带。

Chainlink是去中心化预言机的行业标准,因为它解决了外部数据访问和智能合约中心化问题。那么,Chainlink 预言机是什么呢?

Chainlink 是一个去中心化的预言机网络,可将现实世界的数据提供给区块链智能合约。LINK 代币是用于支付网络服务的数字资产代币。

另一方面,单一中心化的预言机会导致去中心化、区块链安全智能合约本应解决的一个问题:单点故障。那么,如果预言机出现故障或被盗,你如何知道你的数据是否准确?如果区块链上安全、可靠的智能合约所依赖的数据可疑,那它还有什么用呢?

Chainlink(一个去中心化的节点网络)解决了这个问题,它使用预言机将来自链下来源的数据和信息提供给链上智能合约。这种技术与其他安全技术相结合,消除了仅使用单一中心化来源可能出现的可靠性问题。

Chainlink 与区块链无关,因为它使用单一框架连接所有主要的公共和私有区块链环境,这为跨网络通信提供了典型的抽象级别。

因此,您可以在链上引用已经从现实世界中提取并使用 Chainlink 等服务收集的去中心化数据,这类似于公共图书馆,只是数据是去中心化的。您甚至可以创建模块化预言机网络来获取所需的任何特定信息。此外,您还可以执行链下计算并将数据传输到现实世界。

其他顶级区块链预言机包括 Witnet、Paralink、Provable 和 Dos.Network。这些服务提供由智能合约和一些链下组件组成的预言机,这些组件可以查询应用程序用户界面 (API),然后发送交易以定期更新智能合约中的数据。

区块链预言机的类型

预言机为区块链或智能合约提供与外部数据通信的功能。相反,它们充当区块链外部世界的接口。在许多情况下,外部数据必须传送到封闭的区块链系统,尤其是当智能合约与现实世界事件相关联时。外部数据由加密预言机查询、验证和认证,然后将其转发到封闭系统。之后,经过验证的数据将用于验证智能合约。

硬件和软件预言机

虽然情况并非总是如此,但大多数加密预言机都会分析数字数据。硬件预言机提供来自物理世界的数据,而软件预言机提供来自网站、服务器或数据库等数字来源的数据。此外,硬件预言机还可以传送和中继来自摄像机运动传感器和射频识别 (RFID) 传感器的信息。实时数据(例如汇率、价格变化和旅行信息)可以通过软件预言机传送。 

入站和出站预言机

预言机与区块链建立双向通信渠道,发送和发送数据。虽然出站预言机可以将区块链数据传送到外部世界,但入站预言机更有可能将链下数据(或现实世界数据)传送到区块链。此外,导入的数据几乎可以代表任何内容,从资产价格波动到气象条件,再到已完成付款的验证。

对于入站预言机,常见的可编程场景可能是:如果资产达到特定价格,则下达买入订单。另一方面,出站预言机向外界发出链上发生的事件警报。

中心化和去中心化预言机

中心化预言机由单一实体管理,并作为智能合约的唯一数据源。仅使用一个信息源可能会很危险,因为合约的有效性完全取决于负责预言机的实体。 

恶意行为者的恶意干预也会直接影响智能合约。中心化预言机的根本问题是它们存在单点故障,这使得合约更容易受到攻击和漏洞的攻击。

去中心化预言机的一些目标与公有区块链类似,例如将交易对手风险降至最低。例如,它们不依赖单一事实来源,从而使传递给智能合约的信息更加可靠。 

智能合约会咨询多个预言机来评估数据的有效性和准确性;这就是去中心化预言机也称为共识预言机的原因。其他区块链可以使用一些区块链预言机项目提供的去中心化预言机服务。

人类先知

拥有特定领域专业知识的个人有时可以充当预言机。他们可以从各种来源收集信息,检查其合法性并将其转换为智能合约。由于人类预言机可以使用加密技术来验证其身份,因此欺诈者冒充他们并提供篡改数据的可能性很小。

特定合约的预言机

这些预言机只适用于单一的智能合约。如果开发人员打算部署多个智能合约,则需要构建多个特定于合约的预言机。

特定于合约的预言机不值得花费时间和精力来保持其最新状态。相反,它们很不方便,只能在特定情况下使用。

计算预言机

到目前为止,我们只是从寻找和提供数据的角度讨论了预言机(也称为数据载体预言机或自动化预言机)。然而,预言机可用于执行任意“链下”计算解决方案,考虑到以太坊固有的区块 gas 限制和非常高的计算成本,这尤其有益。

计算预言机不仅仅是传递查询结果,还可以用于对一组输入进行计算并返回计算结果,而这些结果原本无法在链上计算。例如,为了估算债券合约的收益率,计算预言机可用于执行计算复杂的回归计算。

Oracle 设计模式 

根据定义,所有讨论的预言机都发挥着一些关键作用。这些功能包括: 

  • 从非区块链源收集数据。 

  • 使用签名的消息,将数据发送到链上。 

  • 通过将数据存储在智能合约的存储中,使数据可访问。 

一旦数据存储在智能合约的存储中,其他自动化协议就可以通过调用预言机智能合约的“检索”功能的消息调用来访问它。它也可以通过“查看”预言机的存储,由以太坊节点或支持网络的客户端直接“调用”。

建立预言机的主要方式可以分为以下三种:

设置预言机的主要方法

立即阅读

立即读取的 Oracle 提供仅需要快速决策的信息,例如“这个学生年龄是否超过 25 岁?”那些想要查询此类数据的人通常会在“即时”的基础上进行查询,这意味着仅在需要信息时才进行查找。 

例如拨号代码、学历证书、机构会员资格、机场识别和其他信息。

发布-订阅

预言机可以有效地为可能发生变化的数据(可能既有规律又频繁)提供广播服务,要么由链上的智能合约轮询,要么由链外守护进程监视更新。天气数据、价格信息、经济或社会统计数据和交通数据只是发布-订阅设置的几个例子。

请求-响应

最具挑战性的类别是请求-响应:数据空间太大,无法存储在智能合约中,并且用户每次仅预期使用全部信息的一小部分。对于数据提供商来说,这也是一种可行的商业策略。 

实际上,这样的预言机可以实现为链上智能合约和链下基础设施的系统,用于监控请求以及检索和返回数据。来自去中心化应用程序的数据请求通常是一个异步过程,包含以下多个步骤:

设置请求-响应预言机的步骤

预言机在 DApp 中的应用

预言机是一种弥合链下世界与市场上许多 DApp 使用的智能合约之间差距的机制。以下是预言机可能提供的一些数据实例:

  • 时间和间隔数据用于基于精确时间测量的事件触发器。

  • 来自资本市场的数据,例如代币化资产和证券的定价包。 

  • 智能金融衍生品中包含的利率等基准参考数据。

  • 例如,天气数据用于根据天气预报计算保险费。

  • 地理位置数据,例如用于供应链跟踪的数据。

  • 对于保险合同,需要进行损失核查。

  • 体育赛事用于解决预测市场和梦幻体育合同。

  • 航班统计数据,例如团体和俱乐部用于拼凑机票的航班统计数据。

注意安全问题

预言机通过将外部数据引入方程式,在智能合约执行中发挥着关键作用。另一方面,预言机也带来了巨大的危险,因为如果它们是可信来源,并且可能被黑客入侵,它们可能会危及它们提供的智能合约的执行。

一般来说,在考虑使用预言机时,必须仔细考虑信任模型。如果我们假设预言机值得信任,那么你可能会牺牲智能合约的安全性,让其暴露于潜在的错误输入。然而,如果仔细考虑了安全性假设,预言机就会很有价值。

其中一些问题可以通过去中心化的预言机来解决,为以太坊智能合约提供不受信任的外部数据。在开始探索预言机在以太坊和现实世界之间的桥梁之前,你必须仔细选择它。

作者:GTokenTool一键发币平台

交流群:https://t.me/+Kz4u3xoDpFo3ZWY1

同类推荐