[发明专利]一种智能合约虚拟机实现方法有效
申请号: | 201710129305.6 | 申请日: | 2017-03-06 |
公开(公告)号: | CN106951307B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 钱德君 | 申请(专利权)人: | 钱德君 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06Q10/10 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200000 上海市普*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 智能 合约 虚拟机 实现 方法 | ||
1.一种智能合约虚拟机实现方法,其特征在干,包含:
所述智能合约虚拟机为一个以太坊虚拟机,所述以太坊虚拟机是一个带有256字节的机器字的以栈为基础的虚拟机;智能合约基于量子链系统,能够运行在以太坊上,并且执行所述智能合约虚拟机;
所述量子链系统中包含三种与所述智能合约虚拟机相关的操作码,分别为OP_EXEC操作码、OP_EXEC_ASSIGN操作码、OP_TXHASH操作码;
所述OP_EXEC操作码,用于触发一个特殊的交易处理,并且将执行用于传递的所述以太坊虚拟机的字节码;
所述OP_EXEC_ASSIGN操作码,用于触发所述OP_EXEC操作码执行的处理,并且传递合同地址和数据给所述智能合约,传递所述数据时执行所述智能合约的字节码,所述OP_EXEC_ASSIGN操作码能够将给定的资金传递给所述智能合约;所述数据在所述智能合约虚拟机中表示为CALLERDATA;
所述OP_TXHASH操作码,用于协调帐本抽象层的剩余部分,并且当前执行交易的交易ID哈希值也被压入栈中;
包含对所述OP_EXEC操作码与所述OP_EXEC_ASSIGN操作码的输出脚本的特殊处理,以使所述智能合约的立即执行能够融入到区块链中;所述特殊处理包含的过程为:当交易中的脚本检测到所述OP _EXEC操作码或所述OP_EXEC_ASSIGN操作码,在交易被放置到区块链网络中后由区块链网络的所有节点进行执行;在所述特殊处理的背景下,比特币的脚本语言作为一种将所述数据传送给所述智能合约虚拟机的一种方式;当所述智能合约虚拟机执行所述OP_EXEC操作码或所述OP_EXEC_ASSIGN操作码时,所述智能合约虚拟机在自己的状态数据库里改变状态,即在以太坊上执行一个合约;
所述OP_EXEC操作码和所述OP_EXEC_ASSIGN操作码的交易输出是可以消费的,当所述交易输出的代码发送资金到另一个合约或者另一个公钥哈希值地址,所述OP_EXEC_ASSIGN操作码的输出通过合约被消费;所述OP_EXEC操作码的输出被消费,当任何时候所述智能合约使用自杀操作时,会将自己从区块链中移除;
构建气体模型,用于衡量所述以太坊虚拟机操作码的执行的价值,每个交易要花费一定量的所述气体模型中气体;在交易完成后,剩余的气体数量会被返回给发送的人,当在合约中执行的气体的数量超过合约需要的数量,那么交易的状态以及动作会被恢复;状态被恢复,交易的气体也已被消耗;气体的详细条目分为GasLimit与GasPrice;GasLimit用于记录在合约执行中消耗的气体数量;GasPrice用于记录每个气体单元的精确价格;合约执行中最大量子花费等于GasLimit与GasPrice进行相乘。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于钱德君,未经钱德君许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710129305.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种吸雾板
- 下一篇:新型冷却型节能吸附干燥机