2011-04-28 77 views

回答

21

你應該改變鹽。 salt被設計爲對所有密碼實例都是唯一的(儘可能多)。

如果對舊密碼和新密碼使用相同的salt,那麼看到舊密碼和新密碼的攻擊者可以攻擊兩者,攻擊成本低於攻擊密碼的兩倍。這正是鹽的設計要避免的東西(鹽除此之外沒有其他用途)。

當然,舊的舊密碼已不再是輸入您的系統的有效方式,但由於用戶傾向於重用密碼,舊密碼仍然值得(從攻擊者的角度來看) 。特別是,當用戶再次更改密碼時,用戶可能會重複使用該舊密碼(這是大多數用戶在面對需要定期更改密碼的系統時所做的工作:它們在兩個密碼之間切換)。

+0

* up *您可能想更改密碼salt並更新用戶記錄 – 2011-04-28 15:06:48

2

如果密碼不弱(並且攻擊者不知道鹽),如果密碼更改,使用不同的salt值將不會提高您的密碼安全性,因此您可以保持不變。

鹽值的目的是爲了確保具有相同密碼的不同用戶不具有相同的密碼哈希值。

無論如何,假設攻擊者先前破解了用戶密碼並知道salt值。如果您只更改密碼,攻擊者可以減少計算次數來再次破解它,因爲他已經知道鹽。

所以也許這是一個好主意,在設置新密碼的同時改變鹽。