java混淆工具proguard_java代码混淆(使用 ProGuard 工具)

参考文章:bash

ProGuard简介

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

主要流程以下:优化

ProGuard 会对输入的 JAR 文件按照压缩、优化、混淆、预验证的顺序依次进行处理,最后获得输出 JAR 文件;

ProGuard 使用依赖类库(Library jars)来辅助对 Input jars 类之间的依赖关系进行解析,可是依赖类库自己不会被处理,也不会被包含到 Output jars 中。

下载ProGuard工具

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

下载地址:spa

https://sourceforge.net/projects/proguard/files/latest/download

f6f13faa0fb54a7ca8a1bb78.html

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

.net

f6f13faa0fb54a7ca8a1bb78.html

使用流程

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

f6f13faa0fb54a7ca8a1bb78.html

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

开发

效果展现

采用 JD-GUI 打开根据混淆输出的 JAR:input

f6f13faa0fb54a7ca8a1bb78.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值