想知道什么是智能合约预言机?在这里,我们提供了一份明确的指南,可以帮助您了解智能合约预言机的基础知识和高级概念。让我们潜入吧!
区块链是21世纪技术创新的最好例子吗?是的!与此同时,它也因遭遇挫折而陷入各种争议。区块链的主要功能侧重于使个人和机构能够在没有中心化第三方 的情况下交换数字资产。
相反,区块链只能执行简单的交易,因此需要智能合约。近年来,智能合约 在基于区块链的应用程序中的作用发生了很大变化。例如,以太坊虚拟机或 EVM 确保了智能合约的更多功能和更容易的可编程性。
然而,智能合约必须面临无法从现实世界访问外部信息的巨大挫折。以下讨论可帮助您了解智能合约预言机如何帮助解决区块链技术的最关键问题。
智能合约的价值
在不同区块链网络上运行的智能合约具有提高效率的潜力,同时降低了一系列行业的交易成本。智能合约能够显着降低交易对手风险,同时确保可信的透明度水平。那么,为什么在智能合约中需要预言机区块链?
尽管具有看似合理的优势,但智能合约的容量也面临着明显的故障。最近,区块链网络和智能合约对外部信息的需求引发了关于预言机的争论。预言机充当来自外部来源的数据馈送,提供区块链在特定情况下执行智能合约所需的重要信息。
深入了解智能合约
如果您想找出需要预言机智能合约的原因,那么您需要更深入地了解智能合约。它们是自主操作的计算机程序,可以在满足某些条件时自动执行。在智能合约的情况下,您可以在具有更高透明度和免于冲突的陌生人之间分享任何有价值的东西。
也可以想象智能合约是自动售货机,尽管它是由区块链驱动的。就像自动售货机可以配置为根据投入的美元分配物品一样,智能合约依赖于基于以太坊的智能合约中的以太币,以根据预定义的规则执行代码。
智能合约实际上是可以在不需要任何“智能”含义的情况下执行的代码片段,并且在很大程度上没有法律价值。然而,最近对智能合约的传统看法发生了很大变化。最近的智能合约发展显示出对确定性和不变性的高度重视。智能合约代码在部署后变得不可变。
因此,您可以删除智能合约,尽管交易历史记录仍保留在其运行的区块链上。此外,还需要注意的是,尽管智能合约是由代理创建的,但它具有自我所有权。任何私钥都不控制智能合约,也不具备自动执行的灵活性。智能合约具有激活其他智能合约的能力,尽管初始输入依赖于外部拥有的账户。
想了解更多关于智能合约及其工作原理的信息吗?看看这张详细的图表——
智能合约示例
在我们对智能合约预言机进行更全面的概述之前,回顾一个示例很重要。让我们以最流行的以太坊智能合约为例,了解强调预言机的原因。以太坊智能合约是以太坊区块链网络 中最显着的特征。
最近,基于由以太坊区块链驱动的智能合约的应用程序的流行程度大大增加。然而,以太坊智能合约在沙盒环境中运行,因此对访问以太坊区块链外部的数据施加了限制。
以太坊智能合约在无法访问硬件层或进行 HTTP 调用方面也出现了巨大的挫折。因此,它们只是充当仅在发送交易时才执行的代码的角色。这就是智能合约需要数据访问和与外界连接的原因。预言机帮助提供对以太坊区块链世界之外的智能合约的数据访问。
如果您不熟悉智能合约,您可能不确定它的功能。查看这篇文章,通过学习最好的智能合约用例来消除你所有的困惑。
什么是预言机?
预言机智能合约的定义有助于确定其在智能合约中的用途。事实上,预言机的概念,包括去中心化的预言机,已经流传多年。然而,最近对智能合约预言机的日益关注主要是出于对其实施和信任它们的可能性的担忧。
预言机区块链基本上意味着它与外部世界相连。Oracle 通过利用市场数据馈送和 Web API 等方法帮助检索和验证区块链和智能合约的外部数据。根据用例,智能合约可能需要不同类型的数据。
例如,智能合约可能需要有关天气或价格信息的信息。基于智能合约的应用程序可以利用预言机查询数据源以请求特定信息。随后,预言机可以在数据源与区块链和数据馈送之间的接口之间建立连接。
来自现实世界市场的数据馈送和 Web API 不具有确定性组件,如智能合约和区块链网络。因此,智能合约预言机有助于将不确定的外部信息转换为区块链可理解的格式。随后,它帮助区块链使用外部信息来执行智能合约中的特定条件。此外,智能合约预言机在多重签名交易的用例中也很有用,可以就签署的交易达成共识。
智能合约预言机示例
有趣的是,智能合约预言机示例启发了许多平台,例如作为去中心化预测市场的Augur 。Augur 通过充当数据源来展示更复杂的智能合约预言机版本,其中涉及参与者行为作为数据源的重要性。同时,Augur 还依靠预言机向预测市场报告准确的结果。有趣的是,激励结构有助于鼓励诚实、准确的报告。
让我们举一个通用的例子来理解智能合约预言机的重要性。假设您正在使用数字货币购买房屋,并且您已经为此开发了一个简单的智能合约。智能合约将规定,如果第一方将所需资金发送给第二方,则房屋契约从第二方转到第一方。当条件满足时,交易按照指定的指令以不可逆的方式进行。
因此,您可以看到智能合约如何消除对第三方的依赖。然而,区块链和链上智能合约必须有一种使用外部链下数据的方法。为什么? 智能合约可以通过访问外部信息来找到现实世界的应用程序。在这个例子中,链下数据可以是成功支付或成功接收契约的证明。因此,自包含的区块链系统必须依赖预言机来改进功能。
智能合约预言机的分类
您可以根据信息的来源、信任和方向对预言机区块链进行分类。有趣的是,一个特定的预言机可以很容易地获得不同类别的资格。预言机的来源是指数据的来源,即来自硬件还是软件。智能合约预言机中的信任方面指出了预言机智能合约的中心化或去中心化性质。智能合约预言机的分类还取决于信息的方向,可能是出站或入站。让我们看一下不同类型的智能合约预言机,以更好地了解预言机。
-
软件预言机
顾名思义,软件预言机是智能合约预言机示例,其中预言机与在线资源进行交互。然后,预言机将信息从在线资源传输到区块链。软件预言机的信息可能来自网站、在线数据库或服务器,基本上是指网络上的任何数据源。
与互联网的连接为软件预言机提供了强大的优势,因为它们可以为智能合约提供信息,同时确保信息的实时传输。软件智能合约预言机示例提供的信息示例包括实时航班信息、汇率和数字资产价格。
-
硬件预言机
在智能合约需要与现实世界交互的情况下,硬件智能合约预言机非常重要。硬件预言机的基本设计使它们能够从物理世界获取信息,同时确保其对智能合约的可用性。硬件预言机提供的信息示例是指来自电子传感器、信息读取设备和条形码扫描仪的信息。
硬件预言机的工作重点是将现实世界的事件转化为智能合约可以理解的数字价值。在这种情况下,一个实际的智能合约预言机示例是指使用传感器来检查卡车是否到达装载区。如果传感器在装载区检测到卡车,它可以将信息发送到智能合约。随后,智能合约可以根据指定的指令做出相关决策。
-
入站预言机和出站预言机
入站预言机能够将信息从外部来源传输到智能合约。同样,出站预言机也涉及从智能合约向外部世界发送信息。入站智能合约预言机的示例是通知智能合约传感器记录的温度。
另一方面,可以以智能锁的形式识别出站预言机示例。智能合约将通过利用出站预言机将有关资金存款的信息发送到一个地址。出站预言机将信息发送到解锁智能锁的机制。
-
基于合约的预言机
预言机区块链的另一个突出例子是基于合约的预言机。基于合约的预言机专为单个智能合约使用而定制。因此,如果个人想要部署各种智能合约,他们将需要开发相关数量的基于合约的角色。维护它们的高成本和时间要求是与特定合约预言机相关的最突出的挫折。
必须从不同来源提取数据的公司可能会在特定合同的预言机中发现不切实际的问题。但是,可以根据特定的用例为特定的智能合约设计预言机。最重要的是,开发人员在根据他们的特定要求 定制智能合约预言机方面具有良好的灵活性。
-
集中式和分散式预言机
集中式预言机由单个实体控制,并作为智能合约的唯一信息提供者。很明显,利用特定的信息来源可能会带来巨大的风险。合约的效率很大程度上取决于控制预言机的实体。
此外,不良代理的任何恶意干预都可能对智能合约产生直接影响。随后,中心化形式的预言机智能合约最重要的问题是单点故障。因此,中心化的预言机会降低合约对攻击和漏洞的弹性。
另一方面,去中心化的预言机有着相似的目标,就像公共区块链一样,专注于避免交易对手风险。去中心化的预言机可以提高提供给智能合约的信息的可靠性。如何?去中心化的预言机不依赖于单一的事实来源,多个预言机必须参与确定数据的有效性和准确性。因此,去中心化的预言机也因其功能而值得称为“共识预言机”。
最后的话
由于无法访问外部数据,区块链技术仍在努力寻找主流应用。因此,通过智能合约预言机向区块链和智能合约提供外部数据的可靠机制可以提供有希望的答案。区块链预言机帮助智能合约根据用例访问外部的真实信息。
因此,预言机可以扩大在许多实际应用中实施区块链的范围。同时,不同类型的智能合约预言机展示了如何根据您的需求设计它们。