
正文
java防止代码被修改 java代码怎么防止反编译
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
防止JAVA代码被反编译的方法
无法防止。.class文件的标准是公开的,无法防止别人反编译你的代码。你顶多可以用代码扰乱工具扰乱你的代码,这样反编译的代码就难以阅读。比如可以试试用proguard来扰乱(“加密”)和反扰乱(“解密”)你的代码。
java本就是开源的,你加密感觉怪怪的。想防止反编译,最简单的方法就是你可以向Jar注入无效代码。比如建一个类,建一个没有意义的方法private class Invalid{ },然后输出为jar。
很久前做过一个项目,用很复杂的算法加密 class文件,然后在虚拟机载入前调用解密程序。用的是 jvmti。这样可以防止class loader被反编译导致加解密算法泄漏,应该算比较好的一种解决方案了。
相关问答
Q1: 如何防止java文件被反编译
图2 对Class文件进行加密示意图 转换成本地代码 将程序转换成本地代码也是一种防止反编译的有效方法。因为本地代码往往难以被反编译。开发人员可以选择将整个应用程序转换成本地代码,也可以选择关键模块转换。
java本就是开源的,你加密感觉怪怪的。想防止反编译,最简单的方法就是你可以向Jar注入无效代码。比如建一个类,建一个没有意义的方法private class Invalid{ },然后输出为jar。
那如何能做到我的class代码无法被人反编译呢?那就需要我们下面的“加密class”! 加密class 在说加密class之前,我们要先了解一些java的基本概念,如:ClassLoader。
Q2: 【转】如何保护Java代码
1、在使用这些本地代码之前,往往需要对这些本地代码进行认证,确保这些代码没有被黑客更改。如果签名检查通过,则调用相关JNI方法。这种保护方式示意图见图3。
2、如果你觉得C能保证安全水平更好,那可以加挂 Java 6 开始支持的 Instrument,它可以支持对 class 文件进行解密。
3、这个就要用专业的源代码加密软件去加密了。因为源代码涉及到的编译环境会相对复杂的。我目前了解到就是德人合科技的加密防泄密系统。
4、由此可能引发的问题在预定义代码范围部分已经提到。因此,同样请仅在必要时使用内部类。原则五:确保类不可克隆Java提供一项功能,用于在需要时对自有类进行克隆。
5、避免最终应用程序中的死代码(注释内的代码)。如果闯入者去掉了对这样的代码的注释,那么代码可能会影响系统的功能性。
Q3: 北大青鸟java培训:程序员如何避免无效代码的问题?
1、断点调试:打断点:打断点、清除断点。启动调试模式的两种方式:一是通过debugas启动调试程序;二是在程序运行时,DDMS视图下选取要调试的程序,启动调试模式。调试:可使用FFFF8快捷键。
2、变更要有回滚,在同环境中测试在执行运营的过程中,最繁琐的过程就是变更回滚,并且需要在同样的环境下进行测试。
3、执着是最可贵的。执着的程序员都是相信自己的人,每时每刻都会鼓励自己,你做的出来,你能解决,你会成功。这样他才能坚持下去。死气沉沉,不求甚解优秀的程序员是充满激情和活力的。求知欲和创造欲是原动力。
4、CeylonCeylon是面向企业水平的应用设计而开发的强大的静态型编程语言,支持Java和JavaScript的虚拟机。Java语言本身在性能、语法、编程模式等方面不断的改进中。作为Java程序员,北大青鸟认为过于依赖Java语言也会存在一定的风险。
5、错误的团队如果你不幸选择了一个错误的团队,经常遇到问题是不可避免的。很多时候并不是任何人的错,但是团队里面的人会因为各种问题感到不开心,或者对琐碎的事情感觉到厌恶,这些都是影响团队氛围的关键点。
关于java防止代码被修改和java代码怎么防止反编译的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







