1

我正在开发使用 sqllite db 的应用程序。我想为数据库提供安全性。有什么方法可以为 SQLite DB 提供安全性,以便没有人可以通过黑客设备或其他方式读取它。

我们应该提供任何加密还是苹果提供自己的安全性?提供应用程序数据库安全性的方法有哪些?

谢谢

4

1 回答 1

1

@Quentin 的评论是正确的 - 只要有人可以物理访问您的设备,破解它只是时间问题。但是,您可以使那段时间花费很长时间,以至于不值得。

如果你要加密你的数据库,解密密钥也必须存储在设备上(假设你希望它离线工作)。您可以使用钥匙串来存储此密钥 - 然后他们必须破解iPhone 的钥匙串才能访问您的数据。

另一种选择是只让您的应用程序在线工作 - 将密钥存储在您的服务器上并让用户登录并进行身份验证,然后再将密钥传递回应用程序。这需要您做更多的工作,但会确保密钥和数据存储在不同的位置。

最后(也是最安全的),您可以将所有内容存储在您的服务器上 - 这样您就可以自己控制数据和密钥,并且防盗不会产生丝毫影响。但是,如果您的数据集很大,这可能会使您的应用程序的用户界面更加复杂。而且它显然无法离线工作:)

于 2012-06-13T10:09:38.120 回答