Probleme de codage mot de passe en md5

Résolu/Fermé
Joncavidulienne - 9 juin 2014 à 10:16
 Joncavidulienne - 9 juin 2014 à 18:14
Bonjour,

J'ai un problème de codage de mot de passe:

Mon code pour insérer dans ma base de données:

$rec=$bdd->query ("INSERT INTO utilisateur(utinom,utiadresse,utiville,uticode,utimail,utilog,utipas) VALUES('$nom','$adresse','$ville','$code','$mail','$login','".md5($pass)."')");

Mon code pour reconnaître l'utilisateur:

$req=$bdd->query("SELECT * FROM utilisateur WHERE utilog='".$pseudo."' AND utipas='".md5($pass)."'") or die(print_r($bdd->errorInfo()));

Çà marche en local mais pas sur le serveur (1 and 1)
Je cherche mais je ne trouve pas l'erreur.
Quelqu'un aurait-il la solution? Merci pour votre aide.
A voir également:

3 réponses

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
9 juin 2014 à 10:47
Bonjour,

Commence par regarder le hash md5 enregistré sur chaque base (local et 1and1).
Vérifie que pour un même mot de passe, tu obtiens la même chose en base de données.
Ça permettra déjà de savoir si le problème vient de l'INSERT ou du SELECT...

Essaie également avec des mots de passes très simples (genre azerty), puis plus compliqués (avec apostrophes, accents...), voir si cela fonctionne avec les mdp simples mais pas les complexes.

Xavier
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
9 juin 2014 à 14:16
Note supplémentaire: laisse tomber le MD5, sa "sécurité" a été craquée depuis longtemps, des rainbow tables énormes de mot de passes sont disponibles un peu par tout sur le net; donc en cas de fuite d'infos, les MDP se retrouvent en clair pour la plupart.
Opte pour un hachage plus fort, SHA256 par ex:
hash('sha256', $pass);

Ça coûte rien de changer tant que personne ne s'est inscrit, et c'est plus sûr ;)
0
Joncavidulienne
9 juin 2014 à 18:14
Juste pour dire que j'ai trouvé la solution (après des heures de tâtonnements).
En fait dans ma base de données j'avais indiqué varchar 32 pour uticode.
Il n'y avait pas assez de place pour le mot de passe codé . J'ai modifié en varchar 250 et tout va bien.
Si çà peut aider quelqu'un.
0