2012-03-19 64 views
0

我正在更新網站的登錄過程。識別詐騙口令時密碼

目前,密碼存儲爲MD5(密碼),我想補充鹽, 但無鹽密碼被用來識別可能的欺詐,因爲他們 通常使用新帳戶相同的密碼。

20%的流量來自移動設備,它們不一定具有相同的IP。

任何想法如何識別這些可能的欺詐行爲?

+0

您如何區分所有將「密碼」作爲密碼的人的欺詐行爲? – TrueWill 2012-03-19 13:17:19

+0

如果用戶已被禁止欺詐並創建新帳戶,則新帳戶密碼將與其他用戶進行比較,如果它與任何可疑帳戶匹配,則會進一步調查。 – MLarsen 2012-03-19 13:25:40

+1

所以這些欺詐行爲不是很聰明,是嗎? – 2012-03-19 16:24:56

回答

0

你仍然可以添加一個salt,但是你必須對現有的密碼進行比較,同時你仍然有明文密碼,也就是說你必須遍歷密碼錶尋找重複項(通過散列其他帳戶鹽與新密碼)在帳戶創建時,而不是之後。

0

我會說鹽漬密碼絕對是一個重要的好處,因爲它們可以防止欺詐。但是,請使用a cryptographically secure slow hashing algorithm, such as bcrypt, scrypt or pbkdf2 - 不要醃製MD5。

但是,你可以有你的蛋糕,吃它,爲什麼不有另一張表包含以前的密碼已被用於欺詐嘗試?這些將被散列,但不會被醃製,並且不會存儲任何帳戶關聯。

如果使用這些密碼中的一個的用戶證明是非欺詐性的,那麼在您調查後,您可以通知他們將其密碼更改爲其他內容。

下面是我的想法:在決定將帳戶用於欺詐之後,將新密碼添加到欺詐性密碼列表中。

  1. 帳戶被標記爲欺詐。
  2. 當該用戶下次嘗試登錄時,它們的哈希值,鹽漬密碼與存儲在其帳戶記錄中的哈希值,鹽值相匹配,從其用戶輸入中獲取的未重定義哈希值密碼將存儲在欺詐密碼列表中。

由於欺詐密碼列表可以減少直立的用戶的帳戶的安全性,因爲它們都存儲在這裏無鹽,你應該做的「好」的用戶在登錄時更改自己的密碼,如果它在欺詐匹配任何密碼列表。

+0

如果數據庫暴露出來,難道這只是提供完整的已使用密碼列表,破壞了篡改用戶表的目的嗎? – MLarsen 2012-03-19 16:40:56

+0

您只會存儲以前用於欺詐的帳戶的密碼,而這可能是您本來會被停用的?如果非欺詐用戶使用了其中一個密碼,則可以在通過調查後通知他們將其密碼更改爲其他內容。 – SilverlightFox 2012-03-19 18:15:32

+0

如果有一個您決定禁止使用的密碼的帳戶,您將如何獲取一個無鹽密碼,以便在不存儲原始密碼的情況下輸入您的無欺詐「密碼」密碼列表(這會很糟糕)? – SecurityMatt 2012-03-20 17:03:10