2012-10-29 73 views

回答

28

確保您使用正確的密碼來打開密鑰庫。我是有這個錯誤,原來我還是用從示例代碼的密碼trusted.load()

13

我有,我試圖打開一個文件KeyStore我保存到本地,2個原因,想到了同樣的問題:

  • 你存儲你的KeyStore,並用不同的密碼加載它。
  • 您的KeyStore文件被損壞了一些如何標記完整性檢查。

我建議你嘗試保存並加載具有相同密碼(固定)的另一個文件,以查看它是否會正常加載。

+0

你能告訴我它在mac os上存儲的位置嗎? – Hunt

+0

@Hunt:什麼是? –

+0

KeyStore,我甚至不知道它在android手機或其他地方獲得商店 – Hunt

1

確保您的密鑰存儲文件使用FileOutputStream.close()正確關閉,否則將被標記爲失去誠信

0

我發現另一個可能會引發此消息的角落案例。

我導出了一個PKCS12密鑰庫openssl,然後試圖用keytool將它導入到一個現有的密鑰庫中。儘管在列出PKCS12密鑰庫的內容時密碼良好,但在此步驟中仍收到「完整性檢查失敗」錯誤。

問題原來是因爲我使用了長達50個字符的密碼。雖然這被openssl所接受,但我知道這是所用緩衝區的最大大小,並且密碼的最後一個字符被「字符串結束」字符覆蓋。

使用長度僅爲49個字符的密碼再次導出PKCS12密鑰庫修復了我的問題。