混淆器工具的使用

最近工作中需要使用到混淆器这个加混淆的工具,现在总结一下这个工具的使用方法。
混淆器官方网站地址是http://proguard.sourceforge.net/

由于混淆器这个工具配置信息比较多,所以有时间在使用的时候一定要仔细阅读一下
http://proguard.sourceforge.net/手册/introduction.html
这个页面的内容,里面会很多配置的参数有详细的说明
下载的地址在http://sourceforge.net/projects/proguard/files/

如下图

混淆器工具的使用“> </p> <p> <br/> </p> <p>目前的版本到5.0 beta版,但是稳定版本是在4.11版本,将5.0 beta版本下载以后<br/>在解压缩下的文件夹下应该就有自由这个文件夹了,如果没有的话就需要自己编译一下,具体编译方法,需要到构建文件夹下,执行一下构建。sh这个sh文件即可<br/> <br/>找到一个jar包,然后进入到自由文件,发现这下面有3个jar包,分别是<br/> <br/> proguard.jar ,命令行的jar包,需要结合.pro文件作为配置文件来执行相应的命令<br/> proguardgui.jar 显示界面的jar包,可以图形化的生成混淆的jar包,具体运行方法,,执行项目目录下的bin/proguardgui。sh这个文件,出现图形化界面,然后再一步一步的操作<br/> retrace.jar ,这个暂时没有看<br/> <br/>现在测试一下混淆器。jar这个jar包的使用方法,在项目目录下有个例子这个文件夹,里面有很多。箴文件,其实就是对于要生成的各种混淆的程序的配置文件,目前比较火的肯定是android的应用加混淆了,现在android应用加混淆的功能本身已经集成到adt中了,但是如果我们撇开adt直接使用混淆器。jar混淆jar包。</p> <p> <br/> </p> <p> <强>一首先你需要有一个jar包</强> </p> <p> android的apk应用编译完成的对于虚拟机可执行的文件是敏捷文件,这里需要使用一个dex2jar的工具将敏捷转换成jar包,再在自由这个文件夹下面建立一个本文件夹和填词文件夹,然后将前面用dex2jar生成的jar包拷贝到本这个文件夹下面,然后将这个jar包解压缩到一个本文件下的一个<br/>名字为类的文件夹<br/> <br/> <br/> <强>二将项目目录下的例子文件夹下的android。箴拷贝到自由目录下</强> <br/>前面为何要将要混淆的jar包解压缩到这类个文件夹下呢,打开android。箴这个文件后就知道答案了</p> <p> <br/> -injars bin/classes ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,//表示要混淆的类文件夹<br/> -injars libs ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,//表示混淆的类文件夹需要引用的外部库,其是也是一个一个jar包<br/> -outjars bin/classes-processed.jar ,,,,,,,,,,,,,,,,,,,//输出的混淆后的jar包<br/> <br/>表示这个敏捷依赖的android。jar包,这个要根据你编译这个敏捷使用的sdk来选择相应的外部jar包的<br/> -libraryjars/root/android/adt - bundle - linux - x86_64 - 20131030/sdk/平台/android-19/android。jar <br/>显示出来混淆的过程文件的选项<br/> -printmapping bin/classes-processed。地图<br/>后面有很多跟安卓应用相关的混淆规则,这里不再一一赘述了<br/> <br/> <强>三执行命令</强> <br/> root@ubuntu:/home/混淆器/proguard5.0beta2/lib # java jar proguard.jar @android。箴<br/>混淆器,5.0版本beta2 <br/>阅读程序目录(/home/混淆器/proguard5.0beta2/lib/bin/类]<br/>阅读程序目录(/home/混淆器/proguard5.0beta2/lib/libs) <br/>阅读库jar[/根/android/adt - bundle - linux - x86_64 - 20131030/sdk/平台/android-19/android。jar) <br/>准备输出jar (/home/混淆器/proguard5.0beta2/lib/bin/classes-processed。jar) <br/>,复制的资源项目目录(/home/混淆器/proguard5.0beta2/lib/bin/类]<br/>,复制的资源项目目录(/home/混淆器/proguard5.0beta2/lib/libs) <br/>在/home/Proguard/proguard5.0beta2/lib/bin/文件夹下面看,出现加过混淆的jar包如下图</p> <p> <img src=混淆器工具的使用