[发明专利]实施不同类型的区块链合约的系统和方法在审
申请号: | 201980003884.7 | 申请日: | 2019-03-26 |
公开(公告)号: | CN111033468A | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 孙赫 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 艾佳 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实施 不同类型 区块 合约 系统 方法 | ||
本文提供了用于实施区块链合约的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。所述方法之一包括:获取区块链合约的字节码,其中字节码包括指示区块链合约的类型的指示符;至少基于指示符确定与类型相对应的虚拟机;以及触发所确定的虚拟机以执行区块链合约。
技术领域
本申请一般涉及用于实施不同类型的区块链合约的方法和设备。
背景技术
区块链通过将数据保存在彼此之间具有先后关系的一系列数据区块中而以去中心化方式提供数据存储。区块链由节点网络维护并更新,所述节点也用于验证数据。最近,区块链已经扩展为提供用于执行区块链合约(例如,智能合约)的框架,所述区块链合约包括以代码行编写的用户之间的合约条款。区块链合约可以是一种计算机协议,其旨在以数字方式促进、验证或施行合约的谈判或履行。为了处理区块链合约,区块链网络的每个节点运行对应的虚拟机(VM)并执行相同的指令。VM是基于提供物理计算机功能的计算机架构的计算机系统的软件仿真。在区块链背景下的VM可以理解为设计为作为区块链合约的运行环境运行的系统。
目前,每个区块链系统通常支持一种VM和相应的编程语言。例如,以太坊(Ethereum)支持需要以solidity(面向合约的编程语言,用于编写由EVM实施的区块链合约)编程的以太坊虚拟机(EVM)。以太坊区块链系统不支持诸如c++、Java、Python等其他编程语言的合约语言。这阻止了以其他编程语言编写的区块链合约的接受,并拒绝了尚未掌握solidity语言的用户。这种缺陷抑制了创新,并限制了区块链系统的应用。
发明内容
本文的不同实施例包括但不限于用于实施不同类型的区块链合约的系统、方法和非暂态计算机可读介质。
根据一些实施例,一种计算机实现的用于实施区块链合约的方法包括:获得区块链合约的字节码,其中,字节码包括指示区块链合约的类型的指示符;至少基于指示符来确定与类型相对应的虚拟机;以及触发所确定的虚拟机以执行区块链合约。
根据一个实施例,获得区块链合约的字节码包括:从客户端设备获得区块链合约的字节码,其中,字节码是从区块链合约的源代码编译的,源代码包括指示符。
根据另一实施例,获得所述区块链合约的字节码包括:从客户端设备获得区块链合约的源代码,源代码包括指示符;以及编译源代码以获得区块链合约的字节码。
根据另一实施例,获得所述区块链合约的字节码包括:从客户端设备获得用于执行区块链合约的原始字节码,其中,原始字节码是从用于执行区块链合约的原始源代码编译的;以及将指示符添加至原始字节码以获得区块链合约的字节码。
根据另一实施例,获得区块链合约的字节码包括:从客户端设备获得用于执行区块链合约的原始源代码;编译原始源代码以获得原始字节码;以及将指示符添加至原始字节码以获得区块链合约的字节码。
根据一些实施例,指示符对应于区块链合约的字节码的第一字节。
根据其他实施例,区块链合约的类型为solidity合约或者原生合约。
根据其他实施例,类型与编程语言相关联。
根据其他实施例,编程序言包括c++、java、solidity或者python;与c++相对应的虚拟机为GNU编译器集合(GCC);与Java相对应的虚拟机是Java虚拟机(JVM);与solidity相对应的虚拟机是以太坊虚拟机(EVM);以及与python相对应的虚拟机是python虚拟机(PVM)。
根据一些实施例,一种用于实施区块链合约的系统包括:一个或多个处理器;以及一个或多个非暂态计算机可读存储器,其耦接至一个或多个处理器并且配置有可由一个或多个处理器执行的指令,以使该系统执行操作,所述操作包括:获得区块链合约的字节码,其中,字节码包括指示区块链合约的类型的指示符;至少基于指示符来确定与类型相对应的虚拟机;以及触发所确定的虚拟机以执行区块链合约。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980003884.7/2.html,转载请声明来源钻瓜专利网。