预言机(Oracle)是什么?

当尼克萨博在1997年发表《在公共网络上确认关系并保证关系安全》一文后,智能合约(smart contract)的概念就诞生了,在他的设想中,智能合约减少了合同原则、第三方、或者他们的工具所施加的精神和计算的交易成本。搜索阶段、协商阶段、承诺阶段、执行阶段和裁定阶段构成了智能合约。

那么如何将区块链下的现实世界联系到区块链上,将商业逻辑、法律和其他规则建立在代码上以达到自动执行呢?

yyj1.jpg


为什么需要预言机(Oracle)

像以太坊、EOS这样的区块链网络没有直接的途径来获取链外的信息,所以也就没有办法获取和验证触发智能合约的条件,那么我们设想的智能合约自动执行法律文件、履行商务合同、进行防伪溯源和征信验证等所有应用领域的功能可能都无法实现。这就是需要预言机的时刻了,简单地说,区块链预言机,就是一个提供外部信息的平台。预言机自身也是一种智能合约,它允许区块链连接到任何现有的API,允许使用来自区块链的传统支付网络来进行支付,并允许智能合约和其他区块链的交互。

预言机提供了智能合约在合约条款得到满足时运行的必要条件,一些智能合同系统,包括建立在比特币等区块链上的,都是严格确定的;预言机作为一个提供外部信息的平台,提供了智能合约在合约条款得到满足时运行的必要条件,这些条件可以是与智能合约有关的任何东西:温度数据,支付完成,价格变化等。这些预言机是智能合约与外部进行数据交互的唯一途径。其目的是在区块链和互联网之间建立一道可信的数据网关,其目标是打破智能合约获取数据的束缚,在保证可信的情况下,使其具有访问互联网数据的能力;为保证所获数据的真实可信,预言机需要提供多种加密证明方法,构建可信环境。

预言机功能如何实现?

以太坊预言机可以在以太坊的DApps与Web APIs之间提供可靠连接,让基于智能合约的Dapp应用可信的地取得外部信息和数据。引用该智能合约,然后根据API文档中描述的方法进行相关的调用即可;如果某些组织利用以太坊技术搭建了自己的私有链或者联盟链,预言机在Github上提供数据服务的开源智能合约代码,通过自己部署后,一样可以像公有链一样调用;预言机提供了多种数据源服务器,包括Url访问、数据搜索引擎、区块链内容数据、IPFS文件访问等等,其中Url访问和区块链内容数据提供了基于TLSNotary的可信证明技术,也是常见的数据访问需求。国内的预言机项目有基于EOS的OracleChain,是EOS项目生态的重要部分。

yyj2.jpg


智能合约的触发和运行不能没有数据源;没有这种提供外部信息的平台,智能合约的实用性也会大打折扣。随着区块链网络的不断完善,现实应用场景不断开拓与细化,未来会产生越来越细致的新的智能合约类型,以及新的预言机结构。这些都会共同构建一个更加实用易用的区块链底层结构,让互联网和区块链之间深化融合,沟通更加便捷和简单。

0 个评论

要回复文章请先登录注册