[发明专利]一种安全的Java智能合约解释执行引擎及方法有效
申请号: | 201811636117.3 | 申请日: | 2018-12-29 |
公开(公告)号: | CN109710384B | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 邱炜伟;李启雷;李伟;梁秀波;尹可挺 | 申请(专利权)人: | 杭州趣链科技有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 邱启旺 |
地址: | 310012 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种安全的Java智能合约解释执行引擎及执行方法,通过在区块链平台中嵌入Java虚拟机,并通过JNI技术实现区块链状态操作,该引擎能够允许用户使用Java语言进行智能合约的开发,并能够实现区块链高级操作扩展。通过内嵌虚拟机的方式大大提高了智能合约的执行效率,实现了区块链节点和执行引擎的高效调用。执行方法包括如下步骤:(1)节点接收用户合约部署和调用请求,节点API模块对请求合法性和签名进行检查,然后将请求载荷通过JNI技术将Java字节码交由Java虚拟机进行解释执行。(2)解释执行结束之前,将智能合约对区块链世界状态的操作集合提交并应用。本发明重新实现了Java虚拟机,解决了原有JCEE引擎远程调用导致的性能和安全问题。 | ||
搜索关键词: | 一种 安全 java 智能 合约 解释 执行 引擎 方法 | ||
【主权项】:
1.一种安全的Java智能合约解释执行引擎,其特征在于,包括如下模块:(1)定制的Java虚拟机模块,其特征是:仅支持解释执行,不会对代码进行动态优化;精简了包括文件、网络、硬件信息访问、随机数值、日期时间这些会导致执行结果差异的功能;实现了严格一致的数学与大整数库;实现了平台无关的基本类型类。(2)API模块,负责接收外部用户发起的部署调用请求。(3)安全检查模块,负责对用户合约字节码进行预检查,对用户代码中危险操作进行防御性检查。(4)状态存储模块,为Java虚拟机提供JNI接口,允许Java虚拟机能够操作区块链状态,以实现智能资产的操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州趣链科技有限公司,未经杭州趣链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201811636117.3/,转载请声明来源钻瓜专利网。