La technologie de cryptage que nous utilisons dans le développement de sites Web php est MD5, donc l'utilisation de l'algorithme de cryptage MD5 peut être est-il crackable ou le cryptage md5 est-il réversible ? Jetons d'abord un coup d'œil à deux technologies de cryptage de données PHP couramment utilisées.
Technologie de cryptage des données PHP
Les algorithmes de cryptage Md5() et Sha1() sont À sens unique, il n'y a pas de fonction inverse pour obtenir les données en texte brut d'origine
Appel d'algorithme :
chaîne md5 ( string $str [, bool $raw_output = false ] )
string Sha1 ( string $str [, bool $raw_output = false ] )
Paramètres
str
Ficelle brute.
raw_output
Si raw_output facultatif est défini sur TRUE, alors le rapport MD5 Le texte le résumé sera renvoyé au format binaire brut d’une longueur de 16 octets.
Valeur de retour
MD5() sous forme de nombre hexadécimal de 32 caractères Renvoie le valeur de hachage.
Sha1() renvoie la valeur de hachage sous la forme d'un nombre hexadécimal de 40 caractères.
$p = "123456";
écho md5($p);
?>
Sa sortie est la suivante :
e10adc3949ba59abbe56e057f20f883e
Mais il est très dangereux d'utiliser la fonction md5() de cette manière. Dans ce cas, vous pouvez rechercher. Décryptage md5 sur Baidu Vous trouverez des sites Web décryptés :
.
On peut voir qu'il n'est pas sûr d'utiliser la fonction md5() directement comme ci-dessus. Bien que l'algorithme md5 soit irréversible , parce que le résultat de son calcul pour la même chaîne de caractères est unique, certaines personnes peuvent utiliser une "attaque par dictionnaire" pour briser le système de cryptage md5. Bien qu'il s'agisse d'un décryptage par force brute, il est très efficace car les mots de passe des utilisateurs de la plupart des systèmes ne sont pas très longs, donc les données finales codées par notre md5 peuvent être déchiffrées via certains sites Web :
Évidemment, il a été cracké. Ce n'est pas assez compliqué pour utiliser directement l'algorithme md5(). , puis le code Modifier comme suit :
$p = "123456";
écho md5(md5($p ).md5($p));
?>
Résultat imprimé :
efd52a4f82c94f80f13671ebd7cd2a6d
Aller à site à cracker :
Evidemment, son résultat est faux, notre mot de passe est 123456 au lieu de zéro.
Nous pouvons chiffrer via l'algorithme multicouche md5() basé sur une fonction md5(), car c'est unidirectionnel, peut-être vous demandez-vous pourquoi le site Web peut être piraté, dans fait le site Web Le meilleur est le craquage par force brute. Ils enregistrent constamment divers codes et mots de passe, puis les associent pour finalement obtenir le mot de passe.
Pour une méthode de craquage MD5 spécifique veuillez vous référer à : Partage de code de décryptage php md5 (interface ci-jointe, disponible pour des tests personnels)
Articles connexes :
php md5 peut-il être décrypté ?
php md5 algorithme et outils de cryptage et de décryptage (avec code)
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!