java混淆器 RetroGuard 免费提供源码 可运行jar文件 Java 代码编译后生成的 .class 中包含有源代码中的所有信息(不包括注释),尤其是在其中保存有调试信息的时候。所以一个按照正常方式编译的 Java .class 文件可以非常轻易地被反编译。反编译工具有很多种,其中非常强大的一种是 jad。 为了避免出现这种情况,保护开发者的劳动,又有一种叫做 Java 混淆器的工具被开发出来。Java 混淆器的作用是对编译好的代码进行混淆,使得其无法被反编译或者反编译后的代码混乱难懂。Java 混淆器也有很多种,其中比较强大的一种是 RetroGuard(只说比较强大是因为我对其功效还是有些怀疑的)。 这里我介绍一下 RetroGuard 的使用方法。 将下载的 .tar.gz 或者 .zip 文件解压。有用的只有 retroguard.jar 一个文件,其它的是源代码和文档。 RetroGuard 是针对 jar 文件做混淆的。使用之前需要先配置一下。可以手工编辑配置文件,更好的方法是使用 RetroGuard 提供的 GUI 工具来生成配置文件。使用方法如下: java -classpath retroguard.jar;xxx.jar;yyy.zip;... RGgui 然后在 GUI 的 Wizard 中设置各个参数。上面的 -classpath 中应该列出要混淆的 jar 所依赖的所有的包。 RGgui 的详细使用方法可以看 RetroGuard 的文档 docs.html。 配置文件生成后,就可以运行 RetroGuard 进行混淆了。使用方法如下: java -classpath xxx.jar;yyy.zip;... RetroGuard vvv-unofb.jar vvv.jar vvv.rgs vvv.log 其中 vvv-unofb.jar 是未混淆的 jar 文件,vvv.jar 是混淆后生成的 jar 文件,vvv.rgs 是配置文件,vvv.log 是日志文件。缺省的配置文件名称为 script.rgs,缺省的日志文件名称为 retroguard.log。 在生成配置文件时需要注意的是: 1、所有 public 的类名、方法名、变量名应该全部保留。因为所有设置为 public 的内容代表了整个包对外表现的接口。若某个内容不想为外界访问,就不应该设置为 public 的。 2、若包中某个类使用了 java.lang.Class 或者 java.lang.ClassLoader 中的某个方法加载了一个类,若这个类在包外,不需要特别处理;若这个类在包内,则需要保留这个类的类名,否则混淆后会找不到这个类。 3、在包中的所有调试信息(源文件名、行号、变量/参数信息等等)应全部删除。 RetroGuard 还有一种打 patch 的所谓“增量式混淆”的使用方法。方法的要点是把上一次混淆生成的 log 文件作为下一次混淆的配置文件,这样就可以生成一个仅包含修改的 patch jar。在使用的时候把这个 path jar 放在 CLASSPATH 的上一次混淆 jar 之前。这种增量式混淆有两种方法: 1、每个 patch jar 仅包含上一个版本混淆以来发生的变化,这样每个 patch jar 会很小,但是 CLASSPATH 会越来越长。 2、每个 patch jar 包含上一个主要版本(2.0、3.0、4.0)混淆以来发生的变化,这样两个主要版本间的 patch jar 会越来越大。但是 CLASSPATH 只需做很小的变化。
1
基于easyui的文档管理系统springmvc+mybaits实现,有详细的设计过程以及数据库设计文档等,并且可以直接运行使用,具体可以查看介绍https://my.oschina.net/u/3500033/blog/1828156
2019-12-21 21:58:46 2.08MB 项目源码 可运行 有设计过程
1
如何导入一个android源码并且运行 详细步骤
2019-12-21 21:32:53 226KB 导入源码
1
RSA加密解密算法 java版 源码 可运行 很实用
2019-12-21 21:21:58 2KB RSA 加密 解密 java
1
学校的课程设计题目,要求做出一个简易的人事管理系统。运用了数据库的相关知识以及JAVA做的界面。
2019-12-21 21:11:28 52.85MB 数据库 Javaswing
1
VC++五子棋窗体界面程序源码(可以VC6.0直接编译源码即可运行,经本人亲自测试运行成功!)
2019-12-21 21:11:11 719KB VC++ 五子棋 窗体界面 源码
1
VC++五子棋人机对战程序源码(窗体界面,可以VC6.0直接编译源码即可运行,经本人亲自测试运行成功!)
2019-12-21 21:11:11 1.39MB VC++ 五子棋 人机对战 程序
1
获取U盘VID,PID,盘符,物理序列号(源码)可运行: 在论坛上只是看到了获取逻辑序列号等信息的资料 :eek::eek: 后来参考了些大侠的资料和讲解:终于搞出来了! (当然源码对于U盘,移动硬盘,手机卡,MP3/4都OK ) 不只大虾名讳,只能在此感谢.... 【vc6 绝对OK ....有问题空间留言谢谢】 最后获得的类似: PFAD_G\VID_0951&PID_1623\001CC0EC32CDEA10969B011D PFAD:盘符 中间 VID PID 最后的是 物理序列号
2019-12-21 21:09:21 4.89MB U盘 VID PID 盘符
1
Android 完整的通讯录项目源码 可运行。 学习 copy都可以。 导入可直接运行
2019-12-21 21:02:55 4.23MB android源码 通讯录
1
22个城市TSP问题求解,matlab源码,可运行
2019-12-21 20:43:14 3KB matlab TSP问题
1