我想加密或混淆我的WAR文件,以便逆向工程将需要更多的努力。是否有这样的工具或maven插件会加密WAR文件及其内容?
此外,一旦WAR加密,那么Web应用程序将如何部署?如果Web服务器爆炸WAR,每个jar和资源是否仍然可以加密,如何修改启动行为以解密嵌套的jar和资源?
谢谢, 沃尔特
答案 0 :(得分:3)
DashO也会混淆WAR文件。
答案 1 :(得分:3)
Cracking Java byte-code encryption - Why Java obfuscation schemes based on byte-code encryption won't work - 来自JavaWorld的文章。
如果您的代码非常重要,可以解决所有这些问题,那么将它托管在私有服务器上可能是有意义的......:\
答案 2 :(得分:2)
Zelix KlassMaster可以从Ant运行。看起来它也处理WARs。
无法告诉您WAR的部署情况,但任何导致存档在被混淆后无法工作的混淆器都不值得。
答案 3 :(得分:0)
p.s:应用服务器(服务器容器tomcat,apache,glassfish,weblogic,websphere等)无法将我们的代码隐藏起来。根据我的经验,他们都有临时文件夹,其中包含当前使用的项目。在这个文件夹中,我们可以看到代码。
最后我想说如果我们使用Java,那么我们就会创建开源。 :P
答案 4 :(得分:0)
我有一个解决这个问题的方法。它是这样的:
加密war文件。像ZIP一样加密它,所以没有密码就无法读取。
设置系统,或仅将密码提供给托管服务。一旦你和一个客户 已经制定了您的条款,您将密码提供给托管服务。他们解密了 war文件并安装它。他们的客户只看到网站/ api。客户永远不会 访问您的jar文件。
有任何意见吗?