荐读 | 预言机:区块链与外界沟通的桥梁

荐读 | 预言机:区块链与外界沟通的桥梁

整个过程都没有人为的干预,即便Alice和Bob是两个陌生人,也不会产生额外的信任成本。

1.3 预言机的应用场景

所有需要与链外数据交互的区块链应用都需要借助预言机,典型的应用场景有:

1) 加密资产衍生品交易平台

目前典型的加密资产衍生品交易平台有 dydx 等,允许用户做多或做空通证资产。智能合约需要从链外获取资产价格,来触发平仓、确定参与方的收益和损失等。

2) 非中心化运作的稳定通证

稳定通证是一类通过特定机制锚定其价值和价格的数字通证。根据价值支撑划分,稳定通证当前主要有法币锚、资产锚和内部锚三种模式。通过非中心化运作的稳定通证目前有DAI等。这些非中心化运作的稳定通证需要借助预言机来感知其自身的价格变化,进而作出相应的决策来稳定价格。

DAI 是 MakerDAO 平台通过抵押加密资产(目前主要是ETH)发行的稳定通证。MakerDAO 平台通过多个预言机获取抵押物和DAI的市场价格,在抵押物市场价格跌幅过大时可以作出警告和清算决策。

3) 借贷平台

基于区块链的借贷平台目前有ETHLend、SALT等,这些平台允许用户抵押加密资产来借贷法币或其他加密资产,与 DAI 类似,平台会借助预言机监控抵押物的保证金比率,在保证金不足时将会发出警告并触发清算程序。同时,预言机可以导入借款人的信用等级,进而确定相应的贷款利率。

4) 保险应用

基于区块链的保险应用目前有 Etherisc、HGS 等。用户在平台上可购买航空延误险、农作物保险等保险。预言机可以为这类事件引入外部数据源,以便智能合约根据协议对保险产品作出是否理赔的决策。

5) 赌场应用

基于区块链的赌场应用目前有 FunFair、Edgeless 等,通过智能合约保障游戏公平、即时安全支付,相比于传统中心化赌场具有较大优势。对非中心的赌场应用来说最重要的是不可预测、可验证的随机数输入。

传统的随机数产生方式是中心化的,随机数的具体数值与特定机器的物理状态有关。区块链上的随机数需要满足分布式的特点,在每个节点产生的随机数要具有一致性的随机性,传统方式无法满足这一要求,通过预言机可以实现从链外输入具有这种特性的随机数。

6) 非中心化的预测市场

非中心化的预测市场目前有 Augur、Gnosis 等项目,在体育赛事、总统竞选、通证价格变化等事件上可以做出预测,押注不同的结果预测。押注之后可以选择等待最终结果,也可以选择在二级市场提前交易“开奖券”。预言机将获取最终真实的结果,并根据此结果来计算盈亏。

7) 基于区块链的物联网应用

基于区块链的物联网应用,是将链外传感器信息通过预言机传到链上,让智能合约验证后触发下一步行为。

2

预言机的工作流程与类型

2.1 预言机的工作流程

预言机的主要作用是为智能合约提供可靠的外部数据,其核心价值是在可信的基础上,使区块链与外部世界连接起来。理想状态下预言机的工作流程如下:

1) 接受请求。预言机接收到用户合约(USER-SC Contract)发送的请求Req=(Src,τ,q),其中Src表示查询指定的数据源,τ表示时间点或时间段,q表示查询的内容。   

2) 获取数据:将查询内容q在时间τ发送到Src,进行查询;

3) 返回数据:一旦获得答案a,将a返回给智能合约使用。

荐读 | 预言机:区块链与外界沟通的桥梁

3

预言机实际应用中需要攻克的问题

预言机在实际应用进行设计时需要着重考虑以下三个要素:完整性(Integrity)、保密性(Confidentiality)、和可获得性(Availability)。 

完整性是指信息完整准确可靠,没有被有意无意地破坏、篡改。

保密性是指智能合约向预言机请求查询的内容不会被泄露出去。例如非中心化的保险业务,用户或许并不希望预言机透露自己的航班信息给全世界;再如非中心化的衍生品交易,用户也并不愿意透露自己的投资组合和操作策略。

可获得性是指通过预言机调取数据时,可以及时得到所需要的信息,包括可以实现抗审查(censorship-resistance)。

针对完整性,一般可通过多重数据源、多重预言机、声誉系统、可信执行环境(可信硬件)、真实性证明等方案加以解决。具体参见下文典型项目分析。

针对保密性,预言机节点使用公钥对查询请求进行加密,并对预言机做出信息流限制,仅仅在查询信息源时才去解密。

针对可获得性,非中心化的预言机可以有效解决。

4

典型项目分析

4.1 ChainLink

ChainLink 致力于打造高可靠性的分布式预言机网络。用户合约(USER-SC)发出查询请求,CHAINLINK-SC 为请求的事件分配适配器,适配器调用外部API并返回结果,CHAINLINK-SC 聚合相关响应并把一个最终结果反馈给USER-SC。

荐读 | 预言机:区块链与外界沟通的桥梁

4.2 Oraclize

Oraclize 是一个具有真实性证明的中心化预言机,目前支持以太坊(Ethereum)、Rootstock、R3 Corda、Hyperledger Fabric 和 EOS 等多个平台。

智能合约通过对 Oraclize 发布一个调用请求来获取数据,指定数据源和参数,Oraclize 根据请求获取数据后,利用 callback 函数返回结果。

Oraclize 认为非中心化预言机的解决方案具有效率低下、所有参与方都需要付费、耗费时间长等局限性。Oraclize 的思路是证明从源头获取的数据是真实的且未篡改的,类似于网络技术中, HTTPS 协议取代 HTTP,在客户端和服务器之间创建加密和验证通道,提供身份验证。

真实性证明可以通过硬件或软件的方案来加以解决,例如可信执行环境TEE(硬件)、可审计的虚拟机(软件)。

荐读 | 预言机:区块链与外界沟通的桥梁

DOS Network 是一个Layer-2 的预言机解决方案,由链上和链下两部分构成。智能合约指明合约需要的数据源以及数据类型,向链上系统合约发送一个预言机请求,接着该请求会被随机分配给一个链下工作组。工作组内的每个成员节点都会从指定的数据源获取数据并按照规定的类型和结构来解析。随后组内节点通过阈值密码学的方式对数据结果达到组内共识并且产生一个对共识结果的证明。经过组内共识的数据和相应的证明将会以一条交易的方式发回系统合约,并触发合约对提交组返回结果证明的验证。

DOS Network 认为基于声望来选择服务节点容易因“马太效应”造成中心化问题,因此采用随机的方法来选取预言机工作组合节点。DOS Network 基于可验证随机方程(VRF)和阈值密码学(Threshold Cryptography)的方式产生安全、无法被预测并且可以被公开验证的随机数,避免了声望系统的种种问题,对参与节点更加公平公正。

4.4 OracleChain

OracleChain 是基于 EOS 平台面向 EOS 生态的非中心化预言机平台。OracleChain 采用 PoRD(Proof-of-Reputation&Deposit,声誉和抵押证明)的双效机制,本质上是一种抵押保证金的声誉系统,奖励善意节点,惩罚恶意节点。

荐读 | 预言机:区块链与外界沟通的桥梁

荐读 | 预言机:区块链与外界沟通的桥梁

来源:Conflux中文社区

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月13日
下一篇 2020年1月13日

相关推荐