<返回更多

Java混淆器

2019-10-16    
加入收藏

在脑海中假想一下,在你苦苦经历 81 难,摸爬滚打研制的技术轮子,终于成型得以问世,遂打个 JAR 包投放于万网之中。可是没过几天,同样功能的轮子出现在你的眼前,关键是核心代码都一样,此时你的内心是否会像一万只草泥马奔腾而过呢?

面对此景,我们有没有办法,去混淆一些核心代码,来捍卫自己劳动成果呢?

作为臣服于 JAVA 的子民们,一切又都是那么的幸福,诸多开源的轮子帮你解决了这个问题,今天不妨尝试用一用 ProGuard 这款轮子。

ProGuard 是一个压缩(shrink)、优化(optimize)和混淆(obfuscate) Java 字节码文件的免费的工具。它可以删除无用的类、字段、方法和属性,可以删除没用的注释,最大限度地优化字节码文件。它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。常常用于Android 开发用于混淆最终的项目,增加项目被反编译的难度——摘自百度百科。

Java混淆器

 

 

如官方图示(看不清,懵懂就行)

1. 工欲善其事必先利其器

下载最新版的 ProGuard,然后解压,进入到 bin 目录,windows 下直接双击 proguardgui.bat 即可,而 mac Os 下控制台运行 proguardgui.sh 即可。

下载地址:https://sourceforge.net/projects/proguard/files/latest/download

 

Java混淆器

 

 

本次演示是在 Mac Os 下,控制台输入 sh proguardgui.sh。ProGuard 运行启动成功的界面如下。

Java混淆器

 

 

2. 工具而已,用就行了

Java混淆器

 

 

在 Input/Output 中,Add input 选择要混淆的 JAR 包,注意一定要添加待混淆的 JAR 包依赖的所有类库,Add output 指定输出文件名(例如 a.jar);压缩(Shrinking)和优化(Optimization)不是本次的重点,略过;Obfuscation 中有很多混淆规则,可以自行依据官网进行配置调整;最后选择 Process,点击右下角的 Process! 即可。

Java混淆器

 

 

成功操作界面会提示:Processing completed successfully!

3. 效果如何呢?

采用 JD-GUI 打开根据混淆输出的 JAR,效果貌似像那么回事儿。

Java混淆器

 

 

保护你劳动成果的方式有很多种,本次 2 分钟简单的分享,只是让你们知道有 ProGuard 这款技术轮子存在,有太多的细节需要去实践,大家可以按需,自行按照官网进行深入使用。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>