Comment hasher des mots de passe en PHP de façon sécurisée
Guide complet pour hasher et vérifier des mots de passe en PHP avec password_hash(), bcrypt et Argon2.
Questions fréquentes
Comment utiliser password_hash() en PHP ?
Utilisez password_hash($password, PASSWORD_BCRYPT) ou PASSWORD_ARGON2ID. Pour vérifier : password_verify($input, $hash). N'utilisez jamais md5() ou sha256() directement pour les mots de passe en PHP.
Quelle est la différence entre PASSWORD_BCRYPT et PASSWORD_ARGON2ID ?
Bcrypt est éprouvé et très bien supporté. Argon2ID (PHP 7.3+) est plus moderne et recommandé par les standards actuels (RFC 9106). Les deux sont sécurisés pour la production.
Pourquoi ne pas utiliser SHA-256 pour les mots de passe en PHP ?
SHA-256 est trop rapide — un attaquant peut tester des milliards de mots de passe/seconde. Bcrypt et Argon2 ont un facteur de coût configurable qui ralentit intentionnellement le calcul pour résister aux attaques brute force.