2011-05-18 81 views
37

我正在尋找很難加密我的Android設備上的sqlite數據庫的可能性,但我無法找到一個令人滿意的解決方案。android的sqlite加密

我需要類似庫文件的引用,以便在使用正常的sqlite函數時對數據庫進行「即時」加密/解密。

我不想在存儲之前加密數據。

我不想加密整個數據庫文件,以便在使用前解密它。

我知道以下項目:

乙ut我找不到任何這個東西的工作示例。

順便說一句,我絕對願意購買商業版本,但我必須在花費數百美元之前測試ist。

有沒有人爲他自己解決這個問題?

編輯: 問題是由commonsWare解決,如果你按照他的鏈接: SQLCypher port to Android 您可以下載neccesary文件和必須將它們添加到您的項目。這可能如下所示: enter image description here

+0

沒有充分的理由對數據庫加密。如果有人想訪問它,他總是可以對您的應用程序進行逆向工程以檢索密鑰。 – ThiefMaster 2011-05-18 11:37:10

+13

不,如果我強迫用戶在啓動應用程序時輸入密碼 – 2red13 2011-05-18 11:39:10

回答

41

嘗試使用SQLCipher port to Android而不是常規SQLCipher。

+0

很酷,如果這個工程我會等待接受你的答案,以獎勵你一個賞金^^ – 2red13 2011-05-18 12:18:51

+0

完美的作品,非常感謝! – 2red13 2011-05-18 14:00:20

+0

賞金開始,並且明天將支付給你^^ – 2red13 2011-05-20 12:34:41

0

litereplica支持encryption使用ChaCha密碼,比便攜式設備上的AES更快。

Android版本有bindings

要創建並打開我們使用URI這樣一個加密的數據庫:

"file:/path/to/file.db?cipher=...&key=..."