[发明专利]实施不同类型的区块链合约的系统和方法在审
申请号: | 201980003884.7 | 申请日: | 2019-03-26 |
公开(公告)号: | CN111033468A | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 孙赫 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 艾佳 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实施 不同类型 区块 合约 系统 方法 | ||
1.一种计算机实现的用于实施区块链合约的方法,包括:
获得区块链合约的字节码,其中,所述字节码包括指示所述区块链合约的类型的指示符;
至少基于所述指示符来确定与所述类型相对应的虚拟机;以及
触发所确定的虚拟机以执行所述区块链合约。
2.根据权利要求1所述的方法,其中,获得所述区块链合约的所述字节码包括:
从客户端设备获得所述区块链合约的所述字节码,其中所述字节码是从所述区块链合约的源代码编译的,所述源代码包括所述指示符。
3.根据权利要求1所述的方法,其中,获得所述区块链合约的所述字节码包括:
从客户端设备获得所述区块链合约的源代码,所述源代码包括所述指示符;以及
编译所述源代码以获得所述区块链合约的所述字节码。
4.根据权利要求1所述的方法,其中,获得所述区块链合约的所述字节码包括:
从客户端设备获得用于执行所述区块链合约的原始字节码,其中所述原始字节码是从用于执行所述区块链合约的原始源代码编译的;以及
将所述指示符添加至所述原始字节码以获得所述区块链合约的所述字节码。
5.根据权利要求1所述的方法,其中,获得所述区块链合约的所述字节码包括:
从客户端设备获得用于执行所述区块链合约的原始源代码;
编译所述原始源代码以获得原始字节码;以及
将所述指示符添加至所述原始字节码以获得所述区块链合约的所述字节码。
6.根据前述任一权利要求所述的方法,其中,所述指示符对应于所述区块链合约的所述字节码的第一字节。
7.根据前述任一权利要求所述的方法,其中,所述区块链合约的类型为solidity合约或者原生合约。
8.根据前述任一权利要求所述的方法,其中,所述类型与编程语言相关联。
9.根据权利要求8所述的方法,其中:
所述编程序言包括c++、java、solidity或者python;
与c++相对应的所述虚拟机为GNU编译器集合GCC;
与Java相对应的所述虚拟机是Java虚拟机JVM;
与solidity相对应的所述虚拟机是以太坊虚拟机EVM;以及
与python相对应的所述虚拟机是python虚拟机PVM。
10.一种用于实现区块链合约的系统,包括:
一个或多个处理器;以及
一个或多个计算机可读存储器,耦接至所述一个或多个处理器并且其上存储有指令,所述指令能够由所述一个或多个处理器执行以执行权利要求1至9中的任一项所述的方法。
11.一种用于实施区块链合约的装置,包括用于执行权利要求1至9中的任一项所述的方法的多个模块。
12.一种计算机实现的用于实施区块链合约的方法,包括:
生成区块链合约的字节码,其中,所述字节码包括指示所述区块链合约的类型的指示符;以及
将所述区块链合约的所述字节码传送至区块链节点,以使所述区块链节点基于所述指示符触发与所述类型相对应的虚拟机从而执行所述区块链合约。
13.根据权利要求12所述的方法,其中,生成所述区块链合约的所述字节码包括:
编译所述区块链合约的源代码以获得所述区块链的字节码,所述源代码包括所述指示符。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980003884.7/1.html,转载请声明来源钻瓜专利网。