【需要加密的反编译的一些场景】 1、公司开发的java web要项目打包成war包往外卖,怎么对war包进行处理,防止其自己拷贝后往外出售呢,如果不通过加密的方式,还有其他方式防止其出售呢. 2、大家都知道的,class很好反编译。出于对知识产权和自身软件的保护,不希望任何人都可以看到源代码或者被反编译工具进行解密。 【java web发布运行在tomcat 大概加密与反编译过程如下】 对于传统的C或C++之类的语言来说,要在Web上保护源代码是很容易的,只要不发布它就可以。遗憾的是,Java程序的源代码很容易被别人偷看。只要有一个反编译器,任何人都可以分析别人的代码。Java的灵活性使得源代码很容易被窃取。
如果是windows操作系统的方案 把一个核心的东西放到dll里面,这样dll是反编译不了的 目前能解决的就是这个方式了。想一劳永逸是不可能的。win都能破解,何况java
高级方案:混淆(RetroGuard )+数字签名验证
建议方案:根本的方法是凡是拷贝的副本,在运行时,程序自动连接到官方的服务器做正版验证。至少解决大部分问题。
反编译源代码被修改这种破解方法: 这个比较靠谱,验证的jar包,加密混淆,或者各个jar包注入 验证,反编译好像无解吧。
javaee加密部署,tomcat使用自己的classloader解密
http://www./kf/201312/264455.html
APK反编译,因为当下绝大多数的Android安卓手机的app都是用java编写的; 1、Android APK反编译就这么简单 详解(附图) http://blog.csdn.net/vipzjyno1/article/details/21039349/ 2、apk反编译获取完整源码 及 apk反编译后的处理 http://blog.csdn.net/wh_19910525/article/details/7915738/
没有绝对的安全,只要人真的有心,破解是早晚的事情。 war包打包的已经是编译过的class文件了,看不到源码的,甚至数据库的连接账号也已经不可见了。即使是反编译,也是需要花费一番功夫的,要相信没人有闲工夫看你的烂代码,放心的交接吧 |
|