【问题标题】:How to create jar which can't be decompile [duplicate]如何创建无法反编译的jar [重复]
【发布时间】:2015-04-22 07:19:16
【问题描述】:

您好,我必须创建一个 jar 并将其发送给我们的客户。但问题是客户可以反编译 jar 并根据他的要求进行更改。我想创建 jar 使客户端无法读取代码并且无法对其进行任何更改。任何人都可以告诉我最好的解决方案

【问题讨论】:

  • 没有机会!您可以对代码进行混淆以使其更加困难。但是代码总是可读的,因为目标计算机必须读取和解释代码。因此,代码就在那里并且必须是可解释的,即使对于人类也是如此。
  • 客户端不太可能反编译您的 jar 并进行更改。如果是这样,您随时可以威胁采取法律行动。
  • 默默无闻的安全从未奏效;你为什么要这样做?
  • 这些混淆器是否允许混淆 jar 中的选择性类

标签: java jar decompiling


【解决方案1】:

您不能真正拒绝客户端对代码的任何访问,否则他将无法执行它。 Java字节码可以反编译。

你能做的最好的就是混淆它(将所有变量、类和方法重命名为abc 等),这样就更难理解你的代码做了什么并重用它其他的项目。我对ProGuard 有相当积极的经验,它会在编译的类上自动执行此操作。

【讨论】:

  • 这些混淆器是否允许混淆 jar 中的选择性类
  • 是的。您可以将其配置为保持某些类名或整个类不混淆。你能解释一下为什么你想只混淆特定的类而不是整个项目吗?
  • 实际上是我的上级要求的。
猜你喜欢
  • 2011-03-06
  • 2011-09-30
  • 2011-09-20
  • 2021-05-17
  • 2016-12-26
  • 2021-02-20
  • 2012-01-11
  • 2011-05-21
相关资源
最近更新 更多