【问题标题】:disable extraction from jar file in java在java中禁用从jar文件中提取
【发布时间】:2012-11-02 18:02:05
【问题描述】:

我想为 java swing 应用程序制作安装文件。

我通过编写脚本文件并将源文件选择为 jar 和其他必要资源来创建设置。

现在我想让我的 jar 禁用提取。

我有什么方法可以确保没有人可以从我的 jar 文件中访问资源,无论是类文件还是图像等。

提前致谢

【问题讨论】:

  • 这与 inno-setup 有什么关系?

标签: java swing jar inno-setup executable-jar


【解决方案1】:

您可以让获取资源变得更加困难,但不能让它变得不可能。顺便说一句,这不是 Java 问题,而是分布式软件的一般问题。为了访问您的资源,您的程序(或者在 Java 的情况下是运行时环境)必须能够解压缩它们。即使您以某种方式对其进行加密,程序也需要包含解密密钥和解密算法。坚定的用户可以通过逆向工程找到这些,并使用它们来获取您的资源。

【讨论】:

    【解决方案2】:

    您可以尝试混淆您的代码。

    这是我用来混淆的。

     http://www.zelix.com/klassmaster/
    

    您可以找到更多工具。

    【讨论】:

      【解决方案3】:

      您可以使用 java webstart,您的 jar 将保存在缓存中,因此很难访问。

      Java Web Start Guide

      【讨论】:

      • 任何知道自己在做什么的用户都知道在哪里可以找到 java webstart 缓存。
      • @Philipp 可以找到路径,但能够将其返回 jar 吗?
      • 用户甚至不需要这样做,因为您必须将 jar 文件放在用户可以访问的网络服务器上,WebStart 才能工作。
      • @Philipp 是的,我知道,我提出了一种部署方式。就是这样。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-19
      • 1970-01-01
      • 1970-01-01
      • 2011-04-16
      相关资源
      最近更新 更多