質問: 以前に使用された10個のパスワードに4文字の連続が含まれている場合、新しいパスワードを許可しない 私は自分のパスワードをアカウント(大規模な機関)に変更することを余儀なくされました、そしてそれは新しいパスワードが10の以前に使用されたパスワードにあった一連の4連続文字を含むことができないという規則を持っていました。たとえば、現在のパスワードのシーケンスが "abcd"の場合、次の10個のパスワードに "abcd"を含めることはできません。 私の最初の推測は、その機関が復号化可能な方法で10個の以前のパスワードを保存していることです。私の質問はこうです:彼らが安全な方法でそのような手順をすることができる方法はありますか? 別の場所にユーザーから提供される*現在のパスワード*と比較できますが、以前の10個のパスワードは扱われません。
回答: 明らかに、彼らはあなたの現在のパスワードと、あなたが新しいパスワードにしたいものを知っています。 私の古い店では、強力なパスワードを実装するためのカスタムPAMモジュールを作成しました。過去のパスワードをどのように処理したかは、過去N件のシャドウテーブルから暗号化されたハッシュを保存することでした。新しいパスワードを操作して、最後のN個のハッシュのいずれかに一致するかどうかを確認して、新しい暗号化パスワードハッシュを生成します。 上記のことはあなたが注目しているチェックの複雑さを簡単には処理できないだろうと確信しています。そのため、ユーザーが過去のパスワードを確認する方法はおそらくいくつかありますが、その解決策が十分に安全であることを願います。