[发明专利]一种Java代码加密方法及装置有效
申请号: | 201910575200.2 | 申请日: | 2019-06-28 |
公开(公告)号: | CN110309630B | 公开(公告)日: | 2023-05-30 |
发明(设计)人: | 顾凌云;王伟;冷健;毛靖文;马翔;蒋安维 | 申请(专利权)人: | 南京冰鉴信息科技有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/60 |
代理公司: | 常州佰业腾飞专利代理事务所(普通合伙) 32231 | 代理人: | 滕诣迪 |
地址: | 210003 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 java 代码 加密 方法 装置 | ||
1.一种Java代码加密方法,其特征在于,包括:
在JVM注册本地方法;
采用javah命令为N个C程序生成头文件,其中,每个所述头文件用于声明一个C函数,每个所述C程序实现各自头文件声明的函数,N为第一预设值,N≥1且为自然数;
将每个所述C程序编译成动态链接库文件,生成M个动态链接库,其中,M为第二预设值,M≥1且为自然数;
获取动态链接库加密方式,利用所述动态链接库加密方式对每个所述动态链接库进行加密,得到M个加密动态链接库;
调用所述M个动态链接库中与待调用的C函数匹配的C程序,对所述Java类文件进行加密,得到加密Java文件,其中,所述加密Java文件包括指定加密动态链接库的指定加密动态链接库信息,其中,所述指定加密动态链接库为指定动态链接库加密后得到的,其中,所述指定动态链接库为与所述待调用的C函数匹配的C程序所在的动态链接库。
2.根据权利要求1所述的方法,其特征在于,
获取所述加密Java文件,确定所述指定加密动态链接库信息,加载所述指定加密动态链接库;
获取动态链接库解密方式,利用所述动态链接库解密方式对所述指定加密动态链接库进行解密,得到指定动态链接库;
获取所述指定动态链接库中的与所述待调用的C函数匹配的C程序,对所述加密Java文件进行解密,得到所述Java类文件;
运行所述Java类文件。
3.根据权利要求2所述的方法,其特征在于,
所述获取动态链接库加密方式包括:通过各个动态链接库的Section文件,根据所述Section文件的偏移量和文件长度确定各个所述动态链接库加密方式;
所述获取动态链接库解密方式包括:通过各个动态链接库的Section文件,根据所述Section文件的偏移量和文件长度确定各个所述动态链接库解密方式。
4.一种Java代码加密装置,其特征在于,包括:
注册模块,用于在JVM注册本地方法;
生成模块,用于采用javah命令为N个C程序生成头文件,其中,每个所述头文件用于声明一个C函数,每个所述C程序实现各自头文件声明的函数,N为第一预设值,N≥1且为自然数;
编译模块,用于将每个所述C程序编译成动态链接库文件,生成M个动态链接库,其中,M为第二预设值,M≥1且为自然数;
第一加密模块,用于获取动态链接库加密方式,利用所述动态链接库加密方式对每个所述动态链接库进行加密,得到M个加密动态链接库;
第二加密模块,用于调用所述M个动态链接库中与待调用的C函数匹配的C程序,对所述Java类文件进行加密,得到加密Java文件,其中,所述加密Java文件包括指定加密动态链接库的指定加密动态链接库信息,其中,所述指定加密动态链接库为指定动态链接库加密后得到的,其中,所述指定动态链接库为与所述待调用的C函数匹配的C程序所在的动态链接库。
5.根据权利要求4所述的装置,其特征在于,
加载模块,用于获取所述加密Java文件,确定所述指定加密动态链接库信息,加载所述指定加密动态链接库;
第一解密模块,用于获取动态链接库解密方式,利用所述动态链接库解密方式对所述指定加密动态链接库进行解密,得到指定动态链接库;
第二解密模块,用于获取所述指定动态链接库中的与所述待调用的C函数匹配的C程序,对所述加密Java文件进行解密,得到所述Java类文件;
运行模块,用于运行所述Java类文件。
6.根据权利要求5所述的装置,其特征在于,
所述第一加密模块通过如下方式获取动态链接库加密方式:所述第一加密模块,具体用于通过各个动态链接库的Section文件,根据所述Section文件的偏移量和文件长度确定各个所述动态链接库加密方式;
所述第一解密模块通过如下方式获取动态链接库解密方式:所述第一解密模块,具体用于通过各个动态链接库的Section文件,根据所述Section文件的偏移量和文件长度确定各个所述动态链接库解密方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京冰鉴信息科技有限公司,未经南京冰鉴信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910575200.2/1.html,转载请声明来源钻瓜专利网。