2

ウィキペディアは、ナンスベースの認証の次の例を示しています。

  1. クライアントはサーバーから nonce を要求します。

  2. サーバーは nonce で応答します (つまり、以降「サーバー nonce」と呼びます)。

  3. クライアントは、サーバー ナンス、独自のクライアント ナンス、およびユーザーが入力したパスワードを使用してハッシュを生成します。

  4. クライアントは、ユーザーが入力したユーザー名、クライアント ノンス、およびハッシュをサーバーに送信します。

  5. サーバーは、おそらくユーザー名を介して、データベースからサーバーナンスとユーザーパスワードの両方を取得します。

  6. サーバーは、サーバー ナンス、クライアント ナンス、およびパスワードを組み合わせてハッシュを生成します。

  7. サーバーは、生成されたばかりのハッシュとクライアントから送信されたハッシュを比較します。

  8. ハッシュが一致する場合、クライアントは認証されます。そうでない場合、クライアントは拒否されます。

これは、サーバーがユーザーのパスワードを平文で保存していることを意味していませんか? 実際のパスワード自体ではなく、ソルト化されたパスワードのハッシュを保存することを推奨するセキュリティ原則に著しく違反していますか?

4

1 に答える 1