6个常用Java 源代码 保护工具(混淆、加密、底层)

本文介绍了6个常用的Java源代码保护工具,包括混淆、加密和底层保护手段,如ProGuard、ZelixKlassMaster、CinnabarCanner、JmangleJava类粉碎机、RetroGuard和JODE,帮助开发者保护代码不受逆向工程攻击。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

6个常用Java 源代码 保护工具(混淆、加密、底层)

ProGuard

Java源代码保护工具ProGuard的3.6与4.1版 
下载地址:http://download.csdn.net/source/386505
(20080318_6)Java源代码保护工具ProGuard的3.6与4.1版【ProGuard.rar】 大小:912 KB (934,458 字节)解压后是后缀为jar的可执行java压缩文件对3.6版本实现了部分汉化。4.1版本是未改动原版。

以下转载:
5个常用Java 代码混淆器 助你保护你的代码
http://news.csdn.net/a/20090731/212891.html 
关键词:Java  | 感谢ydj9931的提供 | 

【CSDN 7月23日消息】从事Java编程的人都知道,可以通过逆向工程反编译得到Java程序的源代码,这种反编译工具之一就是JAD。因此,为保护我们的劳动 成果,尽可能给反编译人员制造障碍,我们可以使用Java Obfuscator(Java混淆器)保护Java的类文件。

Java Obfuscator的原理就是将字节码转换为一个逻辑上的对等物,这种转换后的版本极难拆散。即使有人试图去反编译,过程将极其艰难复杂,并很难绕过转换后模糊晦涩的编码。主要的过程如下:

用一个常规编译器(比如JDK)编译Java源代码运行混淆器,在受保护的环境下生成编译类文件。最后生成的会是一个不同的输出文档,也许扩展名也会不同。

这个被重命名为.class file的文件在功能上与原字节码是对等的,由于虚拟机仍然可以对其进行解译,因此对性能不会产生影响。

以下是一些可用来混淆(obfuscate)Java字节码的工具:

Zelix KlassMaster

Zelix KlassMaster是一款用Java写的实用工具,能读取和修改Java类文件,可以运行在任何支持1.1.6版Java虚拟机的平台上。
下载:http://www.zdnetindia.com/downloads/info/898255.html

Cinnabar Canner

Canner通过创建一个原生Windows可执行文件(EXE文件)保护你的代码不被逆向工程反编译,这个可执行文件包含了你的应用程序类和资源的全部加密版本,只有在被JVM调用到内存中时才处于非加密状态。
网站:http://www.cinnabarsystems.com/canner.html
下载:http://www.cinnabarsystems.com/download.html

Jmangle Java类粉碎机

Jmangle是用来阻止反编译Java程序,降低盗版的软件,开发者可用其粉碎类文件中的符号。
网站:http://www.elegant-software.com/software/jmangle/
下载:http://www.elegant-software.com/software/jmangle/download.html

RetroGuard

JavaGuard是一款通用的字节码混淆器,用来无缝融入你的日常构建和测试过程中,使得你辛苦编写宝贵的Java代码更加安全。
网站:http://java-source.net/open-source/obfuscators/javaguard

JODE

JODE是一款含Java解码器和优化器的java包。
网站:http://java-source.net/open-source/obfuscators/jode

最后要说的是,你也可使用其他几款类似的实用工具,这些工具运用许多不同的方法达到了相同的目标。他们也有共同之处,就是允许通过不同的过程转换生成.exe文件,将.class和.jar文件模糊化。Google Directory上有一张它们的综合列表:
http://directory.google.com/Top/Computers/Programming/Languages/Java/Development_Tools/Obfuscators/(译/Wilson)

proguard4.10 官方版软件,免费下载 1、官网地址:http://proguard.sourceforge.net/ 截止2013-12-15 官网正式版本为4.10, 提供4.11Beat版 2、 解压 proguard4.10.zip ,运行官方例子如下: cd examples java -jar ../lib/proguard.jar @proguard.pro 运行之后在examples目录下生成 proguard_out.jar 3、新手入门请参照本目录下文档《ProGuard代码混淆操作说明.docx》 先牛刀小试一下,混淆自己本地的工程,支持jar,war,ear,目录(class)等方式 4、proguard常见参数标签的用法在《proguard标签的用法.pdf》 5、混淆只是 proguard 功能之一,其它还有压缩、优化等 6、proguard混淆首先得根据自己工程具体情况 来决定,哪些类需要混淆,哪些 类不能混淆,对包名、类名、方法名、参数名、变量名等其它信息 如何处理 可以通过参数 配置。 7、别忘记加上参数 printmapping obf.map 混淆结束后,处理前与处理后对应关系会记录在obf.map中,文件名可以自定义 参照附件中《obf.map》 注:该文档自动生成 8、《testjava.pro》是我自己的配置文档(一个helloWorld),仅供参考 9、日记《success-log.txt》 混淆有利有弊,混淆须谨慎 1、混淆后的代码出错,如何精确快速定位?如果对系统架构,编程,数据配置等非常清楚,请忽 略 2、为了保护源码不外泄,义无反顾,我们只能选择混淆,那么Proguard,就是不错的选择!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值