Maison > développement back-end > tutoriel php > Dans quelle mesure Salted MD5 est-il sécurisé par rapport aux autres méthodes de hachage de mot de passe ?

Dans quelle mesure Salted MD5 est-il sécurisé par rapport aux autres méthodes de hachage de mot de passe ?

DDD
Libérer: 2024-12-17 06:34:25
original
577 Les gens l'ont consulté

How Secure is Salted MD5 Compared to Other Password Hashing Methods?

Stockage des mots de passe en toute sécurité

Question : Dans quelle mesure le stockage des mots de passe à l'aide de MD5 avec un sel par rapport au simple MD5 ?

Réponse :

Garantir un stockage sécurisé des mots de passe est primordial pour la sécurité des données. Bien que le MD5 salé soit plus sûr que le MD5 ordinaire, il ne répond pas aux meilleures pratiques recommandées. La mise en œuvre d'une bibliothèque standard pour le stockage des mots de passe est la solution la plus efficace.

La mise à niveau vers l'API de mot de passe de PHP

PHP 5.5.0 a introduit une API de hachage de mot de passe simplifiée qui simplifie la sécurisation des mots de passe. stockage :

$hash = password_hash($_POST['password'], PASSWORD_DEFAULT, ['cost' => 12]);
$checked = password_verify($_POST['password'], $hash);
Copier après la connexion

Amélioration de la sécurité avec Pepper

Pour plus de sécurité, il est recommandé d'ajouter un « pepper » aux hachages de mot de passe salés (automatiquement) :

use Netsilik/Lib/PepperedPasswords;
$pepper = hex2bin('012345679ABCDEF012345679ABCDEF012345679ABCDEF012345679ABCDEF');
$hasher = new PepperedPasswords($pepper);
$hash = $hasher->hash($_POST['password']);
$checked = $hasher->verify($_POST['password'], $hash);
Copier après la connexion

Bibliothèque standard héritée : phpass

Pour les versions PHP antérieures à 5.5.0, utilisez phpass :

require('PasswordHash.php');
$pwdHasher = new PasswordHash(8, FALSE);
$hash = $pwdHasher->HashPassword($password);
$checked = $pwdHasher->CheckPassword($password, $hash);
Copier après la connexion

Considérations supplémentaires :

  • Évitez d'utiliser MD5 ou SHA1 pour le hachage de mot de passe.
  • Utilisez l'implémentation bcrypt de PHP, CRYPT_BLOWFISH .
  • Consulter Jeffrey Friedl Article de blog « Vous stockez probablement les mots de passe de manière incorrecte » pour plus d'informations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal