我正在嘗試創建一個應用程序,用戶必須使用名稱/傳遞組合登錄。但是,我不完全確定在哪裏檢查用戶名/密碼是否有效。實現在Android中登錄
每次運行應用程序時,我應該在顯示登錄屏幕之前刷新手機上的數據庫副本嗎?或者我應該只在我驗證了登錄信息(通過https發送的帖子)之後才能拉取。
另外我想知道在手機上存儲包含用戶名/密碼組合的數據庫的一部分的安全性。如果我用鹽重複散列密碼,是否有機會輕鬆查看用戶名/密碼組合?什麼散列算法是適當的? (md5很弱我讀過,和sha-1一樣,但是可能反覆迭代可以減輕sha-1的弱點?)。
帶好鹽的SHA-2不會對字典附加或暴力攻擊產生任何幫助:http://codahale.com/how-to-safely-store-a-password/ – Luke
我不得不同意bcrypt對於安全性更好,但是如果使用HTTP方法,那麼您仍然容易受到中間人和重放攻擊的攻擊。所有這些都將取決於您的場景以及您需要多少安全 – bennettaur
是的,沒有參數,SSL/TLS是安全傳輸密碼的必備條件。 – Luke