我偶然发现了一个简单的问题,即我打开数据库或使用受保护的服务的最佳方式是什么,从某种意义上说,只有在提供正确的密码时才能使用。
我已经将SharedPreferences视为一种检索信息的方式,但我需要创建一个应用程序,它将在第一种情况下存储密码,这本身就意味着我需要在某处或其他地方的代码上编写密码
客户经理是我考虑的另一种方式。
以AES加密格式,文件或sqlite数据库存储实际密码。但这意味着密钥必须在代码中。
我会认为这是人们面临的一个相当普遍的问题,我想知道人们是如何解决它的!
答案 0 :(得分:-2)
在我看来,您可以使用AES加密来加密数据。但主要问题是关键是不安全。 APK可以反编译。所以有一种隐藏密钥的方法。植入有点困难。使用本机编码(NDK)。您可以在C文件中编写密钥,编译后会得到.SO文件。该文件可以包含在您的项目中。从java调用C函数并返回密钥。但另一个问题是当您打开.SO文件时,用C编写的字符串是可见的。因此,分配生成密钥的ascii代码,并使用C中的ascii代码创建一个字符串。