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

查看:144
本文介绍了让你的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.

请记住,你不能阻止已确定的黑客,而不是确定的窃贼。你要做的是让偶然的攻击者变得非常困难。当出现符号 O001l1ll10O O001llll10O OO01l1ll10O 时, O0Ol11ll10O O001l1ll1OO ,以及似乎没有做任何有用的代码,大多数人都会放弃。

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天全站免登陆