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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL et fonction PASSWOR('...')

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

MySQL et fonction PASSWOR('...')

n°1523316
clem85
http://www.luttiau.info
Posté le 03-03-2007 à 21:46:31  profilanswer
 

bonjour,
 
je suis en train de créer un site avec un espace privé.  
 
ma table  user dispose d'un champ appelé user_pass qui est paramétré en varchar de 50.
 
lorsque j'insère des données dans cette table ma requete est celle-ci:
 

Code :
  1. INSERT INTO user (..., user_pass,...) VALUES (..., PASSWORD('motdepasse'), ...);


 
je voulais savoir si il était possible de décrypter le mot de passe une fois qu'il est inseré ? j'ai cherché sur le manuel mysql sans réponse ...
 
merci d'avance de votre aide!


Message édité par clem85 le 03-03-2007 à 21:57:24
mood
Publicité
Posté le 03-03-2007 à 21:46:31  profilanswer
 

n°1523575
clem85
http://www.luttiau.info
Posté le 05-03-2007 à 09:35:37  profilanswer
 

UP SVP, personne ne sait si sa ne peut pas se décrypter, un peu comme le md5 ??

n°1523603
soulmanto
Chat Noir replica
Posté le 05-03-2007 à 10:42:22  profilanswer
 

Password ne se décrypte pas... utilise plutot une des fonctions de chiffrement parmi celles-ci

n°1524162
chani_t
From Dune
Posté le 06-03-2007 à 09:11:50  profilanswer
 

En même temps pour un mot de passe tu n'as pas nécessairement besoin de pouvoir récupérer le dit mot de passe.. Il te suffit juste de comparer les chaînes aprés Hash/cryptage.
 
et puis Mysql à partir de la version 4.2 permet d'utiliser un encryptage/decryptage
AES_ENCRYPT(str,key_str)
AES_DECRYPT(crypt_str,key_str)
 
 
en bref, regarde la doc... il y a plétorre de solutions ;)

n°1524928
clem85
http://www.luttiau.info
Posté le 07-03-2007 à 01:17:52  profilanswer
 

oui c'était juste pour renvoyer le mot de passe a un utilisateur qui l'aurais perdu ...
 
merci de l'aide, je vais chercher avec les pistes que vous m'avez donné !

n°1525111
TotalRecal​l
Posté le 07-03-2007 à 12:07:20  profilanswer
 

le mieux pour renvoyer un mot de passe perdu, c'est en fait d'en régénérer un nouveau.

 

Souvent les mots de passe tels qu'ils sont stockés ne sont pas cryptés mai hashés (md5 ou autre). Comme ça ils sont illisibles en cas de piratage de la base, mais on peut vérifier que celui entré par l'utiliseur concorde avec ce qui se trouve dans la base.

 

edit : je vois que tu utilises la fonction password de mysql pour générer tes mots de passe. Il me semble que c'est déconseillé, cette fonction devrait juste servir pour la gestion en interne des mdp du serveur sql. Mais je me trompe peut être, moi je n'ai jamais travaillé avec.

Message cité 1 fois
Message édité par TotalRecall le 07-03-2007 à 12:52:42

---------------
Topic .Net - C# @ Prog
n°1525308
soulmanto
Chat Noir replica
Posté le 07-03-2007 à 15:22:56  profilanswer
 

TotalRecall a écrit :


edit : je vois que tu utilises la fonction password de mysql pour générer tes mots de passe. Il me semble que c'est déconseillé, cette fonction devrait juste servir pour la gestion en interne des mdp du serveur sql. Mais je me trompe peut être, moi je n'ai jamais travaillé avec.


 
Non, tu ne te trompe pas... C'est vrai qu'il est déconseillé d'utiliser PASSWORD() pour crypter les mots de passe. les fonctions AES_ENCRYPT() et AES_DECRYPT() sont parmi les mieux indiquées, d'autant que l'utilisation d'un salt rend le piratage plus difficile

n°1525550
clem85
http://www.luttiau.info
Posté le 07-03-2007 à 21:02:38  profilanswer
 

pour AES_ENCRYPT et AES_DECRYPT, j'ai compris et je pense que je me débrouillerait avec le manuel mysql mais pour la fonction SALT, c'est quoi , une fonction mysql également ? je n'ais rien trouvé sur php.net ou mysql.com ...  
 
merci de m'éclairer

n°1527250
soulmanto
Chat Noir replica
Posté le 12-03-2007 à 11:20:24  profilanswer
 

Non, non, le salt, c'est le grain de sel (souvent une chaine aléatoire) qui complique le travail des éventuels hackers qui voudraient décrypter ton mot de passe...

n°1527842
chani_t
From Dune
Posté le 13-03-2007 à 13:40:01  profilanswer
 

L'inconvénient du salt, c'est que tu es obligé de le stocker quelque part. Et un salt unique, peut perdre de son intérêt.

mood
Publicité
Posté le 13-03-2007 à 13:40:01  profilanswer
 

n°1529310
clem85
http://www.luttiau.info
Posté le 16-03-2007 à 08:58:35  profilanswer
 

quelqu'un peut me montrer comment on peut appliquer AES_DECRYPT SVP car j'arrive à crypter avec AES_ENCRYPT dans un champs BLOB comme conseillé dans le manuel mysql mais je n'arrive pas a sortir mon texte crypté.
 
Merci de votre aide

n°1529397
TotalRecal​l
Posté le 16-03-2007 à 11:24:19  profilanswer
 

ton texte n'est il pas trop long? LA clé est bonne ?
Comme par tester sur des choses simples...

 

un truc de ce genre :

 

INSERT INTO aes VALUES ( AES_ENCRYPT( " un truc ", "cle" ) )

 

SELECT aes_decrypt( champ, "cle" )FROM aes

 

ça doit passer.


Message édité par TotalRecall le 16-03-2007 à 11:24:30

---------------
Topic .Net - C# @ Prog
n°1532490
clem85
http://www.luttiau.info
Posté le 23-03-2007 à 08:42:34  profilanswer
 

je viens de tester ceci:  
 

Code :
  1. INSERT INTO testclem VALUES ('', AES_ENCRYPT( "un truc", "cle" ) );
  2. SELECT AES_DECRYPT( test, "cle" ) FROM testclem;


 
et cela ne fonctionne pas ... j'ai testé sur une base sur free, je ne pense pas qu'ils aient désactivé uniquement la fonction AES_DECRYPT alors que AES_ENCRYPT fonctionne ...
 
merci de votre aide !

n°1532739
TotalRecal​l
Posté le 23-03-2007 à 12:40:15  profilanswer
 

aucune raison que ça marche pas, t'es sûr que ton champ s'appelle bien comme ça ? C'est quoi ce '' pour le premier champ, un autoincrement moche ?
en local ça marche pas mieux ? (même si je vois pas la moindre raison pour que free ait qqch contre aes). Et y a un msg d'erreur ?


---------------
Topic .Net - C# @ Prog
n°1532769
soulmanto
Chat Noir replica
Posté le 23-03-2007 à 13:37:42  profilanswer
 

Free n'a rien contre AES, puisque je l'utilise sans problème sur plusieurs sites! :o

n°1533411
clem85
http://www.luttiau.info
Posté le 25-03-2007 à 19:01:38  profilanswer
 

Voici la réponse de ma requête:
 

Code :
  1. #1305 - FUNCTION comptefree.AES_DECRYPT does not exist


 
et je confirme, mon ' ' est un autoincrement (moche comme tu dit).
 
oui, j'ai vérifié les noms de ma table et de mon champ. le fait que je l'ai mis en BLOB mon champ ou je rentre mon AES sa aurait pas une incidence même si j'ai vu cela sur le site de mysql ?
Soulmanto, peut-tu confirmer que mes requêtes sont justes s'il te plait ?
 
Merci

n°1533416
TotalRecal​l
Posté le 25-03-2007 à 19:20:02  profilanswer
 

il te dit qu'il ne trouve pas de fonction avec ce nom là. C'est pas logique, donc il faut chercher ce qui lui fait dire ça : le problème se trouve peut être au niveau de tes arguments, du "test" par exemple. C'est bien le bon nom de champ avec le bon type ?


---------------
Topic .Net - C# @ Prog
n°1535360
clem85
http://www.luttiau.info
Posté le 28-03-2007 à 17:02:24  profilanswer
 

oui, test est bien le nom de mon champ qui est de type BLOB, quel type me conseillez-vous de mettre ?

n°1535430
TotalRecal​l
Posté le 28-03-2007 à 19:14:51  profilanswer
 

Blob ça devrait fonctionner sans le moindre pb.
 
Moi je dis fais le même test en local avec exactement le même script sql (create db/table, insert, select). C'est bizarre ton histoire, depuis le début tout devrait marcher. Soit y a une bizarrerie chez free (mouais...) soit tu commets une erreur dont tu ne nous dis rien.


---------------
Topic .Net - C# @ Prog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL et fonction PASSWOR('...')

 

Sujets relatifs
MySQL : garder son nom[mySQL] Expressions rationnelles
MySQL : Faire un MAX[réglé] fonction de calcul de distance
MySQL et default value = chaine vide[PHP] supprimer contenu d'une table mysql
Pb d'appel BD avec mysql 5.0.26Probleme pour écrire dans un fichier avec la fonction fwrite
fonction de recherche sur page web[MySQL]Contrainte unicité = index
Plus de sujets relatifs à : MySQL et fonction PASSWOR('...')


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