存儲密碼
回答
智能關於安全!
瞭解AccountManager不是加密服務或鑰匙串很重要。它以純文本格式存儲帳戶憑證,就像您傳遞它們一樣。在大多數設備上,這不是一個特別的問題,因爲它將它們存儲在只能由root用戶訪問的數據庫中。但是,在有根的設備上,任何具有adb設備訪問權限的人都可以讀取憑證。
考慮到這一點,您不應該將用戶的實際密碼傳遞給AccountManager。addAccountExplicitly()。相反,您應該存儲一個加密安全的令牌,該令牌對攻擊者的使用有限。如果你的用戶憑證保護着有價值的東西,你應該仔細考慮做類似的事情。
請記住:當涉及到安全代碼,請按照「Mythbusters」規則:不要在家中嘗試這個!在實施任何自定義帳戶代碼之前諮詢安全專家。
既然安全免責聲明已經完成,現在是時候重新開始工作了。您已經實施了自定義帳戶代碼的功能;剩下的就是管道。
哇兼容。我真的不認爲將用戶的密碼保存在明文中是一個嚴肅的選擇。
檢出AccountManager這是專爲此目的而設計的。雖然它在你所關聯的問題中被壓低了,SampleSyncAdapter真的是一個AccountManager
例子的好資源,也是我知道的SDK中唯一的一個。
編輯 - 約javax.crypto
,我認爲它是一個比AccountManager
更低級別的API。從文檔:
許多服務器支持 認證令牌,可用於不發送用戶的實際 密碼驗證到 服務器發出請求 的一些概念。 (驗證令牌 通常與單獨的 請求其不包括該用戶的憑證 創建。)的AccountManager可以 產生用於應用程序身份驗證令牌, 因此應用程序不需要 手柄密碼直接。 Auth令牌 通常可重複使用並由Account Manager管理,但必須定期更新 。這是應用程序的責任 當他們停止工作時使auth 令牌失效,因此AccountManager知道它需要 重新生成它們。
我討厭在javax.crypto的級別上處理這個問題,如果我不需要的話。
U可以簡單地聲明這兩個用戶名和密碼的if語句,如果條件匹配u能在錯誤的情況下啓動活動u能簡單地生成的錯誤舉杯input.but你無法如果u從那裏retreive密碼失去任何意思,但是你可以爲一個用戶創建許多密碼。我將這個東西添加到我的應用程序中,併爲我工作得很好。
- 1. 存儲密碼
- 2. 密碼存儲?
- 3. 存儲加密密碼和salt或僅存儲加密密碼?
- 4. 密碼加密和密碼存儲 - Perl
- 5. 密碼存儲器
- 6. 密碼salt存儲
- 7. phpass存儲密碼
- 8. 存儲MySQL密碼
- 9. Mylyn - 密碼存儲
- 10. SSH密碼存儲
- 11. Android - 存儲PIN碼/密碼
- 12. 存儲密碼暫時存儲
- 13. 用Python存儲密碼
- 14. MercurialEclipse如何存儲密碼?
- 15. 存儲帳戶/密碼
- 16. 存儲純文本密碼
- 17. SQL Server - 存儲密碼
- 18. 安全密碼存儲
- 19. 將密碼存儲到Mysql
- 20. 如何存儲密碼鹽
- 21. 與哈希存儲密碼
- 22. 如何存儲密碼?
- 23. 密碼存儲和檢索
- 24. 加密密碼以匹配存儲的加密密碼。
- 25. 在哪裏存儲jasypt解密密碼
- 26. AES加密 - 在Android上存儲密碼
- 27. 將加密密碼存儲在xml中
- 28. 在加密的cookie中存儲密碼?
- 29. 只有當密碼存在時才存儲密碼哈希值
- 30. 即使我沒有存儲密碼,程序是否可以存儲密碼?
聽起來不錯。很好。但我需要保持與API級別4(我編輯的問題,對不起)保持兼容。無論如何+1 – 2011-03-19 09:29:28