簡體   English   中英

在iOS上加密SQLite數據庫文件

[英]Encrypting SQLite database file on iOS

我的客戶問我是否可以加密他的iOS SQLite文件。
我檢查了這兩個資源:

加密和解密Sqlite文件(使用核心數據)
http://support.apple.com/kb/HT4175

請糾正我,如果我錯了,文件將被加密,所以沒有人能夠破解它(雖然我認為可能是一個堅定的破解者)。

核心數據查詢將照常運行嗎? 我的意思是沒有不同的API也沒有性能損失。

您提供的鏈接談論加密整個設備的存儲; 但是,如果目標是用戶無法直接打開數據庫文件,那么將無法幫助您,因為唯一可以防止的是在設備被盜的情況下訪問您的數據。 它還依賴於用戶進行設置,應用程序無法強制要求設備存儲加密。

基本上,想要加密存儲的動機是什么?

編輯:

基於響應鏈,我認為在以下位置使用加密的SQLLite變體:

http://sqlcipher.net/

是一個很好的解決方案 這會在數據庫內容到達存儲之前加密,這很好。 攻擊者仍然可以找到代碼中使用的密鑰來解密數據庫,但是您可以添加的任何防御層都會有所幫助。 我認為你不能將它與CoreData一起使用(因為它是在內置的sqllite庫上構建的),但是你可以將它與FMDB這樣的包裝器一起使用:

https://github.com/ccgus/fmdb

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM