パスワードがハッシュされて保存されている場合、パスワードをリセットしようとすると、パスワードが最後のパスワードと似ていることをコンピューターはどのように知るでしょうか?1つはハッシュ化され、元に戻すことはできないため、2つのパスワードはまったく異なりませんか?
パスワードがハッシュされて保存されている場合、パスワードをリセットしようとすると、パスワードが最後のパスワードと似ていることをコンピューターはどのように知るでしょうか?1つはハッシュ化され、元に戻すことはできないため、2つのパスワードはまったく異なりませんか?
回答:
これを実装する1つの方法は、パスワードをリセットする場合、通常は古いパスワードも入力するように求められます。その時点では、両方のパスワードがプレーンテキスト形式であるため、単純に通常の文字列類似性比較をその状況で使用できます。
これを実装する別の方法は、パスワードを正規化することです。たとえば、アクセント記号付き文字は最も近い英語のアルファベットに正規化されます。さまざまな方法で正規化されていました。これにより、ハッシュメカニズムが不特定の量だけ弱くなることに注意してください。これはセキュリティのベストプラクティスとは考えません。
簡単な答えは、安全なシステムはそれらが類似しているかどうかを知らないということです。
ただし、一部のシステムでは、新しいパスワードが古いパスワードまたはそれに類似することを防ぐために、特定のパスワードのセキュリティを意図的に低下させています。費用対効果のトレードオフは、誰かが類似情報を使用して現在のパスワードを悪意を持って解読する前に、新しいパスワードが作成されることです。
一般に、これらの手法はそれぞれ、パスワードのセキュリティを低下させます。
古いパスワードを保持すると、それらのパスワードのセキュリティが低下します。これらのパスワードのいずれかがクラックされた場合、現在のパスワードがパスワードに似ている可能性が高く、ほとんどの人は数字を変更するだけです。
サムネイルと統計は、推測をハッシュして比較しようとするよりも、不正なパスワード推測をより迅速に排除できます。これは、ハードウェアアクセラレーションを使用しても、ハッシュ、特にセキュアハッシュの計算と労力が複雑になるためです。「間違いなく」または「たぶん」という単純な計算では、これらの推測のほとんどを排除できますが、すべての類似性チェックは、古いものとはまったく異なるまったく新しいパスワードを使用するのではなく、類似のパスワードの使用を停止することを目的としています。
要するに、現在のパスワードと古いパスワードとの類似性の指標を示すサイトには注意してください。新しいパスワードが古いパスワードであると言わない限り。
パスワードがハッシュされて保存されている場合、パスワードをリセットしようとすると、パスワードが最後のパスワードと似ていることをコンピューターはどのように知るでしょうか?1つはハッシュ化され、元に戻すことはできないため、2つのパスワードはまったく異なりませんか?
ユーザーが入力したパスワードから複数の同様のパスワードを生成し、それらのハッシュのいずれかが古いパスワードのハッシュと一致するかどうかを確認します。
別のパターンは、システムがパスワードの特徴的なサブセットをハッシュし、それらのハッシュを保存して、新しいパスワードのサブセットが古いパスワードのいずれかに一致するかどうかを確認することです。つまり、パスワード:「Admin2018」&サブセット:「Admin」=「Admin2019」を入力できません新しいもの。