PHP
Secure Password Hashing with Argon2id (PHP)
Learn to securely hash user passwords using PHP's password_hash function with Argon2id, preventing common brute-force and rainbow table attacks.
<?php
// Hash a password
$password = 'mySuperSecretPassword123!';
$hashed_password = password_hash($password, PASSWORD_ARGON2ID);
echo "Hashed Password: " . $hashed_password . "
";
// Verify a password
$user_input_password = 'mySuperSecretPassword123!'; // Password provided by user
if (password_verify($user_input_password, $hashed_password)) {
echo "Password is valid!
";
} else {
echo "Invalid password.
";
}
// Important: For production, ensure PHP 7.2+ for native Argon2id support.
How it works: This snippet demonstrates how to securely hash and verify user passwords in PHP using the `password_hash()` and `password_verify()` functions with the `PASSWORD_ARGON2ID` algorithm. Argon2id is currently recommended for its resistance against both GPU-based and side-channel attacks. Hashing passwords instead of storing them in plain text is a fundamental security practice, protecting user credentials even if your database is compromised.