失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > java 打包加密_java打包 加密 发布(源代码保护)

java 打包加密_java打包 加密 发布(源代码保护)

时间:2020-02-27 04:16:40

相关推荐

java 打包加密_java打包 加密 发布(源代码保护)

如果你是一名java开发者,你应该知道java源文件编译后的class文件是十分轻易就可以反编译的,有很多java反编译工具都可以做到这一点,例如,jad,jd-gui等,所以如果你想保护你的java class文件不被其他人反编译的话,你需要使用一些java加密工具,不过并不是对java代码进行加密,因为加密的java文件是无法编译成可正常运行的class文件的,所以我们只能加密class文件,更专业一点的称谓,应该是说混淆java

class,也就是对class文件进行模糊处理,目的是为了让反编译者无法获取正确的java源代码,而且又不会影响java class文件的使用。

目前有很多工具可以混淆java class,流行的一点大多要收费的,不过有一款开源的混淆工具,也是基于java编写的,十分好用,它就是proguard。因为我们发布java应用程序的时候,都是选择将class文件打包在jar或者war文件,所以proguard支持对jar里的所有class进行混淆,下面是它的使用方法。

1.定义混淆配置文件

proguard使用后缀为.pro的文件作为配置文件,在这个文件里配置需要混淆的jar文件,混淆后输出的jar文件,混淆需要引用的java类库等。下面是一个示例

1

-injars

C:/Program Files/Java/jdk1.6.0_21/bin/retrace.jar

2

-outjars

C:/Program Files/Java/jdk1.6.0_21/bin/retrace-obfuscated.jar

3

-libraryjars

C:/Program Files/Java/jdk1.6.0_21/jre/lib/rt.jar

4

-libraryjars

C:/Program Files/Java/jdk1.6.0_21/bin/proguard.jar

5

-printmapping

proguard.map

6

-verbose

7

-keep

public class *

2.混淆

下载proguard后,解压将lib目录里的proguard.jar文件和pro配置文件复制到java安装目录的bin下,如果你设置了JAVA_HOME,也可以不用复制到该目录下,然后使用以下的命令来进行混淆,假设pro配置文件命名为myconfig.pro

1

java

-jar proguard.jar @myconfig.pro

3.验证

这时你可以使用jd-gui反编译工具来验证一下混淆结果,把混淆前和混淆后的jar拖到jd-gui工具,然后再对比源代码,你就可以知道混淆后反编译得到的与源代码差别很大。更重要的是,你要把混淆后的jar复制到你的项目,看是否还能够正常使用。

如果觉得《java 打包加密_java打包 加密 发布(源代码保护)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。