SqlCipher打开游标是否存在安全问题?

时间:2012-03-30 17:26:02

标签: android sqlcipher

我正在使用SqlCipher与内容提供商。现在,当我想要锁定应用程序时,我只需清除缓存的密码。但是,该应用程序可以继续使用任何打开的游标。这意味着重新打开应用程序可授予对敏感数据的访问权限。如果应用程序没有密码,我会通过重定向到登录屏幕来修复此问题。

但是,我担心这些打开的游标是否存在安全问题,或者我是否应该继续阻止UI访问而不用担心? SqlCipher的文档说它会动态读取/写入加密页面,而不是解密整个数据库,这让我觉得开放游标仍然是安全的。

这里主要关注的是有人丢失手机,然后知识渊博的个人可以使用这些开放的光标来提取敏感数据。

1 个答案:

答案 0 :(得分:0)

我没有看过SQLCipher for Android实现游标的细节,但通常在Android游标中将整个结果集保存在堆空间中,而在SQLCipher的情况下,那些将被解密。

但是,由于这些游标对您的进程是私有的,因此除了通过您的UI之外,没有任何人可以通过Linux / Android进程隔离来获取这些游标。如果你的用户界面不允许任何人通过再次登录获得任何地方,那么你就受到了很好的保护。问题在于您是否确定您的UI没有任何无意的代码路径会绕过登录(例如,最近的任务列表)并允许访问数据。