コード:
echo password_hash("stackoverflow", PASSWORD_DEFAULT, ['salt' => 'twenty-one-characters'] );
結果:
Warning: password_hash(): Provided salt is too short: 21 expecting 22
コード:
echo password_hash("stackoverflow", PASSWORD_DEFAULT, ['salt' => 'twenty-one-charactersA'] );
結果:
$2y$10$dHdlbnR5LW9uZS1jaGFyYOVyX13hK9eb4/KXMAkHsAJX..YR7t/32
コード:
echo password_hash("stackoverflow", PASSWORD_DEFAULT, ['salt' => 'twenty-one-charactersB'] );
$2y$10$dHdlbnR5LW9uZS1jaGFyYOVyX13hK9eb4/KXMAkHsAJX..YR7t/32
質問:
ご覧のとおり、A と B を 21 文字の文字列に追加することで、22 文字の 2 つの異なるソルトを作成しましたが、HASHES は同じです! 22文字目無視ですか?無視された場合、なぜ 22 文字のソルトを要求するのでしょうか?