我有一个Web服务器,它创建一个二维码,即[用户名]+一个MD5哈希值[用户名][密码]。
其中[用户名]是当时登录的用户。
其中[密码]是由我设置的系统密码,对Web服务器和应用程序通用。
我的android/iphone/blackberry/windows应用程序将扫描此二维码,并使用二维码中提供的[用户名]与[密码]进行哈希运算,这将告诉我二维码来自我的服务器。
很明显,如果有人掌握了[密码],他们就可以创建不是来自我的网络服务器的二维码。那么有没有办法在我的应用程序中安全地存储[密码],或者有人可以反编译.apk并在classes.dex中找到它?
最佳答案
您可以通过某种方式混淆密码,但最终这只是通过模糊性实现的安全性。有人谁想肯定可以反向工程。
您可能希望查看公钥加密以避免出现这种情况—即使有人访问了公钥,他们仍然无法使用它来模拟您的服务器。