混淆应用程序是否存在任何潜在问题?

编程入门 行业动态 更新时间:2024-10-26 06:28:42
本文介绍了混淆应用程序是否存在任何潜在问题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在构建一个 spring mvc Web 应用程序.我打算使用休眠.

I am building a spring mvc web application. I plan on using hibernate.

我在混淆等方面没有太多经验

I don't have much experience with obfuscating etc.

混淆应用程序的潜在缺点是什么?

What are the potential downsides to obfuscating an application?

我了解调试应用程序可能存在问题,恢复丢失的源代码也是一个问题.

I understand that there might be issues with debugging the app, and recovering lost source code is also an issue.

应用程序的实际运行是否存在任何已知问题?可以引入错误吗?

Are there any known issues with the actually running of the application? Can bugs be introduced?

由于这是一个我正在寻找一般指导的领域,请随时提出我应该注意的任何问题.

Since this is an area I am looking for general guidance, please feel free to open up any issues that I should be aware of.

推荐答案

当然存在一些潜在的性能/维护问题,但是一个好的混淆器至少可以让您解决其中的一些问题.需要注意的事项:

There are certainly some potential performance/maintenance issues, but a good obfuscator will let you get round at least some of them. Things to look out for:

  • 一个明显的问题:如果您的代码通过反射调用方法或动态加载类,那么如果类/方法名称被混淆,这很可能会失败;一个好的混淆器会让你选择类/方法名,不要混淆以解决这个问题;
  • 如果不是同时编译所有应用程序,可能会出现类似的问题;
  • 如果它直接在字节码级别处理,混淆器可以创建原则上 Java 编译器无法创建的代码(例如,它可以插入任意 GOTO 指令,而在 Java 中这些只能作为循环的一部分创建)--这可能有点理论化,但如果我正在编写 JVM,我会优化 Java 编译器可以创建的字节码序列的性能,而不是它不能...
  • 如果混淆器显着改变方法中的字节码数量,或者以某种方式改变给定方法/代码段是否达到某些 JVM 优化的阈值(例如内联方法少于 X 个字节码").

但正如您所看到的,其中一些影响有点微妙和理论化——因此在某种程度上,您需要做的是在混淆后对您的应用程序进行浸泡测试,就像您对任何其他重大更改所做的一样.

But as you can see, some of these effects are a little subtle and theoretical-- so to some extent what you need to do is soak-test your application after obfuscation, just as you would with any other major change.

您还应该注意不要假设混淆会尽可能多地隐藏您的代码/算法(如果这是您的意图)——使用反编译器查看结果混淆类的内容.

You should also be careful not to assume that obfuscation hides your code/algorithm (if that is your intention) as much as you want it to-- use a decompiler to have a look at the contents of the resulting obfuscated classes.

更多推荐

混淆应用程序是否存在任何潜在问题?

本文发布于:2023-11-05 04:01:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1559837.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:是否存在   应用程序

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!