2

我用 Java 制作了一个应用程序,并且我已经将应用程序 jar 文件转换为.exe使用软件以防止提取,因为我们知道 JAR 文件可以很容易地提取和反编译。

谁能告诉我将 .jar 文件转换为是否.exe足够安全以分发给任何客户。

4

3 回答 3

2

没有什么是 100% 安全的。将 jar 转换为 exe,你正在扼杀一个超级重要的 java 特性:跨平台。exe文件不再是跨平台的。它是为特定平台创建的(例如 MS windows)。

如果您想防止您的代码进行逆向工程,请使用混淆:更改您的字节码以便它可能可以被反编译但在反编译后很难理解的过程。如果您想要更高的安全性,您可以在运行时下载部分代码并运行它们。下载可以使用 SSL 完成,因此非常安全。您还可以创建自定义类加载器并针对受密码保护的 zip 文件运行。

因此,有很多方法可以保护您的代码,而创建 exe 文件是最弱的一种。

于 2012-12-13T10:06:55.573 回答
1

嗯,有两种EXE生成器:

  1. 攻击 JAR 文件的最小 JRE
  2. 将您的代码转换为本机代码的代码

两者都更难反编译纯 JAR 文件,但第二个更安全。

好吧,据我所知,本机编译器都是商业的,所以如果你需要一个免费的转换器,你只有第一个选择。在这种情况下,我建议您首先使用(非流)混淆器(例如 yGuard),然后将混淆的 JAR 文件转换为 EXE。

于 2012-12-13T10:08:56.657 回答
1

谁能告诉我将 .jar 文件转换为 .exe 是否足够安全以分发给任何客户?

不,不是。混淆会使它变得更难一些。

于 2012-12-13T10:10:06.617 回答