[php]fonction contraire du md5? [Résolu/Fermé]

Signaler
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
-
Messages postés
1
Date d'inscription
jeudi 5 décembre 2013
Statut
Membre
Dernière intervention
5 décembre 2013
-
bonjour

je sais bien qu'il existe la fonction md5 en php, qui sert à brouiller un mot de passe.
<?php
$mot_de_passe = "secret";
$mot_de_passe_hash = md5($mot_de_passe)

echo $mot_de_passe_hash;

?>


là le mot de passe est complètement illisible.

quel est le code pour rendre ce "mot de passe brouillé" de nouveau lissible??

merci
A voir également:

14 réponses

Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021
4 265
Je n'ai pas lu tous les posts.
"Déhasher" un md5 est impossible
Pour renvoyer le mot de passe : Méthode Vernam
6
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
928
C'est impossible.
Le but de la fonction de hashage md5 est de proposer un 'résumé' d'une suite d'octets => chaîne de 32 digits hexadécimaux , soit 128 bits.
Il n'existe pas (encore ?) d'algorithme permettant de trouver une suite d'octets fournissant un hash md5 donné dans un temps économiquement rentable.

(tout au plus la force brute avec utilisation de dictionnaires si les mots de passe sont mal choisis)

md5sum verifier l integrite des telechargements
Johan
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
mais alors, comment faire si par exemple quelqu'un perds son mot de passe???
par exemple si quelqu'un s'inscrit à un site, mais oublie son mot de passe...comment on fait pour lui renvoyer son mot de passe si pendant l'inscription au site, le mot de passe est "haché" avec md5???
Il existe des logiciels de cassage, cependant pas très légaux.

Pour ton cas, simplement cliquer sur "j'ai oublié mon pass" et le forum régénère un nouveau pass envoyé sur le mail préalablement enregistré :-)
Pour décrypter un mot de passe Hashé en MD5, le site suivant le permet, dans la majeure partie des cas !

https://www.frameip.com/decrypter-dechiffrer-cracker-hash-md5/
On ne peut rendre de nouveau "lisible" le mot de passe (sinon, md5 ne servirait à rien) : on applique aussi md5 au mot de passe saisi par l'utilisateur, puis on le compare à celui qui est mémorisé dans MySQL.
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
ben en fait ce serait pour créer ça sur un site que je suis en train de créer.

un truc dans le genre "entrez votre adresse e-mail" et toutes ces infos lui sont envoyées, mais pour les mots de passe, c'est bien un problème si je dois les renvoyer...

je voudrais essayer de faire un mmail de "mot de passe perdu" et de tout pouvoir afficher correctement...
erf, le code réponse redéconne, pfffffffff

Tit changement de navigateur :-)

Si tu casses les mots de pass, ça ne va pas mettre en confiance :-)
Voir les sites pirates (je mets pas ici, vu que c'est illégal)
sinan tu envois un nouveau pass par défaut, c'est plus simple et ça met en confiance :-)
ok je vais faire comme ça alors.

a+
Lu maxime_B,

En fait MD5 est irreversible, cependant, regarde ici :
https://www.frameip.com/decrypter-dechiffrer-cracker-hash-md5/

Tu y trouveras 500 Millions de Mot déjà hashé, ainsi tu y retrouveras peux être instantanément ton mot de passe.

@+

_SebF - Sébastien FONTAINE
https://www.frameip.com/
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
merci ;)
Messages postés
1
Date d'inscription
samedi 21 février 2009
Statut
Membre
Dernière intervention
21 février 2009
1
Salut tout le monde.

Il y a peut être une solution de retrouver le mot de passe.
Est ce que tu pourrais pas le mettre dans ta base de données non haché ?
Messages postés
17
Date d'inscription
dimanche 4 janvier 2009
Statut
Membre
Dernière intervention
17 mai 2011
59
en faite le but est de ne pas avoir de version en clair du mot de passe, par contre pour savoir si les mots de passe correspondent il faut comparer leur md5 lors du login. avec un truc du gner
if(md5($_POST['pass']) == md5_du_mot_de_passe_en_base)
{
/*les mots de passe correspondent :D*/

}
Messages postés
62
Date d'inscription
mercredi 23 septembre 2009
Statut
Membre
Dernière intervention
1 août 2013
4
ben moi quand je crypte 123 en md5, sa donne ça: 202cb962ac59075b964b07152
et je met sa dans la db
quand je crypte 123 en md5 via $_POST['passwd']; sa donne ça: 202cb962ac59075b964b07152d234b70

il y a toujours un "d234b70" ou quelque chose comme ça qui se rajoute à chaque crypt

help please?
tks
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
Oui c'est ce que je faisais. En fait mon but à cette époque était de pouvoir renvoyer le mot de passe par mail en cas de perte, mais je me suis résigné.
Messages postés
17
Date d'inscription
dimanche 4 janvier 2009
Statut
Membre
Dernière intervention
17 mai 2011
59
En faite si tu utilises une fonction de hash (sha1 ou md5) tu ne peux pas renvoyer son mot de passe en claire à l'utilisateur il faut lui en générer un nouveau en cas de perte que tu renvoies par email.
ben tu met pas de md5 tout simplement...
Oui, mais c'est pas secur...
Messages postés
1
Date d'inscription
jeudi 5 décembre 2013
Statut
Membre
Dernière intervention
5 décembre 2013

En fait, c'est probablement un problème de longueur du champ 'password' dans la bdd qui l'oblige à tronquer les mots hachés.

Il faut vérifier ce paramètre !
ad0d02da1173253680db878fc469186b
je veux mot de passe
Essai sa :
<?   
$mdp = "le mot de passe";   
$md5 = md5($mdp);   

echo "<font color='blue'>Le mot de passe encrypter: </font>" .$md5 ;   

echo "<br /><br /><font color='blue'>L emot de passe decrypter: </font>" .$mdp ;   
?>   


c'est vraiment simple comme code mais ;)..

ou sa :
<?  
$mdp = "le mot de passe";  
$md5 = md5($mdp);  
$sha1 = sha1($mdp);  
$b64 = base64_encode($mdp);  

echo "<font color='blue'>Ton mot de passe encrypter en Md5: </font>" .$md5 ;  
echo "<br /><br /><font color='red'>Ton mot de passe encrypter en Sha1 : </font>" .$sha1 ;  
echo "<br /><br /><font color='green'>Ton mot de passe encrypter en Base64 : </font>" .$b64 ;  

echo "<br /><br /><font color='magenta'>Ton mot de passe décrypter: </font>" .$mdp ;  
?>