
正文
java源码代码混淆,java 混淆
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何混淆Java编译后的类或jar,或将jar编译成exe,使人无法反编译获得源代...
RetroGuard 是针对 jar 文件做混淆的。使用之前需要先配置一下。可以手工编辑配置文件,更好的方法是使用 RetroGuard 提供的 GUI 工具来生成配置文件。
代码编译成class文件代码打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及签名只不过工具帮我们一次性全做了,如果你要写批处理来做,就要按上面的步骤来做了。
HASP HL提供专门针对java外壳加密工具,直接加密jar包,防止外编译,目前只支持J2SE,将来会进一步支持J2EE,如果情况适合则是最简单的方法。
java本就是开源的,你加密感觉怪怪的。想防止反编译,最简单的方法就是你可以向Jar注入无效代码。比如建一个类,建一个没有意义的方法private class Invalid{ },然后输出为jar。
java混淆器特点:使用一种或多种处理方式将class文件、java源代码进行混淆处理后生成新的class,使混淆后的代码不易被反编译,而反编译后的代码难以阅 读和理解。这类混淆器工具很多,而且也很有成效。
Java类的编译与反编译我们在最初学习Java的时候,会接触到两个命令:javac和java,那个时候我们就知道,javac是用来编译Java类的,就是将我们写好的helloworld.java文件编译成helloworld.class文件。
相关问答
Q1: java混淆器是做什么的?
楼上只说了其一,没说其二: 混淆器的还有一个作用那就是对代码进行压缩,比如一个j2me程序打完包是400KB,使用混淆器混淆后就被压缩成100KB的文件,这对于手机这种内存空间比较宝贵的设备来说显得尤为必须。
由于Java程序运行时是动态连接的,因此编译成的目标文件中包含有符号表, 使得Java程序很轻易被反编译,混淆器可以打乱class文件中的符号信息,使反向工程变得非常困难。
Allatori是一个Java 混淆器,它属于第二代混淆器,因此它能够全方位地保护你的知识产权。 Allatori具有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串混淆,以及水印技术。对于教育和非商业项目来说这个混淆器是免费的。
ProGuard是一款免费的Java类文件压缩器、优化器和混淆器。它能发现并删除无用类、字段(field)、方法和属性值(attribute)。它也能优化字节码并删除无用的指令。最后,它使用简单无意义的名字来重命名你的类名、字段名和方法名。
Q2: Java混淆编译器
成功后的工程: 箭头所指处即是我们需要的包,此包代码已被混淆。 效果查看 这里使用反编译工具对混淆后的包进行查看,我用的是jd-gui这个软件,小巧实用。
由于Java程序运行时是动态连接的,因此编译成的目标文件中包含有符号表, 使得Java程序很轻易被反编译,混淆器可以打乱class文件中的符号信息,使反向工程变得非常困难。
ProGuard是一款免费的Java类文件压缩器、优化器和混淆器。它能发现并删除无用类、字段(field)、方法和属性值(attribute)。它也能优化字节码并删除无用的指令。最后,它使用简单无意义的名字来重命名你的类名、字段名和方法名。
楼上只说了其一,没说其二: 混淆器的还有一个作用那就是对代码进行压缩,比如一个j2me程序打完包是400KB,使用混淆器混淆后就被压缩成100KB的文件,这对于手机这种内存空间比较宝贵的设备来说显得尤为必须。
Q3: 如何分析经过混淆后的java代码
当混淆后的代码输出一个堆栈信息时,方法名是不可识别的,这使得调试变得很困难,甚至是不可能的。
配置文件生成后,就可以运行 RetroGuard 进行混淆了。
reactor主界面上就有几个复选框,试一下全部打勾,然后点proctect,混淆后的Dll再用反编译软件看看其中的代码,lz自然会知道结果。
图 Java程序的代码混淆过程 经过混淆的代码在功能上是没有变化的,但是去掉了部分名称中的语义信息。因为种种限制,这类混淆也不可能对所有的名称都进行替换。
Q4: 除了proguard还有免费的java混淆器吗
1、Allatori是一个Java 混淆器,它属于第二代混淆器,因此它能够全方位地保护你的知识产权。 Allatori具有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串混淆,以及水印技术。对于教育和非商业项目来说这个混淆器是免费的。
2、ProGuard 是一个免费的 Java类文件的压缩,优化,混肴器。它删除没有用的类,字段,方法与属性。使字节码最大程度地优化,使用简短且无意义的名字来重命名类、字段和方法 。eclipse已经把Proguard集成在一起了。
3、java混淆器特点:使用一种或多种处理方式将class文件、java源代码进行混淆处理后生成新的class,使混淆后的代码不易被反编译,而反编译后的代码难以阅 读和理解。这类混淆器工具很多,而且也很有成效。
关于java源码代码混淆和java 混淆的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







