Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone与SQLite数据库安全_Iphone_Security_Sqlite_Encryption - Fatal编程技术网

iPhone与SQLite数据库安全

iPhone与SQLite数据库安全,iphone,security,sqlite,encryption,Iphone,Security,Sqlite,Encryption,在包含现有SQLite数据库的iPhone iOS4应用程序中(即编译时存在),SQLite数据库中的数据有多安全 例如,加密SQLite数据库是否值得(使用许可证下出售的sqlite3\u密钥(…)方法)?在iOS 4.x设备上对AFAIK数据进行物理加密。再加上应用程序是沙盒的事实,它是一个相当安全的系统。在iPhone越狱之前,它是安全的。越狱后,一个人可以去你的数据库,可以复制到他的桌面,然后可以看到你的数据。所以我认为如果你有非常重要的数据,那么你应该加密你的数据库,你必须回答的第一个

在包含现有SQLite数据库的iPhone iOS4应用程序中(即编译时存在),SQLite数据库中的数据有多安全


例如,加密SQLite数据库是否值得(使用许可证下出售的
sqlite3\u密钥(…)
方法)?

在iOS 4.x设备上对AFAIK数据进行物理加密。再加上应用程序是沙盒的事实,它是一个相当安全的系统。

在iPhone越狱之前,它是安全的。越狱后,一个人可以去你的数据库,可以复制到他的桌面,然后可以看到你的数据。所以我认为如果你有非常重要的数据,那么你应该加密你的数据库,你必须回答的第一个问题是你的数据有多重要?这在某种程度上决定了黑客愿意花多少时间尝试获取它。安全性是一个复杂的主题,你可以花上几天的时间研究IOS安全性。这在很大程度上取决于IOS版本,IOS 4是第一个有机会真正安全的版本。首先,除非您的设备被锁定,否则没有任何东西是安全的。此外,除非在代码中设置数据保护标志,否则即使设备已锁定,数据库也不会加密。沙盒在这里根本帮不了你,除了保护一个应用程序和另一个应用程序之间的数据。黑客使用你的设备将越狱并安装SSH服务器,在这一点上,他们几乎可以做任何他们想做的事情,包括暴力破解密码的尝试。如果一个IOS 4设备被一个像样的密码锁定,并且您在数据库上设置了数据保护,那么您可能可以使用IOS硬件加密。但是你能依靠用户设置一个合适的密码吗?默认的简单密码只有4位-不是很好。他们都是IOS 4+用户吗?如果没有,您将需要自己对数据库进行加密。不要把钥匙存放在任何地方,因为黑客会找到的。当你考虑代码中的安全性时,考虑黑客也可以反编译和运行你的应用程序的修改版本。< /P>任何文件都可以在一个越狱设备上访问,正如克劳斯所说的,手机是安全的,直到它被破解。所以它实际上一点也不安全。这取决于你所说的“访问”是什么意思。如果设备被密码锁定,那么您将很难读取任何硬件加密数据。SQLite数据库可以加密。在我看来,主要的问题是如何传递密钥。把这个密钥放在源代码中是愚蠢的;从安全的服务器上交付密钥(一次?)更有希望。即使这样,也有一个问题,那就是钥匙到达时应该放在哪里。例如,一个邪恶的人能在钥匙链中找到它吗?(可能是…@user69..2:SQLite数据库可以加密,所以不在应用程序附近时是安全的。在我看来,主要的问题是如何传递密钥。把这个密钥放在源代码中是愚蠢的;从安全的服务器上交付密钥(一次?)更有希望。即使这样,也有一个问题,那就是钥匙到达时应该放在哪里。例如,一个邪恶的人能在钥匙链中找到它吗?(可能…)如果苹果有一些供开发者使用的钥匙链来保护他们的数据…………如果一个应用程序有真正的敏感数据,让他们在应用程序启动时输入钥匙,并且永远不要存储它(除了内存)。很不方便,但这始终是与安全性的权衡。@All:一个关于为什么iPhone不安全的快速解释,即使对于开发者来说也是如此-