私は長い間、PHPassを使用してパスワードをハッシュしています。パスワードを適切にハッシュするために完全に理解していない(または無視している)ことがまだあることを認めます。そのため、今日、私はパスワードについて見つけたすべての情報を確認していました。
PHPassドキュメントを確認して、私はこれに足を踏み入れました:
実際のハッシュに加えて、phpassは、新しいパスワードまたはパスフレーズがハッシュされると、ランダムなソルトを透過的に生成し、ハッシュタイプ、ソルト、およびパスワード拡張反復カウントを、返す「ハッシュエンコーディング文字列」にエンコードします。phpassは、保存されているハッシュに対してパスワードまたはパスフレーズを認証するときに、同様に透過的にハッシュタイプ識別子、ソルト、および「ハッシュエンコーディング文字列」からの反復カウントを抽出して使用します。したがって、あなたは自分で塩漬けやストレッチを気にする必要はありません-phpassはあなたのためにこれらを世話します。
気になった文章を太字にしました。
私はいつも、塩は攻撃者に知られてはならないという意味で、いくらか秘密にすべきだと思っています。したがって、正しく理解されていれば、PHPassは同じハッシュで使用されているソルトを保存するため、パスワードを比較して有効かどうかを確認するときに使用できます。
私の質問は
- これは安全ですか?ハッシュが危険にさらされている場合、攻撃者はパスワードのハッシュに使用されるソルトを持っています...ここで私が見逃していることがあります。
- 私はここでパスワードのソルトについて本当に自由に悩んでいますか?本当にPHPassに頼ることができますか?