[发明专利]一种Java应用程序加密方法及装置在审
申请号: | 201811494590.2 | 申请日: | 2018-12-07 |
公开(公告)号: | CN111291333A | 公开(公告)日: | 2020-06-16 |
发明(设计)人: | 杨晓锦;孙宁;乔阳 | 申请(专利权)人: | 中国移动通信集团陕西有限公司;中国移动通信集团有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/53;G06F21/60 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 710075*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 java 应用程序 加密 方法 装置 | ||
1.一种Java应用程序加密方法,其特征在于,包括:
确定待加密的Java应用程序的常量池中的第一Tag值序列,对所述第一Tag值序列中的Tag值进行重新排序得到Tag值排序不同的多个第二Tag值序列;
将所述多个第二Tag值序列替换所述第一Tag值序列,形成加密的Java应用程序。
2.如权利要求1所述的方法,其特征在于,还包括:
将所述第一Tag值序列与所述多个第二Tag值序列的映射关系写入授权文件;使得所述加密的Java应用程序在虚拟机中加载时从授权文件中读取所述映射关系将多个第二Tag值序列替换成所述第一Tag值序列。
3.如权利要求1或2所述的方法,其特征在于,所述将所述多个第二Tag值序列替换所述第一Tag值序列包括:
采用高级加密标准AES对所述多个第二Tag值序列进行加密;
将加密后的所述多个第二Tag值序列替换所述第一Tag值序列。
4.如权利要求3所述的方法,其特征在于,所述采用高级加密标准AES对所述多个第二Tag值序列进行加密包括:
获取所述Java应用程序运行环境的机器码,并基于所述机器码得到多个不同的干扰码和AES加密算法的密钥;
利用所述多个干扰码、机器码和AES加密算法的密钥对所述多个第二Tag值序列进行加密。
5.一种Java应用程序加密装置,其特征在于,包括:
排序模块,用于确定待加密的Java应用程序的常量池中的第一Tag值序列,对所述第一Tag值序列中的Tag值进行重新排序得到Tag值排序不同的多个第二Tag值序列;
加密模块,用于将所述多个第二Tag值序列替换所述第一Tag值序列,形成加密的Java应用程序。
6.如权利要求5所述的装置,其特征在于,还包括:
写入模块,用于将所述第一Tag值序列与所述多个第二Tag值序列的映射关系写入授权文件;使得所述加密的Java应用程序在虚拟机中加载时从授权文件中读取所述映射关系将多个第二Tag值序列替换成所述第一Tag值序列。
7.如权利要求5或6所述的装置,其特征在于,所述加密模块还用于采用高级加密标准AES对所述多个第二Tag值序列进行加密;将加密后的所述多个第二Tag值序列替换所述第一Tag值序列。
8.如权利要求7所述的装置,其特征在于,所述加密模块还用于获取所述Java应用程序运行环境的机器码,并基于所述机器码得到多个不同的干扰码和AES加密算法的密钥;利用所述多个干扰码、机器码和AES加密算法的密钥对所述多个第二Tag值序列进行加密。
9.一种Java应用程序加密装置,其特征在于,包括:
存储器,用于存储处理器所执行的指令;
处理器,用于执行存储器中存储的指令执行权利要求1-4中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1-4中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团陕西有限公司;中国移动通信集团有限公司,未经中国移动通信集团陕西有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811494590.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电力系统动态等值方法及装置
- 下一篇:一种秸秆回收利用装置