非常に単純に暗号化された値をデータベースに保持する方法を理解しようとしています。明らかに、それほど敏感ではありません。しかし、暗号化された文字列を生成した後、crypt() 関数が文字列の前にある salt パラメータを残す方法はご存知でしょう。str_replace() を使用して削除しようとしていますが、機能していません。元の関数で使用したソルト パラメータがまだ含まれています。誰が私が間違っているのか教えてもらえますか?
<?php
$password=$_GET['password'];
$salt="$2x$07$654fadkdlaf6361q4z2fs$";
$passwordCrypt=crypt($password, $salt);
echo $passwordCrypt."<br />";
$trimmed = str_replace($salt, "", $passwordCrypt);
echo $trimmed;
?>
スクリプトの実行結果:
$2x$07$654fadkdlaf6361q4z2fs.QpVju.Don9u/cEmr6utzgUPP9CrH6ua
$2x$07$654fadkdlaf6361q4z2fs.QpVju.Don9u/cEmr6utzgUPP9CrH6ua