社区
Java SE
帖子详情
Java防止反编译
guohua414
2014-12-12 06:01:11
Java中发布到客户机的Jar如何做到防止反编译而保护程序。
现在一般的做法:
1.代码混淆:尝试下来,有的工具好一点混淆程度高,有的工具差一点效果也就打点折扣,但反射的类需要排除在外,工作量挺大
2.classloader加密:没尝试
3.生成本地代码:破坏了跨平台,也担心性能
4.远程调用:实际业务不可远程防止,不考虑
看见别人有一种方式,可以禁止打开jar,加载进来也看不到源码,不知道什么方法。
有经验的朋友解答下,不胜感激。
...全文
173
2
打赏
收藏
Java防止反编译
Java中发布到客户机的Jar如何做到防止反编译而保护程序。 现在一般的做法: 1.代码混淆:尝试下来,有的工具好一点混淆程度高,有的工具差一点效果也就打点折扣,但反射的类需要排除在外,工作量挺大 2.classloader加密:没尝试 3.生成本地代码:破坏了跨平台,也担心性能 4.远程调用:实际业务不可远程防止,不考虑 看见别人有一种方式,可以禁止打开jar,加载进来也看不到源码,不知道什么方法。 有经验的朋友解答下,不胜感激。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
humanity
2014-12-13
打赏
举报
回复
JKD 6 Instrument agent,挂载上去后每个类加载都可以通过它来先处理一次,比如我们用 dll 来解密类的内容。当然你的 dll 还是有可能被人家破解的。这个时候 jar 文件中每个 class 文件的内容本身是错误的,加密的,不是 class 原始格式,因为无法反编译。要不咱来个 SSL 连接到服务器解密类,服务器给客户端发一张客户端 SSL 证书来访问服务器,这时候服务器才愿意帮它解码它发送过来的加了密的 class 文件内容。这样加密解密都只有服务器知道,SSL 证书也是服务器发的,其它人没法用。 不过无论如何,理论上没有不能被破解的程序,混淆只是让反编译出来的代码难以理解,肯定是有人能理解的。只是理解它花去的时间成本因人而异。
rumlee
2014-12-12
打赏
举报
回复
自定义classloader结合本地代码启动,这样应该安全性还是比较高的。
防止
JAVA
代码被
反编译
的方法
防止
JAVA
代码被
反编译
的方法 代码编写避免被
反编译
的方法
java
class
防止
反编译
,最大限度的保护自己的代码
java
以其跨平台、免费、安全等特点,被越来越多的应用到大型的系统中。正是由于其代码的跨平台性,是解析型...本文从各个方面介绍了
防止
class被
反编译
。从而保护自己的知识产权不受侵害。 包括混淆技术,加密技术等。
java
防
反编译
jar
java
jar包防
反编译
工具,混淆代码,可以对类名,String,变量,数字等进行混淆,
java
代码保护,
防止
反编译
保护企业成果,
防止
反编译
,有效的保护知识产权。 欢迎下载
防止
Java
程序被
反编译
Java
语言的出现,使得
反编译
变得非常容易而有效。原因如下:1.由于跨平台的需求,
Java
的指令集比较简单而通用,较容易得出程序的语义信息;2.
Java
编译器将每一个类编译成一个单独的文件,这也简化了
反编译
的工作;3....
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章