Maison > développement back-end > tutoriel php > [Hash Password] PHP est une méthode de cryptage plus sécurisée que md5

[Hash Password] PHP est une méthode de cryptage plus sécurisée que md5

藏色散人
Libérer: 2023-04-07 11:22:01
avant
4747 Les gens l'ont consulté

Méthode de cryptage traditionnelle :

md5 (mot de passe + valeur de sel);

$passwordString='your password';//你的密码
$salt="your salt value";//盐值,增加复杂度(随机字串)
$md5Password=md5($passwordString.$salt);
Copier après la connexion

Théoriquement, md5 est irréversible et constitue une méthode de cryptage relativement sûre. Mais je tiens à vous rappeler que md5 a été cracké par les Chinois dès 2004. Une fois que quelqu'un fait glisser la base de données, la possibilité de fuite de mot de passe est extrêmement élevée.

Recommande désormais une nouvelle méthode de traitement :

Fonction d'algorithme de hachage de mot de passe

password_get_info — renvoie le hachage spécifié (hash)

password_hash — Crée un hachage d'un mot de passe (hash)

password_needs_rehash — Vérifie si le hachage donné correspond aux options données

password_verify — Vérifiez si le mot de passe correspond au hachage

PHP5.5 introduit la fonction de hachage de mot de passe, fournie avec le noyau et ne nécessite pas l'installation d'extensions. Il est possible de le tester sous PHP5.4. Il est préférable de confirmer si votre environnement actuel supporte ces fonctions avant de l'utiliser.

Password Hashing fournit principalement 4 fonctions

//查看哈希值的相关信息
array password_get_info (string $hash)
 
//创建hash密码
string password_hash(string $password , integer $algo [, array $options ])
 
//判断hash密码是否特定选项、算法所创建
boolean password_needs_rehash (string $hash , integer $algo [, array $options ] 
 
boolean password_verify (string $password , string $hash)
//验证密码
Copier après la connexion

Démonstration de code :

$password = 'password123456';//原始密码
//使用BCRYPT算法加密密码
$hash_password = password_hash($password, PASSWORD_BCRYPT);
 
 
if (password_verify($password , $hash_password)){
   echo "密码匹配";
}else{
   echo "密码错误";
}
Copier après la connexion

Fonctionnalités importantes :

Après cryptage par password_hash Le mot de passe est difficile à déchiffrer en utilisant la méthode du dictionnaire car le mot de passe généré est différent à chaque fois. Ce cryptage ne peut être déchiffré qu’en utilisant la force brute.

Dernier rappel :

Peu importe la qualité de la méthode de cryptage, si le mot de passe d'origine est trop simple, il sera facilement piraté. le chemin à parcourir.

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!

Étiquettes associées:
php
source:51cto.com
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