[发明专利]一种基于智能合约的预言机调用过程实现方法及装置在审
申请号: | 202011606525.1 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112650605A | 公开(公告)日: | 2021-04-13 |
发明(设计)人: | 邱炜伟;李伟;黄方蕾;张珂杰;胡麦芳 | 申请(专利权)人: | 杭州趣链科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/52;G06F21/53 |
代理公司: | 深圳智汇远见知识产权代理有限公司 44481 | 代理人: | 艾青;牛悦涵 |
地址: | 310051 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 智能 合约 预言 调用 过程 实现 方法 装置 | ||
本发明公开了一种基于智能合约的预言机调用过程实现方法及装置,方法包括:获取原始交易的预言机调用事件;预言机调用事件包括:预言机调用请求、请求标识,以及原始交易的智能合约的智能合约地址,请求标识基于预言机调用请求生成且全局唯一;在原始交易写块时,将预言机调用事件发送给可信执行环境模块;启动一个定时器并向外部发送基于预言机调用请求的数据获取请求;若在定时器走完前收到外部对数据获取请求的响应,则构造一笔第一回调交易并发送给执行器,以使执行器执行第一回调交易,进而执行原始交易的智能合约的回调逻辑。本发明实施例保证了区块链执行交易的速度,交易执行效率高,且合约代码编写简单。
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于智能合约的预言机调用过程实现方法及装置。
背景技术
区块链的智能合约作为一个沙箱执行环境,能够有效的执行用户的逻辑代码,并限定一些可能导致执行结果不一致的行为,因此在区块链上执行合约的功能就相对很受限,很难和外界交互。预言机是一种将区块链外信息写入区块链内的机制,该机制很好地解决了区块链的智能合约难以与外界交互的技术问题。
现有技术中采用同步等待的方式进行预言机的调用,即对预言机调用后等待结果的返回,直到结果返回或者超时才进行下一步的处理。也就是说,在等待的过程中程序是阻塞的,不执行任何操作,程序只有等到返回结果才能继续往后执行。
由于使用预言机对外部数据请求过程(也即预言机调用后的等待过程)的耗时是不确定的,因此现有技术中的预言机调用方式会严重影响到区块链执行交易的速度,交易执行效率低。现有技术中采用的预言机同步调用方式需要用户自己编写预言机调用请求、发起数据获取请求、接收请求结果、处理请求结果四部分的代码逻辑,所以合约代码编写复杂。
发明内容
本发明的实施例提供一种基于智能合约的预言机调用过程实现方法及装置,以解决现有技术中区块链执行交易的速度慢、交易执行效率低、以及合约代码编写复杂的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
本发明实施例公开了一种基于智能合约的预言机调用过程实现方法,包括:由执行器执行的请求调用预言机的步骤和由可信执行环境模块执行的预言机回调的步骤,其中,
所述请求调用预言机的步骤包括:
获取原始交易的预言机调用事件;所述原始交易为含有请求预言机服务的交易,所述预言机调用事件包括:预言机调用请求、请求标识,以及所述原始交易的智能合约的智能合约地址,所述请求标识基于所述预言机调用请求生成且全局唯一;
在所述原始交易写块时,将所述预言机调用事件发送给所述可信执行环境模块;
所述预言机回调的步骤包括:
启动一个定时器并向外部发送基于所述预言机调用请求的数据获取请求;
若在所述定时器走完前收到外部对所述数据获取请求的响应,则构造一笔第一回调交易并发送给所述执行器,以使所述执行器执行所述第一回调交易,进而执行所述原始交易的智能合约的回调逻辑;所述第一回调交易包括请求结果和与所述请求标识对应的相关请求标识。
可选地,在本发明实施例的一种具体实施方式中,所述预言机回调的步骤,还包括:
若在所述定时器走完时未收到外部对所述数据获取请求的响应则构造一笔第二回调交易并发送给所述执行器,以使所述执行器执行所述第二回调交易;所述第二回调交易包括超时信息和与所述请求标识对应的相关请求标识。
可选地,在本发明实施例的一种具体实施方式中,获取原始交易的预言机调用事件,包括:
执行所述原始交易中智能合约的调用预言机方法,向本地方法发送所述预言机调用请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州趣链科技有限公司,未经杭州趣链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011606525.1/2.html,转载请声明来源钻瓜专利网。