资源描述:
《java代码混淆文档》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、JAVA代码混淆1.ProGuard简介:是一款免费的Java类文件压缩器、优化器和混淆器。它能发现并删除无用类、字段(field)、方法和属性值(attribute)。它也能优化字节码并删除无用的指令。最后,它使用简单无意义的名字来重命名类名、字段名和方法名。经过以上操作的jar文件会变得更小,并很难进行逆向工程。它支持脚本控制,可以使用GUI界面,与eclipse集成,支持J2ME。价格:免费使用方式:1、使用图形界面,如下图:locatedintheTomb,DongShenJiabang,defert
2、henextdayfocusedontheassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedfatal,whennightcame1、使用脚本语句,将执行脚本语句加入相应脚本中执行,例如加入ant、maven项目自动构建中,在项目部署前混淆代码。应用情况:1、需要对配置项了解具体含义;2、不需要混淆的属性、方法、类,需要
3、在.pro配置文件中说明;3、混淆方式为项目打包后再混淆;4、不能与myeclipse、eclipse集成使用;5、可以在ant、maven中的配置文件中添加脚本语句使用(编写相应的.Pro文件,增加ProGuard的执行jar文件);6、混淆时将无用的语句去除,优化方法间结构;7、混淆内容:属性、方法名称、类名称,对方法过程不做混淆处理,混淆力度不大。1.Jocky简介:在SunJDK中提供的Java编译器(javac)的基础上完成的,修改了其中的代码生成过程,对编译器生成的中间代码进行混淆,最后再生成cl
4、ass文件,这样编译和混淆只需要一个步骤就可以完成。价格:免费使用方式:1、在myeclipse与eclipse中使用安装插件方式,使用Jocky混淆。如图:locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomis
5、sedfatal,whennightcame使用后会生成配置文件,用于混淆设置使用,该配置文件类似ant配置文件,如下图:混淆等级有5种(public、private、package、protected、all)。1、使用命令行或者脚本,将命令行加入脚本中执行,如在ant配置文件中加入执行脚本后可以执行混淆程序。执行脚本如下图:目前在maven中暂不能使用Jocky混淆。locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassinat
6、ion.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedfatal,whennightcame应用情况:1、使用方便简洁,可以与myeclipse、eclipse集合使用;2、对不需要混淆的属性、方法、类可以在编码过程增加注解,如图:在类里增加如图注解,若混淆级别为public以上,则该类的所有public的方法将不会被混淆;3、混淆方式为编译混
7、淆,即在对项目编译的时候就进行了混淆;4、对jdk版本有要求,目前支持1.4、1.5版本的JDK,但是有破解版本支持1.5以上的JDK;5、可以与ant构建工具集成使用,加入脚本后可以直接执行混淆编译。6、对项目性能和项目包大小有优化;7、混淆内容:属性、方法、类名,对数组也增加了处理,但是对与实现方法未做特殊处理。1.Allatori简介:属于第二代混淆器,具有全方位保护你的知识产权的能力。有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串编码,以及水印技术。对于教育和非商业项目来说这个混淆器是免费
8、的。2.1版本支持war和ear文件格式,并且允许对需要混淆代码的应用程序添加有效日期。价格:单个许可证1许可证290美元2-5许可证260美元6-10许可证230美元11+许可证200美元网站许可证3750美元营业执照4850美元年度支持更新75美元locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassination.L