QA@IT
«質問へ戻る

質問を投稿

パスワードのソルトの要件は?

データベースにユーザーのパスワード情報を保存する場合、MD5やSHA-256でハッシュを取って、パスワードそのものではなくハッシュ値を保存することが多いと思うのですが、このとき安全性を高めるためにソルトを使うべきと言われていますよね。このソルトについて、ちょっと混乱しているので以下の点について教えて下さい。

  1. ソルトはDBとは別の場所に保存して隔離すべきか?
  2. ソルトは全ユーザーについて共通のもので良いのか?
  3. ソルトの長さは安全性に影響するのか?
  4. ソルトの文字列は乱数であるべきか?
データベースにユーザーのパスワード情報を保存する場合、MD5やSHA-256でハッシュを取って、パスワードそのものではなくハッシュ値を保存することが多いと思うのですが、このとき安全性を高めるためにソルトを使うべきと言われていますよね。このソルトについて、ちょっと混乱しているので以下の点について教えて下さい。

0. ソルトはDBとは別の場所に保存して隔離すべきか?
1. ソルトは全ユーザーについて共通のもので良いのか?
2. ソルトの長さは安全性に影響するのか?
3. ソルトの文字列は乱数であるべきか?