Pb mot de passe crypter

Eléphant du PHP | 223 Messages

13 mai 2008, 11:23

Bonjour

j'ai un probleme j'ai achete un site pour gere les domaine de mon serveur
depuis la derniere mise as jour les passwords des domaine son crypter
exemple : RHR7RbYj4OItcE7BhnTXrL/zKgGxOSZ1dR9L9DKl5v6C6KFpJxQDZ74=-ENCODED


j'ai fait un page pour recuper les password par mail mais je le recois crypter

$titre    = "Contact NetUtyl-NetWorK";
$tete     = "From: $adr_mail \n";
$tete    .= "Content-Type: text/html;";
$nom = $_POST['nom'] ;
$prenom = $_POST['prenom'] ;
$mail = $_POST['mail'] ;
$corps = $_POST['corps'] ;
$embody = "<BR><BR><b>Contact NetUtyl-NetWorK<BR><BR></b>nom : $nom <BR>prenom : $prenom <BR>mail : $mail <BR><BR>$corps";
$ok = mail($adr_mail, $titre, stripslashes($embody), $tete);
echo"<BR><BR><BR><BR><BR><BR>";
echo"<TAble border=\"0\" align=\"center\">
            <TR><TD align=\"center\">Votre demande sera trait&eacute;e dans les plus brefs d&eacute;lais</TD</TR>
            <TR><TD align=\"center\">Une r&eacute;ponse par Email vous sera envoyer</TD</TR>
     </TABLE>
";
comment decrypter le password

merci

ViPHP
ViPHP | 5924 Messages

13 mai 2008, 13:05

Euh, c'est moi ou ce code n'a rien à voir avec ton problème ?
Il ne faut pas poster du code pour poster du code…

Eléphant du PHP | 422 Messages

13 mai 2008, 13:44

Comment a été crypté le mot de passe ? Parce qu'il y a des algorithmes de codage irréversibles : c'est-à-dire impossible à décrypter.

Eléphant du PHP | 223 Messages

13 mai 2008, 14:19

desole
Euh, c'est moi ou ce code n'a rien à voir avec ton problème ?
Il ne faut pas poster du code pour poster du code…
Oui je viens de voir le code poste j'ai du fausse manip

donc le cryptage est fait avec un cle
j'ai cree une page de recup du mot de passe par mail.
je recois bien le mail mais le password est tjr crypter.
comment decrypter dans mon mail le passe word
merci

Eléphant du PHP | 422 Messages

13 mai 2008, 15:36

Oui, le cryptage est fait avec une clé, comme la plupart des cryptages.

Par exemple, souvent pour les mots de passe, on utilise le cryptage md5 qui est irréversible. C'est à dire qu'on stocke le mot de passe crypté et quand l'utilisateur se connecte, on crypte ce qu'il a saisi et on compare. Mais c'est plus une signature numérique qu'un cryptage, car on ne peut pas décrypter un code qui est passé par la moulinette md5, même avec la clé.
C'est d'ailleurs pour ça que dans certains systèmes, quand tu as perdu ton mot de passe, le programme t'en génère un nouveau : c'est parce qu'il est incapable de retrouver le code en clair à partir du code crypté.

Donc, ce qu'il faudrait savoir, c'est quel algorithme de cryptage du mot de passe est utilisé. Cela permettra de savoir si ce que tu cherches à faire est possible ou pas.

Eléphant du PHP | 223 Messages

13 mai 2008, 16:26

Comment s'avoir le cryptage ?

Eléphant du PHP | 422 Messages

13 mai 2008, 17:30

je ne sais pas.
je ne connais pas ton application.
et en plus, j'ai séché les cours "devin 1ere année" :D

A toi de trouver parmi tous les fichiers, un fichier dont le nom semble évoquer un enregistrement d'un utilisateur (un truc style save_user.php), ou alors un fichier qui contient les textes présents sur la page d'enregistrement et puis à chercher dans le code, à quel endroit il y a un "insert" avec un champ "password" ou quelque chose qui y ressemble.

A ce niveau-là, tu dois faire appel à ton bon sens et suivre pas à pas le spaghetti des appels de fonctions ...

ViPHP
AB
ViPHP | 5818 Messages

13 mai 2008, 18:07

Oui, le cryptage est fait avec une clé, comme la plupart des cryptages.

Par exemple, souvent pour les mots de passe, on utilise le cryptage md5 qui est irréversible. C'est à dire qu'on stocke le mot de passe crypté et quand l'utilisateur se connecte, on crypte ce qu'il a saisi et on compare. Mais c'est plus une signature numérique qu'un cryptage, car on ne peut pas décrypter un code qui est passé par la moulinette md5, même avec la clé.
C'est d'ailleurs pour ça que dans certains systèmes, quand tu as perdu ton mot de passe, le programme t'en génère un nouveau : c'est parce qu'il est incapable de retrouver le code en clair à partir du code crypté.

Donc, ce qu'il faudrait savoir, c'est quel algorithme de cryptage du mot de passe est utilisé. Cela permettra de savoir si ce que tu cherches à faire est possible ou pas.
Comme tu le dit, MD5 tout comme son successeur SHA1 sont des signatures numériques. Et pour bien faire la différence par rapport au cryptage (qui est réversible) on parle de hash. Et donc dans ce cas, il n'y a bien entendu pas de clé :)

Eléphant du PHP | 422 Messages

13 mai 2008, 18:39

Et donc dans ce cas, il n'y a bien entendu pas de clé :)
Il ne s'agit pas d'une clé au sens strict du terme. Mais comme on trouve de plus en plus de bases de données de signatures md5 pour les termes courants, on peut utiliser une "clé" que l'on concatène au texte à signer avant de le md5-iser.
$key = "ZSO*d1&R9";
$signature = "md5($mot_de_passe.$key);
Cela dit, le code donné par hashut n'est pas du md5, ni du sha1. Le = à la fin fait penser à du base64, mais ça donne quelque chose de pas beaucoup plus lisible
echo base64_decode ("RHR7RbYj4OItcE7BhnTXrL/zKgGxOSZ1dR9L9DKl5v6C6KFpJxQDZ74=");

Code : Tout sélectionner

Dt{EЖ#рт-pNС�tзЌПѓ*Б9&uuKє2Ѕцў�шЁi'gО

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

13 mai 2008, 19:47

il pourrait s'agir d'un base64_encode() d'un texte md5-iser.

J'utilise souvent une librairie de hashage de cette sorte :
$pass_clair = 'monpass';
$salt = '@h@h@h';

$value = $pass_clair.$salt;
$pass_encrypt = base64_encode(md5($value))
mais le résultat par base64_decode() ne me laisse pas penser à un md5 "normal"
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphanteau du PHP | 39 Messages

15 mai 2008, 12:38

Essaye ça, car même si tu n'a pas les mots de passe en claire tu peut faire un test d'égalité du mot de passe crypté

Code : Tout sélectionner

$req="select*from abonne where abo_login='$login' and abo_password=PASSWORD('$pass')";
bon courage
C'est en forgeant qu'on se forge