gpt4 book ai didi

java - 除了混淆之外还可以做些什么来保护 jar 文件?

转载 作者:搜寻专家 更新时间:2023-10-31 19:30:33 26 4
gpt4 key购买 nike

我担心 Java 可执行文件的安全性。它们几乎没有提供反编译保护。使用 Java Decompiler 等工具,即使是 child 也可以反编译类文件以获得原始代码。

除了代码混淆之外,还可以采取什么措施来保护类文件?加密类加载器仍然是一个神话吗?

最佳答案

在之前的一家公司,我们有过这样的问题,主要是管理层偏执。

首先,您必须明白绝对安全只是一个神话:只要您的程序运行在不受信任的硬件上,它就可以被反编译,无论您使用什么语言。您唯一可以改变的是攻击者了解您的软件/算法/数据的成本。

关于混淆:它可以被认为是第一级保护,因为它使 Java 代码完全不可读。好的混淆器,如 ProGuard在变量/方法名称中使用禁用字符,防止执行反编译代码。现在,人们可以认为这是一种足够好的安全措施,因为反编译代码不像运行 Jad 或其他反编译器并拥有完美运行的 Java 代码那么简单。但是,可以理解此类代码中公开的大多数算法(因为可读 代码与可编译 代码有很大不同)。

额外的安全措施包括:

  • 通过使用某种网络服务发送结果和获取结果(使用 REST/SOAP/YouNameIt)在服务器上运行敏感代码
  • 使用 HTTPS 和(可能)额外的安全层从远程服务器加载敏感代码。

从这两种安全措施中,老实说,我会选择第一种。事实上,第二个可以被典型的 HTTPS 攻击(中间人、日志代理等,...)破坏,并且将代码放在不受信任的硬件上主要不便,这可以从那里借到它。

关于java - 除了混淆之外还可以做些什么来保护 jar 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7324708/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com