什么是区块链预言机

区块链外信息写入区块链内的机制,一般被称为预言机。

这样简单的一句总结里面有很多概念需要解释,为了理解什么是区块链预言机、以及我们为什么需要它,让我们回顾什么是区块链以及其核心特性之一:去中心化。

1 什么是区块链预言机?

区块链外信息写入区块链内的机制,一般被称为预言机。

这样简单的一句总结里面有很多概念需要解释,为了理解什么是区块链预言机、以及我们为什么需要它,让我们回顾什么是区块链以及其核心特性之一:去中心化。

2 去中心化带来了什么问题?

什么是区块链

区块链随着比特币的诞生而诞生,首次出现于比特币的白皮书中,用于存储比特币的交易记录。在比特币网络中,根据时序将多条交易记录整理集中存储以形成区块,块与块之间采用哈希值的方式连接形成链式结构,我们将这种结构称为区块链;多个节点通过P2P网络共同维护一条区块链,使得这种链式结构具有去中心化、不可篡改、可追溯等特性。后续的以太坊等项目也都基于这种链式结构。 在这里插入图片描述 这里我们抛开数字货币,把区块链作为主角来看,我们可以更加容易的来理解区块链:区块链就是一个基于P2P网络的去中心化的分布式账本,以多个节点共同维护一份数据;那么从这个角度来看,比特币的区块链存储的「交易记录」也是数据,只是数据比较特别而已。

去中心化带来的问题

今天,我用 $3.58 买了一杯好喝的拿铁,店老板热情地把拿铁递给我。因为老板已经确认了交易完成并且之后这笔交易不会被撤销,他获得我支付的美元。换句话说,交易已经确定(finalized)。现金交易实现了对财产的即时确定性。 在这里插入图片描述

而区块链具有分布式账本的特性,要实现确定性,那么网络上的所有节点,都必须对相同的输入得到一致的结果:当分布式网络的节点看到Alice将 $3.58 发送给Bob,他要将Alice的账户减 去 $3.58并把Bob的账户加上 $3.58。网络上的每一个节点都可以很容易的复制这一操作,最终所有节点处于相同的状态。

但是事实并非如此简单?因为Alice需要发送基于当前BTC-USD或ETH-USD汇率的可变金额到Bob。如在ETH生态系统下,我们可以构造一个合约,通过API获取当前ETH-USD汇率,然后把$3.58对应的ETH数量发送给Bob;当分布式网络中的其他节点区验证这笔交易,他们也会调用这个API,而之后的调用,可能由于价格已经变化、或被黑客攻击等原因,导致其他节点得到不同的结果,这意味着可能没有一个节点就区块链的实际状态达成一致。 在这里插入图片描述 <center>如果区块链是非确定性的,则不可能达成共识</center> <p/>

正因为如此,区块链网络都被有意设计为确定性的。如果你将不确定的API引入区块链基础设施中,将无法验证任何交易。一旦不确定的数据被报告给区块链,该数据将是区块链历史不可变的一部分。那么基于该数据的智能合约不仅没有执行其预期的任务,而且可能造成不可弥补的损害。

3 区块链上的先知——预言机

区块链的去中心化、不可篡改、可追溯等特性是我们跟踪链上行为的利器,但区块链无法主动获取链外数据。如果我们要将链下数据带到链上时,比如,获取BTC-USD汇率以实现各种Defi应用,该怎么办呢?

首先你可能想到的一个简单直接的方案是使用一个可靠的外部信息源来处理。但是我们后退一步想:我们为什么要构造一个链?一个重要的原因不正是去中心化吗?而「中心化」正是问题所在,「中心化」就意味着单点风险,而经验告诉我们,保持中心化信息源的长期可靠和准确是非常困难的。

如何确保数据的安全可靠并准确传递到链上是预言机重要的挑战。

Synthetix 的预言机有一次报价错误,报出的韩元价格为正常价格的 1000 倍。该平台上一个交易机器人检测到这个错误后从中套利,获得了 1000 倍的收益,在一小时内获利超过 10 亿美元。无独有偶,bZx 协议也发生过预言机报价异常的事件。

Ares protocol 是波卡生态第一个去中心化跨链预言机服务协议,也是第一个实现数据链上验证的新一代预言机服务协议,并且首创为数据使用者因使用预言机数据遭受业务损失时开辟补偿通道。作为连接现实世界和区块链网络的基础设施建设者,面向 WEB3.0 时代的宏大愿景,为万链互联和数字经济发展提供安全可信的数据服务。

点赞 3
收藏 0
分享

0 条评论

请先 登录 后评论
Ares Protocol 技术社区
Ares Protocol 技术社区
波卡生态项目,专注substrate技术