Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1070 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Insérer son mot de passe crypté en 32 caractères

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Insérer son mot de passe crypté en 32 caractères

n°1618836
oli1987
Posté le 04-10-2007 à 13:46:36  profilanswer
 

Bonjour,
 
Mon site comprend une zone membres avec accès par mot de passe. Je voudrais crypter les mots de passe des users. Alors j'utilise la fonction md5(), et le mot de passe s'enregistre dans ma base de données sous forme d'une chaîne de 32 caractères hexadécimaux.
 
Mais lorsque je veux essayer si cela fonctionne en entrant mon mot de passe d'origine, cela ne marche pas. Sans doute faut-il taper les 32 caractères pour pouvoir entrer dans la zone.
 
Comment faire donc pour "décoder", dans le formulaire pour entre dans la zone privée, les 32 caractères hexadécimaux en mot de passe, celui enregistré lors de l'inscription ?
 
Merci d'avance à ceux qui m'aideront (et qui me comprendront d'abord) ...

mood
Publicité
Posté le 04-10-2007 à 13:46:36  profilanswer
 

n°1618841
nabbo
Posté le 04-10-2007 à 13:52:55  profilanswer
 

:hello:

 

tu récupères le mot de passe de l'utilisateur via un

Code :
  1. $password_clair=$_POST['password'];
 

puis tu "cryptes" le mot de passe obtenu :

Code :
  1. $password_hash=md5($password_clair);
 

puis tu vérifies que le mot de passe est bon :

Code :
  1. mysql_query("select user from users where password='".$password_hash."';" );
 

bon... l'exemple est simple, faut adapter à ton cas... et puis vérifier le nom de l'utilisateur, accessoirement ;)

 

:jap:


Message édité par nabbo le 04-10-2007 à 13:54:25
n°1618845
oli1987
Posté le 04-10-2007 à 13:58:01  profilanswer
 

grand merci ... Simpliste en effet, mais très efficace !!

n°1618854
anapajari
s/travail/glanding on hfr/gs;
Posté le 04-10-2007 à 14:03:57  profilanswer
 

Ou alors en utilisant la fonction md5 de mysql.

Code :
  1. mysql_query(sprintf("select user from users where password=md5('%s')", $_POST['password']));


Message édité par anapajari le 04-10-2007 à 14:04:07
n°1618879
oli1987
Posté le 04-10-2007 à 14:20:21  profilanswer
 

encore une question.
 
J'ai créé une page de récupération de mot de passe.
 
Lorsque l'user tape son pseudo, cela envoie rechercher le mot de passe dans le bdd.
 
Mais vu qu'il est composé de 32 caractères, comment leur demander de recomposer un seul mot ???

n°1618940
omega2
Posté le 04-10-2007 à 15:28:27  profilanswer
 

Tu demandes pas à la base, tu lui en fournis un nouveau par mail.

n°1618944
nabbo
Posté le 04-10-2007 à 15:31:53  profilanswer
 

:hello:
 
l'intéret de crypter le mot de passe est de ne pas garder de version en clair du mot de passe. Comme ça, si quelqu'un a un accès non autorisé à ta base, les dégats sont limités dans la mesure où il n'obtient que des mots de passe "cryptés", donc inutilisables (en théorie, car en pratique il existe des rainbow tables, et de plus, le MD5 n'est plus considéré comme sûr, car son efficacité a été mise à mal ces derniers temps.)
 
Bref, la principe du hashage des mots de passe (ce n'est pas du cryptage, car il est impossible de retrouver le mot de passe d'origine) est de ne pas garder le mdp en clair.
 
Donc, on ne peut pas redonner son mot de passe à l'utilisateur, car on ne le connait pas.
 
Si on veut changer un mot de passe, il faut un créer un nouveau, de manière aléatoire, puis demander à l'utilisateur de le changer.

n°1619020
oli1987
Posté le 04-10-2007 à 16:33:37  profilanswer
 

ok, merci bien pour votre aide !

n°1619032
FlorentG
Unité de Masse
Posté le 04-10-2007 à 16:42:55  profilanswer
 

Pour être encore plus blindé, utilise un autre cryptage, moi j'utilise sha-256

n°1619050
anapajari
s/travail/glanding on hfr/gs;
Posté le 04-10-2007 à 16:49:07  profilanswer
 

FlorentG a écrit :

Pour être encore plus blindé, utilise un autre cryptage, moi j'utilise sha-256


PIRATE!!! :o
Ce n'est pas légale d'utiliser des clés de plus de 128 bits pour du cryptage en france ( decret de 2001 je crois, ça doit bientot changer mais ce n'est pas encore le cas)

mood
Publicité
Posté le 04-10-2007 à 16:49:07  profilanswer
 

n°1619053
FlorentG
Unité de Masse
Posté le 04-10-2007 à 16:50:03  profilanswer
 

Ah bon ? [:johneh] Merde :D

n°1619054
zapan666
Tout est relatif
Posté le 04-10-2007 à 16:51:23  profilanswer
 

on chiffre, on ne crypte pas (terme qui n'existe pas, sisisi, c'est vrai)


---------------
my flick r - Just Tab it !
n°1619103
omega2
Posté le 04-10-2007 à 17:37:15  profilanswer
 

Ha ben si, ça existe :
- dans les cimetières (chambres funéraire/ tombeaux).
- dans les églises ( pièce construite sous l'édifice)
- dans les grottes (certaines parties difficile d'accés et à l'entré de petite taille sont nommé ainsi)
- dans le corps d'un animal ("Petite cavité située dans l'épaisseur des téguments ou des membranes muqueuses." )
- dans la psychologie ("Partie la plus intérieure de l'âme et la plus difficile à pénétrer." )
 
C'est également un animal : "Insecte (ordre des Hyménoptères) à antennes longues et grêles, à thorax épineux, à abdomen pédonculé et vivant dans les œufs des autres insectes ou le corps des pucerons."
 
Comme quoi le terme existe bel et bien (mais n'est pas un verbe) Mais bon, d'après ta page, il ne faudrait pas utiliser le verbe "crypter" par ce que le verbe "décrypter" signifie "décoder sans avoir la clé de décodage". Ca me semble légé comme raison surtout qu'une crypte (mot de même racine) à quand même comme définition première "endroit caché" donc ça me semble logique que le verbe "crypter" soit utilisé pour désigner l'action de cacher un élément (de manière à ce qu'il ne soit pas découvrable). Le couple chiffrer/déchiffrer qu'ils préconisent à sa place indique que c'est réversible ce qui n'est pas le cas d'un "cryptage". Leur argument de la perte d'un sens n'est donc pas vraiment recevable. Par contre leur argument comme quoi par abus de langage les gens confondent crypter et chiffrer est vrai.

n°1619108
zapan666
Tout est relatif
Posté le 04-10-2007 à 17:40:00  profilanswer
 


Crypter permet aussi de savoir ceux qui sont dans le milieu ou non.


---------------
my flick r - Just Tab it !
n°1619121
omega2
Posté le 04-10-2007 à 17:48:44  profilanswer
 

Et à ton avis, je suis de quel bord? :D Non par ce que je me sens pas vraiment du milieu moi. [:anathema]

n°1619399
rufo
Pas me confondre avec Lycos!
Posté le 05-10-2007 à 09:15:23  profilanswer
 

Effectivement, "crypter" n'existe pas : http://fr.wikipedia.org/wiki/Chiffrement
 
Je confirme aussi qu'en France, on n'a pas le droit d'utiliser des clés > 128 bits pour le chiffrement. Par contre, on a le droit de "hasher" en plus de 128 bits. md5 et sha sont des fonctions de hashage, pas de chiffrement  :o Elles sont donc parfaitement légales en France.
Petit rappel : chiffrer, c'est réversible (on peut retrouver le message d'origine via une clé), pas hasher. Une autre différence il me semble aussi : chiffrer n'induit pas de collisions, le hashage, si (2 messages différents qui donnent la même signature md5 ou sha-256).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Insérer son mot de passe crypté en 32 caractères

 

Sujets relatifs
[Access] lancement auto via Batch et Mot de passe?extraire les deux premiers caracteres d'une chaine de caracteres
[Macro WORD] Comment insérer plusieurs images ?[r,solu]pb de caractères dans les .bat
[PHP] Noms de fichiers avec des caractères japonaiscomment recuperer mot de passe
PHP & MySQL chez Free, où stocker le mot de passe ?inserer des images sur excel
[Asp] Login / Mot de passeChanger le mot de passe
Plus de sujets relatifs à : Insérer son mot de passe crypté en 32 caractères


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR