• ベストアンサー

パスワード生成

パスワードとソルト(乱数)を組み合わせてハッシュ化し、それをdbに保存するのですよね? ソルトはユーザー毎に違うものにしたいらしいのですが、ソルトの特定はどのようにすればよいのでしょうか? 次回ログインする際、パスワードはユーザーに打ってもらえますがユーザーのソルトまで特定するにはどこかに保存する必要があるのではないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

「パスワードとソルト(乱数)を組み合わせてハッシュ化」する、ということですと、PHPでは、「password_hash」を利用するのが現在のベストプラクティスのようです。 https://www.php.net/manual/ja/function.password-hash.php 上記の関数でハッシュ化したパスワードは、以下の関数でチェックすることができます。 https://www.php.net/manual/ja/function.password-verify.php どのように使うか、については、以下のQiitaの記事が詳しいです。 https://qiita.com/rana_kualu/items/3ef57485be1103362f56 もう少しアルゴリズム等について踏み込んだ解説は下記のブログ記事が参考になります。 https://blog.ohgaki.net/password_hashing

dhtfyjh
質問者

お礼

ご丁寧にありがとうございました

その他の回答 (1)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

はい。ご推察の通り、ソルトは、ハッシュ化パスワードと共にDBに保存します。 それで問題ありません。

関連するQ&A