在我的android應用程序中,我需要安全地存儲RSA,ECDH,AES和其他密鑰。它們將通過使用用戶輸入的密碼進行加密/解密。我的選擇是:android密鑰庫,充氣城堡UBER密鑰庫,加密並存儲在共享首選項中。 Android密鑰存儲不是一個選項,因爲它不使用自定義密碼加密密鑰。 UBER似乎是一個很好的解決方案,但是我在那裏存儲我的密鑰時遇到了一些問題,所以我想僅僅用AES GCM對它們進行加密並放入共享偏好,這樣會不太安全?或者甚至可能更安全,因爲AES GCM比充氣城堡使用的Twofish更好?是否將密鑰存儲在Bouncy Castle密鑰庫中比將密鑰存儲在共享首選項中更加安全?
1
A
回答
0
在GCM模式下使用AES-256進行加密,然後存儲在共享首選項中應該沒問題。 AES-256是NSA Suite B規範的一部分,與對稱加密相比,AES-256的性能大致相當。 (https://en.wikipedia.org/wiki/NSA_Suite_B_Cryptography)該鏈接指出NSA期望很快發佈一個新的套件建議來解決加密上的量子攻擊這一事實 - 但在接近(3-5年)的期限內,這種攻擊幾乎不可行。
相關問題
- 1. 在DefaultConfiguration中存儲加密密鑰是否安全?
- 2. 在mongodb中存儲公共SSH rsa密鑰是否安全?
- 3. 存儲密鑰
- 4. 如何在android中安全地存儲加密密鑰?
- 5. 如何在C++中安全地存儲AES加密密鑰?
- 6. 如何安全地在.Net中存儲加密密鑰?
- 7. 如何在java中安全地存儲加密密鑰?
- 8. 將會話密鑰存儲在localstorage中
- 9. 解密存儲Java密鑰存儲
- 10. ECDSA密鑰存儲
- 11. 存儲AES密鑰
- 12. 是否可以將加密憑證存儲在PKCS12密鑰庫中?
- 13. 在pkcs11密鑰庫中存儲證書
- 14. 在Android上存儲密鑰
- 15. 將公鑰和私鑰存儲在數據庫或密鑰庫中
- 16. 如何安全地存儲密鑰?
- 17. Android的安全存儲密鑰
- 18. Android的密鑰存儲提供商 - 如何存儲密鑰
- 19. oracle存儲過程加密密鑰
- 20. AES加密和密鑰存儲?
- 21. 如何將私鑰存儲在密鑰容器中?
- 22. 如何在JSONStore中存儲加密密鑰/密碼
- 23. 在.NET中存儲加密/解密密鑰
- 24. 將javax.crypto用於文件加密/解密的密鑰存儲區
- 25. 在github上存儲ssh密鑰是否安全?
- 26. Bouncy Castle NTRU加密出口公鑰
- 27. RSA密鑰對生成並存儲到密鑰庫
- 28. 將用戶名保存在密鑰中,並在存在密鑰時加載密鑰
- 29. 將公共密鑰存儲在sharedPreferences中,並檢索它
- 30. 上傳私鑰到rundeck密鑰存儲
您能解釋一下「Android密鑰存儲(...)不使用_custom_密碼加密密鑰」是什麼意思?我剛剛偶然發現[this](https://stackoverflow.com/questions/43891059/storing-keystore-password-for-certificate-pinning-in-android),那裏有建議可以存儲由密碼保護的密鑰,但我不知道我們是否在這裏的同一頁 – Antek