防止JAVA代码被反编译的方法
无法防止。.class文件的标准是公开的,无法防止别人反编译你的代码。你顶多可以用代码扰乱工具扰乱你的代码,这样反编译的代码就难以阅读。比如可以试试用proguard来扰乱(“加密”)和反扰乱(“解密”)你的代码。
成都创新互联是一家专业提供忻城企业网站建设,专注与成都做网站、网站设计、外贸营销网站建设、H5高端网站建设、小程序制作等业务。10年已为忻城众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。
java本就是开源的,你加密感觉怪怪的。想防止反编译,最简单的方法就是你可以向Jar注入无效代码。比如建一个类,建一个没有意义的方法private class Invalid{ },然后输出为jar。
如果只是为了使用和发布方便,不需要保护java代码,使用这些工具是很好的选择。
1 关键代码使用jni调用本地代码,用c或者c++编写,因此相对比较难于反编译 2 混淆java代码。混淆是不改变代码逻辑的情况下,增加无用代码,或者重命名,使反编译后的源代码难于看懂。
很久前做过一个项目,用很复杂的算法加密 class文件,然后在虚拟机载入前调用解密程序。用的是 jvmti。这样可以防止class loader被反编译导致加解密算法泄漏,应该算比较好的一种解决方案了。
从理论上来说,如果有足够的时间,被混淆的代码仍然可能被破解,甚至目前有些人正在研制反混淆的工具。但是从实际情况来看,由于混淆技术的多元化发展,混淆理论的成熟,经过混淆的Java代码还是能够很好地防止反编译。
java怎么限制数据包重放
1、把你认为的特殊字符写成数组,循环,通过string的contains方法判断是否包含,不过这个判断有多严格,得看你的特殊字符数组有多大。还是用正则严谨些。
2、java限制别人调不了指定包下内容方法有:在该包下的类和成员添加protected或private访问修饰符,这样就只能在同一包内的其他类中进行访问,而外部类则无法直接访问。利用访问修饰符来实现对指定包下内容的访问限制。
3、ide一般run时可设置内存大小,如eclipse设置如下 eclipse安装后,在安装目录有个config.ini文件,内容如下:-vmargs -Xms40m -Xmx256m 或是 其实也很简单。
4、常见的做法是建立线程池,如果线程池满了就禁止新的连接。线程池可以看作一个令牌库。如果要运行,就需要获取一个令牌,运行完毕退回令牌。如果令牌发光了,就禁止新的运行,等待退回的令牌。
5、比如你说的每天限制登陆次数 你可以在登陆方法中声明一个变量flag 用定时器每天00:00时 赋值为0,用户每次登陆flag +1,把登陆成功的方法放入if语句中 如果flag = 登陆限制次数 跳出方法,不就行了。
6、)等等。 JPCAP有16个类,下面就其中最重要的4个类做说明。1.NetworkInterface 该类的每一个实例代表一个网络设备,一般就是网卡。这个类只有一些数据成员,除了继承自java.lang.Object的基本方法以外,没有定义其它方法。
有人知道怎么用java代码防止CC攻击吗
1、throw new java.io.NotSerializableException(This object cannot be serialized); }通过将 writeObject() 方法声明为 final,防止了攻击者覆盖该方法。使类不可逆序列化通过使用逆序列化,攻击者可以用外部数据或字节流来实例化类。
2、使用Cookie认证。这时候朋友说CC里面也允许Cookie,但是这里的Cookie是所有连接都使用的,所以启用IP+Cookie认证就可以了。 利用Session。
3、第一步:“开始→管理工具”,打开“本地安全设置”,右键点击“IP安全策略,在本地机器”选择“创建IP安全策略”,然后点击“下一步”,输入策略“名称”和“描述”。
4、CC的防御要从代码做起,其实一个好的页面代码都应该注意这些东西,还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口,大家都应该在代码中注意。
当前名称:java防重放代码实现 java代码防止反编译
链接URL:http://lswzjz.com/article/dcodcsi.html