一文详解区块链之预言机
WHAT:预言机是什么?
预言机,听上去像是预期类的应用或公链。然而,并不是。
预言机,是一种为区块链获得链外数据的机制、协议,包括获取其他区块链的数据以及传统互联网的数据。
WHY:为什么需要预言机?
区块链——信息孤岛
区块链是在互联网的基础上建立的分布式网络。然而,每一个分布式网络,是一个孤岛。
我们知道,区块链上的各种应用,都会产生很多数据,包括资金流数据、用户个人信息和用户使用DAPP的信息。
然而,每一个区块链智能本区块链上的数据,不能使用其他区块链的数据以及传统互联网的数据。
区块链是在互联网的基础上建立的分布式网络。然而,每一个分布式网络,是一个孤岛。
预言机——建立数据桥梁
预言机为区块链上的应用,取得来自其他区块链和传统互联网的数据,从而在区块链与区块链之间、区块链与互联网之间建立了数据桥梁。
预言机的工作,使区块链的DAPP开发者可以调用更多种类、更大规模、更多元化、更深入的数据资源。例如,DAPP开发者可以通过预言机调用微信公众号流量数据和内容信息,从而向DAPP应用者展示他们感兴趣的内容等。
预言机——为DAPP提供大数据环境
预言机的直接用户是公链上的DAPP。
DAPP可以向预言机发出请求,请求所需要的链外数据。
例如,一个链上借贷工具A,可以获得其他区块链、互联网金融的借贷数据,根据其他贷款产品的利率波动、动态的调整借贷工具A的利率。
例如,一个链上的去中心化交易所B,可以获得某外汇网上的数据,实际的调整去中心化交易所B中的汇率,一方面可以实时、动态、真实的反应数字货币的价格,另一方面,也可以使法币交易价格更好地反应汇率变化,减少用户在汇率波动中产生的损失。
预言机,通过为区块链与外界架设桥梁,使DAPP置身于一个大数据环境。真实的受益者是区块链的用户。
HOW:预言机是如何工作的?
以Chainlink预言机为例来说说预言机的工作机制。
链上工作
如上图,在这个区块链上,共有4种智能合约。其中,用户合约,是用户开发DAPP使用的智能合约,是数据的需求者。
而蓝色的三个合约,是Chainlink在区块链上部署的智能合约,包括声誉合约、订单匹配合约和聚合合约。
第一步:需求提交:Chainlink在工作时,用户合约具有数据需求时,向Chainlink发出数据请求。比如提出请求,需要调用比特币的交易数据,需要最近24小时的数据。
第二步:出价。Chainlink的声誉合约向用户合约出价。
第三步:数据请求。声誉合约收到用户合约的确认以后,向Chainlink预言机提交数据请求。
第四步:数据查询与提交:Chainlink的数据节点收到请求后,进行数据查询。然后将查询的结果提交给聚合合约。聚合合约对数据进行聚合,将最终的查询结果提交给用户合约。完成了用户的数据查询请求。
链外工作
在链下,Chainlink并不是中心化的,而是一个分布式结构,由众多节点组成,节点负责获取用户所需的各种数据。
Chainlink的节点中,由核心节点负责与区块链进行通讯,接受链上的数据请求以及返回查询结构。核心节点将每个数据任务划分为小的子任务再分配给节点进行数据查询。
Chainlink的节点可以独立收集脱链请求,并且返回给用户合约。Chainlink是一个去中心化预言,节点运营商可以自行添加软件扩展,通过外部适配器用户合约提供脱链的数据服务。
门限签名
门限签名是Chainlink的一种链外工作机制。在链上工作机制中,负责查询数据的节点将数据返回给聚合合约,由聚合合约对数据进行聚合,将查询结果进行统计和聚合再返回给用户合约。在Chainlink节点向聚合合约提交数据时,需要多次消耗手续费,这导致用户成本过高。
而门限签名机制,由一个Chainlink节点代替聚合合约,在链下接受其他节点的查询数据,并且进行聚合,然后将聚合后的数据结果一次性返回到链上,仅消耗一次手续费。
将链上多条数据传输转移至链上,提可以提高Chainlink预言机工作的效率,也可以为用户节省成本。
虽然在链上,但是门限签名仍然是分布式的,在参与查询的Chainlink节点中,需要有一定比例的节点进行签名,才可以生成一个有效签名,才可以完成数据查询。因此,门限签名通过签名机制来保证查询数据的去中心化和真实有效性。
微信掃描關注公眾號,及時掌握新動向
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場