作者JohnnyDell (强尼戴尔)
看板java
标题[问题] 请问war档的代码混淆
时间Thu Jun 26 22:18:44 2014
Update:
报出的错误有些是找不到lib,有些是丢了不同版本的lib进去他无法判断
另外就是Google发现他虽写支持.war 可是不能丢war进去
必须把war的web-inf/classes下的包成jar在丢
调整加进去的lib後已可正确obfuscate完没有出错
但果然就是会整个坏掉 因为被混淆了
现在卡在不知道要怎麽调整设定 设定例外让他keep住不该改变的部分
---
因为目前有一个专案 是使用GWT开发的Web service
可是必须整个war档交付出去 就存在着被decompile的问题
找了一下发现可以obfuscate .class档 达到即使被decompile也较难辨认
可是大多都是针对.jar档 尤其是Android的app
毕竟一般大多是.jar才会释出 若是war大多应该是以提供service的方式
似乎也有看到web service若obfuscate後会整个错乱无法使用..
试了ProGuard这款 把war档整个丢进去 再把几百个lib给丢进去
结果一直出现error说class name不对@@
请问各位大大 一般对於这种需要把war整个release出去的
有什麽样的solution可以防止被逆向工程吗?
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.194.238.68
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/java/M.1403792326.A.D66.html
1F:→ godchueh:考虑把重要演算法放jni? 06/27 10:48
G大 这个比较困难 因为其实整包没有什麽重要的演算法(迷之音: 那还怕被逆向工程?)
不过主要是因为整包专案哪些是核心哪些不是其实我也不清楚(刚接手)
加上放jni对目前来说比较难达到
2F:→ bitlife:把你自己的逻辑包成jar,把这个jar混淆 06/27 11:55
B大您的意思是说不要整包web service混 只把後端业务逻辑的部分包出来混?
※ 编辑: JohnnyDell (122.116.194.46), 06/27/2014 14:22:40
3F:→ qrtt1:能稍为说一下前因後果吗:P 06/27 14:20
Sorry 请问Q大说的前因後果是指先前为啥obfuscate会出错? 又怎麽弄了以後没出错?
※ 编辑: JohnnyDell (122.116.194.46), 06/27/2014 14:23:39
4F:→ qrtt1:主要是好奇为什麽需要混淆. 06/27 14:33
因为.. 因为怕被decompile就被取得source code了
至於有没有人会去decompile以及做了取得source code以後会对我们有啥影响
其实我也不知道 但是就是说做为一个被release的war 上面的人就觉得需要protection
※ 编辑: JohnnyDell (122.116.194.46), 06/27/2014 14:48:05
5F:→ qrtt1:如果真的想用,就直接 call 应该也是会动的,其实不需要原始 06/27 15:12
6F:→ qrtt1:码。若真的有重点的东西在里面。多半会再经过 server 验证。 06/27 15:12
7F:→ qrtt1:server 的逻辑就放自己家不外流的。 06/27 15:13