crypter un mot de passe

Eléphanteau du PHP | 19 Messages

19 juil. 2005, 14:50

Hum, encore un petit probleme vous, vosu etes passer par le where mais si le code cryptee est la donne que je veux tire de la base de donne, j efait comment ?

j'ai essyer plein de truc mais je trouve pa s !

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

19 juil. 2005, 14:55

il faut que tu cherches la fonction pour décrypter tes posts aussi parceque moi je comprend rien ! ;)

Eléphanteau du PHP | 19 Messages

19 juil. 2005, 14:58

dsl les gas je recommence dans votre script vous avec utuliser le décryptage en utulisant where masi si ceux que l'on veut en reponse de la requete c'est le truc coder on fait comment j'ai essayer plusieur truc mais sa marche pas!

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

19 juil. 2005, 14:59

ben il suffit de faire un Select en sélectionnant la colonne qui contient le mot de passe sans décrypter quel est le problème ??

Mammouth du PHP | 543 Messages

19 juil. 2005, 15:01

bah tu fais avec un
"select champs from table where pass=AES_CRYPT('".$var."',"password")";
fo bien cerner le cryptage et decryptage pour savoir dans quel sens l'utiliser :)

Eléphanteau du PHP | 19 Messages

19 juil. 2005, 15:04

Non c'est le mot de passe tu ompte qui ets crypter et donc c'est ce champs la que je veux en reponse et je veux le code une fosi decrypter pour le comparer a celui que m'a rentre le gas au niveau du where c'est


WHERE login =$login ^^

Mammouth du PHP | 543 Messages

19 juil. 2005, 15:08

Tu peux t'appliquer a taper stp :)

Sinon bah on t'a donné les requetes pour tout faire avec ca

quelqu'un sd'identifie, tu compare la valeur de la base avec le cryptage de c' qu'il a rentré

tu veux retourner la valeur du pass crypté, alors tu fé un select aes_decrypt(pass,"password") from table where....

Rien de plus

++
Modifié en dernier par raptor le 19 juil. 2005, 15:10, modifié 1 fois.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

19 juil. 2005, 15:09

tu veux comparer le mot de passe entré avec celui enregistré dans la base c'est ça ?

soit tu récupères le mot de passe décrypté :
SELECT fonctiondecrypt(champ_mdp) FROM comptes WHERE login = '$login'
soit tu cryptes le mot de passe entré et tu le compares avec celui enregistré directement

et c'est ce qu'on utilise généralement
1- on enregistre le mdp crypté en md5() -> irréversible
2 - à la connexion on crypte le mdp indiqué en md5() et on compare

Mammouth du PHP | 19672 Messages

19 juil. 2005, 15:10

C'est pourtant pas sorcier: si tu cherches le mot de passe à partir du pseudo, soit tu veux le mot crypté:
$sql = "SELECT mdp FROM membres WHERE pseudo = '". $pseudo ."';";
soit tu veux le mot de passe en clair:
$sql = "SELECT AES_DECRYPT(mdp,'". $cle_cryptage ."') FROM membres WHERE pseudo = '". $pseudo ."';";
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 19 Messages

19 juil. 2005, 20:57

hum j'avai essyer sa pourtant masi je croti que c'est que je metter une parenthese en plus c'est peut etre pour sa!

pour avoir la valeur cryptee j'avai trouve c'etait pas dur:

Mammouth du PHP | 19672 Messages

20 juil. 2005, 07:55

Finalement : [Résolu] :?: ou pas :?:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

20 oct. 2005, 23:23

J ai lu l'exemple en le comparant avec la documentation:

l'exemple:
$sql = "SELECT AES_DECRYPT(mdp,'". $cle_cryptage ."') FROM membres WHERE pseudo = '". $pseudo ."';"; 
jusquau la c bien, alors dans la documentation du MYSQL:

Code : Tout sélectionner

INSERT INTO t VALUES (1,AES_ENCRYPT("text","password")); Vous pouvez obtenir encore plus de sécurité en évitant de transférer la clé pour chaque requête, en la stockant dans une variable sur le serveur au moment de la connexion : SELECT @password:="my password"; INSERT INTO t VALUES (1,AES_ENCRYPT("text",@password));
la bonne methode d'inserer le mot de passe (my password) c dutiliser @password, mais est ce kon l utilise comme cite dans l'exemple:

Code : Tout sélectionner

SELECT @password:="my password"; INSERT INTO t VALUES (1,AES_ENCRYPT("text",@password));