Password
僅儲存雜湊碼時,“您的新密碼必須與以前的密碼至少有 n 個字元不同”如何工作?
我想知道密碼策略“您的新密碼必須與舊密碼至少有n 個字元不同”的工作原理。
我的理解是,作業系統實際上從來沒有自己**儲存舊密碼,而是它們的雜湊碼。如果只有雜湊碼,就無法知道這兩個字元串有多少個字元不同。
我是否正確地猜測它只有在
passwd
程序同時明確要求您**提供舊密碼時才能工作?如果root使用者更改了其他人的密碼,那麼“不同字元數”策略是否根本無法在這裡應用?
此類策略通常通過在詢問舊密碼時應用它們來實現。
另一種選擇是暴力破解舊的。當您輸入新密碼時,現代電腦可以毫無問題地暴力破解所有與新密碼相差 2 個字元的密碼。據我所知,這並沒有用於典型 Linux 發行版的正常身份驗證,但可能一些 PAM 模組實現了這一點。
root 更改密碼的常用方法是假設超級使用者知道他在做什麼。passwd 程序不要求提供舊密碼,並允許您覆蓋最小長度等規則,風險自負。