[发明专利]一种防止Java程序被反编译的方法有效

专利信息
申请号: 202010424628.X 申请日: 2020-05-19
公开(公告)号: CN112131536B 公开(公告)日: 2021-07-20
发明(设计)人: 蔡维德 申请(专利权)人: 北京天德科技有限公司;天民(青岛)国际沙盒研究院有限公司
主分类号: G06F21/14 分类号: G06F21/14
代理公司: 暂无信息 代理人: 暂无信息
地址: 102488 北京市房山区阎富*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 防止 java 程序 反编译 方法
【说明书】:

发明提出一种防止Java程序被反编译的方法,可以使Java程序安全运行,防止通过反编译被窃取源代码。方法内容涉及:(1)可执行文件远程加载;(2)可执行文件网络密文传输(3)随机密码(4)随机跳转链(5)反编译工具检查与禁用。

技术领域

本发明涉及Java源代码安全领域,特别涉及一种让Java程序可以安全运行,不会被反编译以窃取源码的方法设计。

背景技术

Java是一种面向对象编程的高级语言,活跃的Apache社区拥有最完善的技术框架,其高效、开源、易维护等特性成为大多项目的最佳选择。但也因为Java程序包容易被反编译的问题,许多非开源的商业软件在上线后被黑客恶意反编译,获取到源码后进行盗版使用,极大损害了软件开发者的利益,在源代码保护要求较高的项目中不占优势。

如何保证Java源码不被窃取,传统实现分两种方式。

第一种方案,给Java代码编译后得到class文件进行加密,客户获取的是一个密文的可执行JAR文件包,这样就能防止反编译工具反编译class文件。此方案并非绝对安全,由于是一个密文的JAR文件包,那么客户需要运行程序,必须得到对应的解密密码,获取密码有两种方式:

(1)把密码隐藏在JAR文件包里面的一个类加载器中,当客户运行JAR文件时,类加载器解密class文件得出正确的字节流,再生成类对象。

(2)在方案(1)上继续改进,将密码存放在远程服务器上,当类加载器运行时从远程服务上下载密码进行解密。

以上两种方案,都可以对类加载器进行反编译或者重写截获密码,一旦获取到密码,便可以对整个JAR文件进行反编译得到源代码。

第二个方案是对JAR文件进行代码混肴,此方案并没有对防止反编译起到任何作用,相反此方案可以允许被反编译,只是反编译出来的源代码是混乱的,不容易读懂,但是对于资深的技术专家也可以轻松通过重构获取源代码。

以上的两种方案虽然能在一定程度上阻碍了反编译操作,但对于技术专家或者黑客仍然没有一点效果。

因此本发明提出一种防止Java程序被反编译的方法,让Java程序可以安全地运行,同时保护程序的源代码不被其他人窃取。

发明内容

本发明提出一种防止Java程序被反编译的方法,主要解决Java class文件被反编译导致源代码泄露的问题。

本发明的方法步骤如下:

(1)需要运行软件一方作为客户端,软件的可执行文件如JAR包、class文件等保存在服务端;

(2)客户端启动后向服务端发送程序启动请求,服务端生成类加载器实例并返回给客户端;

(3)客户端启动类加载器,并激活类加载器中的反反编译程序,进行反编译工具检查与禁用,例如:

(3a)禁用JVM(Java Virtual Machine,Java虚拟机)内存监控,防止通过恶意拷贝内存文件方式获取可执行文件进行反编译;

(3b)禁止反编译工具运行;

(3c)解析客户端程序是否被恶意改写或存在恶意代码,若有则中断客户端的启动;

(4)客户端向服务端发送获取密码请求,该密码用于解密可执行文件,为一次性临时密码,由服务端生成;

(5)服务端向客户端发送随机跳转类Goto-n,该跳转类可能指向下一个跳转类,也可能包含用于解密可执行文件的密码;

(6)客户端接收跳转类,若该跳转类指向下一个跳转类,则继续向客户端发送跳转请求并重复步骤(5),若该跳转类包含密码数据,则进入下一步;

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

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京天德科技有限公司;天民(青岛)国际沙盒研究院有限公司,未经北京天德科技有限公司;天民(青岛)国际沙盒研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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