- password_hash: password_hash関数は、与えられたパスワードをハッシュ化する役割を持ちます。ハッシュ化とは、元のパスワードを不可逆な形式に変換することです。これにより、パスワードがデータベースなどの保存先で安全に保管されることができます。
以下は、password_hash関数を使用した例です:
$password = "my_password";
$hashedPassword = password_hash($password, PASSWORD_DEFAULT);
上記のコードでは、変数$passwordに元のパスワードを格納し、password_hash関数を使用してハッシュ化されたパスワードを変数$hashedPasswordに格納しています。PASSWORD_DEFAULTは、現在のデフォルトのハッシュアルゴリズムを使用することを意味します。
- password_verify: password_verify関数は、ユーザーが提供したパスワードが、保存されたハッシュ化されたパスワードと一致するかどうかを検証するために使用されます。
以下は、password_verify関数を使用した例です:
$password = "my_password";
$hashedPassword = "$2y$10$Vl2yNqL2yIuWNsEJvs4I7eZ3yvRq0/fK1JiRvC2Y9p0GRF4Oc6j7K";
if (password_verify($password, $hashedPassword)) {
echo "パスワードが一致しました。";
} else {
echo "パスワードが一致しません。";
}
上記のコードでは、変数$passwordにユーザーが提供したパスワードを格納し、変数$hashedPasswordには保存されたハッシュ化されたパスワードが格納されます。password_verify関数を使用して、提供されたパスワードと保存されたハッシュ化されたパスワードを比較し、一致する場合は「パスワードが一致しました。」と表示されます。
これらの関数を使用することで、パスワードのセキュリティを向上させ、安全な認証システムを実装することができます。