Tag: 混淆

在URL中公开DB内部ID是不好的做法吗?

在URL中公开DB内部ID是不好的做法吗? 例如,假设我有一个users表,每行有一些ID(主键)。 暴露URL myapp.com/accountInfo.html?userId=5 ,其中5是实际主键,被视为“坏事”,为什么? 还假设我们正确防御SQL注入。 我最感兴趣的是与Java Web技术堆栈相关的答案(因此是java标签),但一般的答案也会非常有用。 谢谢。

如何告诉proguard保持枚举常量和字段

我试着模糊我们的web应用程序,它使用spring,jaxb并依赖于注释和reflection。 我在互联网上应用了许多食谱来保存一些类,属性,注释和枚举。 但是枚举仍有问题。 我可以保存枚举常量应用来自http://proguard.sourceforge.net/manual/examples.html#enumerations的配置: -keepclassmembers,allowoptimization enum * { public static **[] values(); public static ** valueOf(java.lang.String); } 乍一看,它看起来像工作解决方案和常量保留,因此( Class.getEnumConstants() )返回正确的值列表。 但是当我尝试通过任何名称检索字段时,我得到了NoSuchFieldException。 问题来自jaxbreflection导航器 ,请看代码: public Field[] getEnumConstants(Class clazz) { try { Object[] values = clazz.getEnumConstants(); Field[] fields = new Field[values.length]; for (int i = 0; i < values.length; i++) { fields[i] = clazz.getField(((Enum) values[i]).name()); } return […]

Java代码安全

可能重复: 您是否混淆了商业Java代码? 有没有其他方法可以保护jar子不被其他人打开? 问题是我不希望任何人访问代码,这就是我不喜欢Java的原因。 从我使用的反编译器开始,用C#和Java编写的程序就像变量的名称一样完整,这样可以很容易地访问不是免费的程序。 更糟糕的是,给出源代码。

混淆JavaFX应用程序

由于fxml-files对事件使用Controller类,因此如何对JavaFX应用程序进行模糊处理? 当obuscated conntroller类具有不同的名称和路径时,fxml文件无法找到它们。 在混淆之后编辑fxml文件不是我正在搜索的解决方案。 还有其他选择吗?

(2009) – 反混淆Java代码的工具

是否有一个工具来反混淆java混淆代码? 代码是从已编译的类中提取的,但它们是混淆的且不可读的。

是否值得混淆java Web应用程序?

是否值得混淆java Web应用程序? 为什么?

Java混淆器

我正在寻找一个好的Java混淆器。 我已经对以下Java混淆器进行了初步研究:proguard,yguard,retroguard,dasho,allatori,jshrink,smokescreen,jobfuscate,marvin,jbco,jode,javaguard,jarg,joga,cafebabe,donquixote,mwobfu,bbmug,zelix klassmaster ,sandmark,jcloak,丛林,blufuscator和java代码保护。 我试过proguard它有一个非常好的GUI,看起来非常稳定,似乎是最受欢迎的,但它似乎不喜欢引用的jar文件上的一些枚举(不在我试图混淆的代码中)这很奇怪。 Yguard似乎需要与ant进行一些互动,我对此并不太了解。 什么是好的java混淆器? 它不需要是免费的,它只需要很好地工作并且易于使用。

Java混淆 – ProGuard / yGuard / other?

这与最近的这些问题类似: 用于减小大小的最佳Java混淆应用程序 创建非反向可执行的Java程序 但是,最终会推荐yGuard和另一个ProGuard,但两者都没有提及。 我想知道我们是否可以对每一个进行比较,并听取围墙双方的人们经历。 在ProGuard网站上查看这个比较图表 ,它明显倾向于ProGuard。 但是每个人的实际经验呢?哪一个会产生较小的输出? 哪一个更难反编译? 每个支持哪些Java版本? 就个人而言,我对J2ME的观点特别感兴趣,但请不要将讨论局限于此。

如何保护Java代码免受反编译?

我们知道,有很多java反编译工具可以将.cl​​ass转换为.java文件。 因此,我们需要保护我们的.java文件免受反编译器的攻击。 我知道这是一个很大的话题,也许没有结局。 通常,有两种方式:混淆器和自定义类加载器。 是否有任何成熟的解决方案或开源框架,这两种方式相结合? 另一个方面与exe4j有关,它将jar包装到exe文件中,看起来它可以保护java代码,因为我们可以看到的是exe文件而不是jar文件或类文件。 但实际上,当它运行时,它会将所有jar文件分解为临时目录,这意味着很容易获得反编译器的类文件。 那么从exe4j方面保护java代码的任何考虑因素呢? 感谢您的意见和建议。 更新 感谢大家的建议或经验分享。 这对我很有帮助。 为了得出结论,我将放弃任何具有加密function的混淆器或自定义类加载器。 因为最终Java代码可以在聪明的黑客之前公开。 我将在编译时使用C语言中的“#ifdef”等技巧删除一些核心代码。 在Java中,static和final布尔类变量可用于执行相同的工作。 然后,compilered类文件将不包含受需要保护的java代码。