我想要一个java桌面应用程序加密/一些机制,以确保它不是逆向工程。
这方面的任何指示都将受到高度赞赏。
答案 0 :(得分:3)
不是真的。 See this for the full details。这是Java长期存在的问题,与语言本身一样古老。
答案 1 :(得分:3)
您正在寻找“混淆”。 通过“重新排列”生成的字节码,这种技术将使任何类型的逆向工程变得更加困难。有时这也会带来额外的性能提升,因为混淆器可以花时间来优化字节码。 请查看ProGuard和yGuard等工具。
答案 2 :(得分:0)
在之前的公司,我们成功使用了DashO。 http://www.preemptive.com/products/dasho
但是,要明白,你在某种程度上打开了一堆蠕虫。了解代码在堆栈跟踪中死亡的位置并不简单......方法名称和变量都是模糊处理的,因此如果没有为特定构建生成的映射文件DashO,堆栈跟踪就毫无意义。