让你的 Jar 不被反编译 [英] make your Jar not to be decompiled

查看:33
本文介绍了让你的 Jar 不被反编译的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将我的 Java 应用程序打包成一个无法反编译的可执行 jar(例如,通过 Jadclipse)?

How can I package my Java application into an executable jar that cannot be decompiled (for example , by Jadclipse)?

推荐答案

你不能.如果 JRE 可以运行它,应用程序可以反编译它.

You can't. If the JRE can run it, an application can de-compile it.

最好的办法就是让它很难阅读(用'l'和'1'以及'O'和'0'的组合替换所有符号,放入很多无用的代码等等).即使使用相对笨拙的翻译工具,您也会使代码变得难以阅读,您会感到惊讶.这称为混淆,虽然并不完美,但有时已足够.

The best you can hope for is to make it very hard to read (replace all symbols with combinations of 'l' and '1' and 'O' and '0', put in lots of useless code and so on). You'd be surprised how unreadable you can make code, even with a relatively dumb translation tool. This is called obfuscation and, while not perfect, it's sometimes adequate.

请记住,您无法阻止坚定的黑客,就像阻止坚定的窃贼一样.你试图做的是让随意攻击者的事情变得非常困难.当出现符号 O001l1ll10OO001llll10OOO01l1ll10OO0Ol11ll10OO001l1ll1OO 时,和似乎没有任何用处的代码,大多数人都会放弃.

Remember, you can't stop the determined hacker any more than the determined burglar. What you're trying to do is make things very hard for the casual attacker. When presented with the symbols O001l1ll10O, O001llll10O, OO01l1ll10O, O0Ol11ll10O and O001l1ll1OO, and code that doesn't seem to do anything useful, most people will just give up.

这篇关于让你的 Jar 不被反编译的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆