2010-03-06 103 views
1

我是一名Android開發人員,他嘗試使用javax.crypto軟件包加密/解密SQLite數據庫備份,當我將它們放在SD卡上時。這樣,他們在可公開訪問的文件系統中不能被讀取。如何驗證javax密碼密鑰?

我可以加密/解密文件就好了,但我不知道如何判斷用戶是輸入正確的密鑰還是錯誤的密鑰。一個不正確的鍵只會返回一個更混亂的文件。我需要驗證用戶密碼而不將其存儲在設備上的方式(因爲它們可能會導入到其他設備)。

如何檢查文件是否已被成功正確解密?

另外,有沒有辦法可以檢查一個文件是否加密?

回答

1

如何在加密之前將文件散列追加到文件的簡單包裝格式?解密後,從文件末尾檢索保存的散列,並檢查解密文件的散列是否與保存的散列匹配。如果不是,出現問題的概率很高。

+0

有沒有一個java類可以幫我嗎? – CodeFusionMobile 2010-03-07 21:21:06