[发明专利]一种Java代码的混淆方法、恢复方法及其装置在审

专利信息
申请号: 201711408742.8 申请日: 2017-12-22
公开(公告)号: CN108170433A 公开(公告)日: 2018-06-15
发明(设计)人: 高文涛;蒋纪匀 申请(专利权)人: 上海你我贷互联网金融信息服务有限公司
主分类号: G06F8/41 分类号: G06F8/41;G06F8/30;G06F21/14
代理公司: 北京德恒律治知识产权代理有限公司 11409 代理人: 章社杲;卢军峰
地址: 200941 上海市宝*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 混淆 规则文件 编译 文件格式规范 规则存储 第三方 运行时 打包 类库 恢复 灵活 配置
【说明书】:

发明公开了一种Java代码的混淆方法、恢复方法及其装置,该Java代码的混淆方法包括:定义混淆规则,以及将混淆规则存储在混淆规则文件中;根据混淆规则,对Java类文件进行混淆,获得混淆的Java类文件;将混淆的Java类文件和混淆规则文件打包成JAR文件。本发明通过定义混淆规则,灵活地配置哪些Java类文件需要混淆,此外,混淆的Java类文件还实现了混淆细节,从而防止被反编译,以及混淆后的Java类文件依然符合Java类文件格式规范,能够参与编译,而且不会造成Java程序依赖的其他第三方框架和类库运行时的错误。

技术领域

本发明涉及计算机安全领域,具体来说,涉及一种Java代码的混淆方法、恢复方法及其装置。

背景技术

源代码作为科技公司的核心资产应当被严格保护起来,以防他人窃取。虽然绝大多数公司都有一系列安全措施杜绝源代码泄露,但是Java程序由于其自身特点,存在源代码被泄露的风险。Java编译器将源代码编译后生成Java虚拟机可以执行的字节码,并以特定的文件格式和内容布局将字节码存储在Java类文件中。Java反编译工具可以读取Java类文件的内容,从而反向编译出Java程序的源代码。

对于做系统输出或者运营公有云服务的科技公司来说,Java程序是部署在客户的计算机环境,或者第三方公有云平台(例如,阿里云,腾讯云等)。因此,如何防止客户未经授权传播Java程序,或者黑客窃取Java程序,进而反编译Java类文件导致源代码细节泄露,是一个亟待解决的问题。

目前防止反编译的技术主要分为两种:命名混淆技术和Java类文件加密技术,具体地:

命名混淆技术是通过更改Java程序中的变量名、方法名等方式,降低代码可读性,增大阅读反编译后代码的难读。但本质上并没有解决问题,通过仔细阅读反编译后的代码,还是能够理解程序的实现细节;

类文件加密技术是通过使用加密算法,将Java类文件内容全部加密的方式来阻止反编译。该方法从本质上解决了反编译的问题,但同时带来其他问题。首先,加密后的类文件不符合Java类文件格式规范,不是一个合法的Java类文件。如果其他Java类在编译时期依赖这个类,Java编译器因无法解析加密后的Java类文件而报错,导致该方法不能用于Java类库的加密。其次,很多第三方框架和类库会在程序启动或者运行时动态地读取Java类文件。如果Java程序使用了这些第三方框架和类库,由于Java类文件被加密,导致运行时出错。

针对相关技术中的问题,目前尚未提出有效的解决方案。

发明内容

针对相关技术中的问题,本发明提出一种Java代码的混淆方法、恢复方法及其装置,其可以灵活地配置混淆规则,从而决定哪些Java类需要混淆,混淆后的Java类文件依然能够参与编译,而且不会造成其他第三方框架和类库运行时的错误。

本发明的技术方案是这样实现的:

根据本发明的一个方面,提供了一种Java代码的混淆方法。

该Java代码的混淆方法包括:定义混淆规则,以及将混淆规则存储在混淆规则文件中;根据混淆规则,对Java类文件进行混淆,获得混淆的Java类文件;将混淆的Java类文件和混淆规则文件打包成JAR文件。

根据本发明的一个实施例,根据混淆规则,对Java类文件进行混淆,获得混淆的Java类文件包括:根据混淆规则,确定需混淆的Java类文件;将需混淆的Java类文件中类方法的代码段进行混淆,从而获得混淆的Java类文件。

根据本发明的另一方面,提供了一种Java代码的恢复方法。

该Java代码的恢复方法包括:将恢复算法写入动态库,将动态库植入到Java程序运行的操作系统中;以及调用指定的类加载器,以及通过指定的类加载器调用动态库中的恢复算法,从而恢复混淆的Java类文件。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海你我贷互联网金融信息服务有限公司,未经上海你我贷互联网金融信息服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711408742.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top