相关疑难解决方法(0)

如何保护MySQL用户名和密码不被反编译?

Java .class文件可以很容易地反编译.如果我必须在代码中使用登录数据,我该如何保护我的数据库?

java mysql security decompiling reverse-engineering

83
推荐指数
2
解决办法
4万
查看次数

如何保护解密密钥免受反编译?

我是初学java程序员.我正在开发一个解密一些数据的应用程序.解密密钥被硬编码到软件中,因此可以通过分析字节码来看到.

我知道逆向工程不能完全防止,所以我要做的是尽可能地使这个过程变得更加困难.

我的想法不是直接将密钥放入我的代码中,而是让它经历某种转换.例如,我可以写 -

private static final byte[] HC256A = Hex
            .decode("8589075b0df3f6d82fc0c5425179b6a6"
                    + "3465f053f2891f808b24744e18480b72"
                    + "ec2792cdbf4dcfeb7769bf8dfa14aee4"
                    + "7b4c50e8eaf3a9c8f506016c81697e32");
Run Code Online (Sandbox Code Playgroud)

这样,看字节码的人无法立即读取它.但是必须遵循逻辑并对其应用转换,这在字节级别上不会那么容易.

那你觉得怎么样?这有用吗?除十六进制解码之外,最好的转换是什么?是否有其他方法可用于保护硬编码的解密密钥?

谢谢你的所有建议.

java security encryption drm reverse-engineering

6
推荐指数
1
解决办法
1497
查看次数