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

  FORUM HardWare.fr
  Programmation

  [PHP] Cryptage

 



 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

[PHP] Cryptage

n°77067
Kyle
Posté le 30-11-2001 à 23:37:25  profilanswer
 

Salut !
 
Je souhaiterais savoir s'il y a une fonction qui crypte les données.
 
C'est pour un espace membre, donc il me faudra le résultat inverse, c'est a dire a partir du mot crypté, il faudra le décrypter ;)
 
Merci.

mood
Publicité
Posté le 30-11-2001 à 23:37:25  profilanswer
 

n°77068
Sh@rdar
Ex-PhPéteur
Posté le 30-11-2001 à 23:42:40  profilanswer
 

y a les fonctions mcrypt (cf la doc)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°77095
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 02:38:14  profilanswer
 

utilise md5($password)
tu le stockes dans ta bd en crypté et tu le cryptes qd tu le reçois lors d'un post avant de le comparer
(il y a pas de fct inverse)

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°77103
speedyop
Posté le 01-12-2001 à 02:42:38  profilanswer
 

md5 on peut pas le decrypter, dans le cas de recuperer son mot de passe donc c pas possible

 

[edtdd]--Message édité par speedyop--[/edtdd]

n°77105
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 02:44:52  profilanswer
 

c'est bien ce que je dis ;)
mais c pas spécialement nécessaire ...
BD --> md5($pwd)
POST --> md5($pwd_posté) =?= BD.pwd

n°77107
speedyop
Posté le 01-12-2001 à 02:47:41  profilanswer
 

pour des users neuneuh y'a souvent "mot de passe oublier?, on vous l'envoye pas email".

n°77108
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 02:49:32  profilanswer
 

:lol:
tu génères un autre pwd et tu lui refiles par email, à lui de le changer :D
 
c'est un point de vue comme un autre...

n°77109
speedyop
Posté le 01-12-2001 à 02:54:47  profilanswer
 

chuis presque sur qu'ici sur le forum HFR y'a pas de cryptage ;)

n°77110
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 02:58:52  profilanswer
 

hé hé tu as une âme de pirate :D
 
m'étonnerait pas non plus, mais j'ai pas encore regardé le cookie qu'ils nous filent ;)
 
--correction--
si si ils cryptent le pwd dans le cookie

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°77111
speedyop
Posté le 01-12-2001 à 03:09:50  profilanswer
 

bah en tout cas pas en md5... et pis me rappelle que sur gamekult on a le meme compte qu'ici...pourtant c pas le meme forum :D

mood
Publicité
Posté le 01-12-2001 à 03:09:50  profilanswer
 

n°77112
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 04:00:12  profilanswer
 

et pq pas en md5() ?
 
quelle est la différence entre le cryptage md5 et mcrypt que propose Sh@rdar ? je veux dire par là (pour ne pas rentrer dans des détails surement incompréhensible), y en a-t-il une meilleure qu'une autre ?
 
je suppose qd même que si mcrypt() est réversible, ça doit prendre moins de temps à cracker non ? m'étonnerait qu'on aie des clés public/privées dispo en php...

n°77113
Bruce
Music 4 your ears!
Posté le 01-12-2001 à 06:18:07  profilanswer
 

Le must reste un cryptage type md5, cela permet d'être sûr que le mdp ne soit pas décryptable.
La réversabilité n'est pas nécéssaire, tu crypte au vol le mdp entré et tu compare les deux mdp crypté...


---------------
A+++ Bruce - http://www.bheller.com
n°77116
Kyle
Posté le 01-12-2001 à 10:18:25  profilanswer
 

Je vais opter pour la solution à ethernal, c'est a dire générer un nouveau pass s'il y a une demande ! :)
Donc, je me tourne vers md5().

n°77123
Kyle
Posté le 01-12-2001 à 11:20:05  profilanswer
 

Bon, j'arrive a crypter le pass lorsque la personne s'inscrit.
Mais lorsque je veux me logger, je n'y arrive pas.
 
J'utilise cette requete :
 
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = md5('$pass';)" );
 
Est-ce exact ?

n°77152
Mara's dad
Yes I can !
Posté le 01-12-2001 à 13:18:37  profilanswer
 

Bruce a écrit a écrit :

Le must reste un cryptage type md5, cela permet d'être sûr que le mdp ne soit pas décryptable.
La réversabilité n'est pas nécéssaire, tu crypte au vol le mdp entré et tu compare les deux mdp crypté...  




 
Pas décryptable, c'est vite dit !
il suffit de tous les essayer pour trouver le bon !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°77163
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 13:45:36  profilanswer
 

kyle a écrit a écrit :

Bon, j'arrive a crypter le pass lorsque la personne s'inscrit.
Mais lorsque je veux me logger, je n'y arrive pas.
 
J'utilise cette requete :
 
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = md5('$pass';)" );
 
Est-ce exact ?  




 
tu dois le crypter en dehors de la requête pcq la fct n'est pas exécutée dans "...";
$cyptedPwd= md5($pwd);
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = $cryptedPwd" );
 
Dans myslq il existe la fonction Password('chaine à crypter';) et dans ce cas, tu peux la mettre dans la requête directement puisque mysql va la reconnaitre.  Mais je ne sais pas si elle correspond tout à fait à la fonction md5()
 
Mara's dad>oui ok, mais tu conviendras qu'un brute force est bcp plus lent, que d'appliquer une fonction de décryptage... ;)
sur une chaine de 8 caractères tu es parti pour qq années déjà en brute force...

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°77164
gizmo
Posté le 01-12-2001 à 13:45:45  profilanswer
 

Mara's dad a écrit a écrit :

 
 
Pas décryptable, c'est vite dit !
il suffit de tous les essayer pour trouver le bon !  




 
:sarcastic:  Si c'est la seule solution, on dit qu'il n'y a pas de décryptage.

n°77173
Mara's dad
Yes I can !
Posté le 01-12-2001 à 14:04:49  profilanswer
 

Ha bon ?
 
Pourtant, à partir d'un dico de mots de passe, en général on trouve assez vite !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°77174
skylight
Made in France.
Posté le 01-12-2001 à 14:07:52  profilanswer
 

speedyop a écrit a écrit :

chuis presque sur qu'ici sur le forum HFR y'a pas de cryptage ;)  




 
les passwords ne sont pas cryptés ds la base de données du forum ...

n°77175
Mara's dad
Yes I can !
Posté le 01-12-2001 à 14:10:14  profilanswer
 

Ben c'est normal, c'est l'accés à la base qu'est protégé, faut pas être parano !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°77179
gizmo
Posté le 01-12-2001 à 14:20:07  profilanswer
 

Mara's dad a écrit a écrit :

Ha bon ?
 
Pourtant, à partir d'un dico de mots de passe, en général on trouve assez vite !  




 
si le mot de passe est mal choisis, mais si je te mete un mot de passe de 30 caractères, tapés au hasard par mon chat marchant sur le clavier, la terre n'xistera plus d'ici a ce que tu le trouves.

n°77184
jolly
Posté le 01-12-2001 à 14:31:36  profilanswer
 

pour le cryptage je te conseille meme de faire mieux :
MD5 ( pass.login ..
 
ca rend qqch de plus sur encore que le pass seul !
( face a des pirates par ex ! )

n°77186
gizmo
Posté le 01-12-2001 à 14:34:24  profilanswer
 

par contre, ce que je pige pas c'est l'option prise par ce forum.
 
Le mot de passe est crypté dans le cookie, mais pas dans les formulaires, donc c'est un cryptage réversible, et en plus il suffit de copier le cookie pour l'utiliser ailleurs.

n°77195
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 14:57:10  profilanswer
 

jolly a écrit a écrit :

pour le cryptage je te conseille meme de faire mieux :
MD5 ( pass.login ..
 
ca rend qqch de plus sur encore que le pass seul !
( face a des pirates par ex ! )  




 
MD5 ( pass.login ..  :??:  
tu peux expliquer stp ? je ne vois pas ce que tu veux dire  :(
 

gizmo a écrit a écrit :

par contre, ce que je pige pas c'est l'option prise par ce forum.  
 
Le mot de passe est crypté dans le cookie, mais pas dans les formulaires, donc c'est un cryptage réversible, et en plus il suffit de copier le cookie pour l'utiliser ailleurs.




 
bha c'est comme dans tout les forums le pwd dans le coockie... tu as pas vraiment le choix pour ne pas demander l'autentification à chaque connexion.  Par contre c'est vrai que le décryptage dans les formulaire, je ne vois pas trop l'intérêt...

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°77196
gizmo
Posté le 01-12-2001 à 15:01:39  profilanswer
 

ethernal a écrit a écrit :

 
 
bha c'est comme dans tout les forums le pwd dans le coockie... tu as pas vraiment le choix pour ne pas demander l'autentification à chaque connexion.  Par contre c'est vrai que le décryptage dans les formulaire, je ne vois pas trop l'intérêt...  
 
 




 
pour le md5, il le fait sur l'ensemble login pas, comme ca, c'est un mot plus grand.
 
Sinon, pour les cookies, ca je sais, je le fait aussi, mais pourquoi le crypter...

n°77197
Zeplusoif
Posté le 01-12-2001 à 15:01:45  profilanswer
 

ethernal a écrit a écrit :

 
...  




 
 :hello:


---------------
If fate doesn't make you laugh, then you don't get the joke
n°77199
skylight
Made in France.
Posté le 01-12-2001 à 15:09:06  profilanswer
 

pour le cryptage des cookies, c independant du forum, c'est windows ...

n°77203
ethernal
Chercheur de vérité...
Posté le 01-12-2001 à 15:16:33  profilanswer
 

gizmo a écrit a écrit :

 
 
pour le md5, il le fait sur l'ensemble login pas, comme ca, c'est un mot plus grand.
 
Sinon, pour les cookies, ca je sais, je le fait aussi, mais pourquoi le crypter...  




 
pq le crypter ? pour éviter qu'un petit malin qui sniff le réseau ne choppe ton pwd ;)
au pire il le chope en crypté et s'il fait >8 carcatères et n'est pas un mot du dico, il mettra >2 ans à le trouver en cherchant 24h/24...
 
Zeplusoif> :hello: comment va ??    
 
skylight> windows crypte les coockies ?? hum c'est des fichiers textes tout à fait lisibles avec un notepad...

n°77205
gizmo
Posté le 01-12-2001 à 15:16:47  profilanswer
 

euh... pas sur, moi les cookies de mon forum ne sont pas cryptés.

n°77210
skylight
Made in France.
Posté le 01-12-2001 à 15:23:49  profilanswer
 

c lisible .. mais pas comprehensible ... tootes les cookies de mon pc sont cryptés ... donk j'me suis dit ..

n°77211
gizmo
Posté le 01-12-2001 à 15:27:07  profilanswer
 

ben si c'est compréhensible, tu as le nom de la variable, sa valeur, l'origine, la durée de vie, bref, les info importantes sont en clair.

n°77325
Kyle
Posté le 01-12-2001 à 22:50:00  profilanswer
 

ethernal a écrit a écrit :

 
 
tu dois le crypter en dehors de la requête pcq la fct n'est pas exécutée dans "...";
$cyptedPwd= md5($pwd);
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = $cryptedPwd" );
 
Dans myslq il existe la fonction Password('chaine à crypter';) et dans ce cas, tu peux la mettre dans la requête directement puisque mysql va la reconnaitre.  Mais je ne sais pas si elle correspond tout à fait à la fonction md5()
 
Mara's dad>oui ok, mais tu conviendras qu'un brute force est bcp plus lent, que d'appliquer une fonction de décryptage... ;)
sur une chaine de 8 caractères tu es parti pour qq années déjà en brute force...  
 
 




 
J'ai un autre probleme !
 
J'ai fais un echo de ma requete juste apres pour debugger et il me marque "Resource id #3"
 
Ca correspond a quoi ?

n°77327
gizmo
Posté le 01-12-2001 à 22:54:24  profilanswer
 

que la requete a utilisé la ressource 3 pour s'effectuer.

n°77328
Kyle
Posté le 01-12-2001 à 22:55:27  profilanswer
 

ok, mais du coups ma requete ne fonctionne pas, donc, on peut pas se logger :(

n°77330
gizmo
Posté le 01-12-2001 à 22:57:15  profilanswer
 

quoi, tu fais echo $req c'est ca? si oui, c'est normal! tu dois etraire les données de $req pour les exploiter.

n°77331
Kyle
Posté le 01-12-2001 à 22:58:39  profilanswer
 

en fait, j'ai fais un echo $req afin de debbuger car ca ne marchais pas !
 
Voila ce que j'ai écrit :
 
$cryptedPwd= md5($pass);
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = '$cryptedPwd'" );
echo "$req";

n°77334
gizmo
Posté le 01-12-2001 à 23:00:40  profilanswer
 

normal!
 
$cryptedPwd= md5($pass);
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = '$cryptedPwd'" );
$val=mysql_fetch_array($req);
echo "$val[nom_du_champ_a_voir]";

n°77336
Kyle
Posté le 01-12-2001 à 23:06:30  profilanswer
 

Bon, je sais pas si c'est moi qui est mal compris mais je réexplique.
 
Avec md5 je sais crypté un pass d'un membre lorsqu'il s'enregistre.
 
Moi je galere lors de l'identification, lorsque le membre veux se logger.
 
Voici le script de logg :
 
if(isset($submit)){
$cryptedPwd= md5($pass);
$req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = '$cryptedPwd'" );
$result = mysql_fetch_array($req);
if($surnom != $result[surnom] || $cryptedPwd != $result[pass]) {
$non = "Vous n'etes pas loggé !";
} else {
$email_session = $result[email];
session_start();
session_register("surnom" );
session_register("email_session" );
$oui = "Vous etes bien loggé !";
}
}
 
Et donc, ca ne marche pas .. :(

 

[edtdd]--Message édité par kyle--[/edtdd]

n°77339
gizmo
Posté le 01-12-2001 à 23:17:11  profilanswer
 

On va faire plus simple:
 
original:
 

Code :
  1. if(isset($submit)){
  2. $cryptedPwd= md5($pass);
  3. $req = mysql_query("select * from $table_membre where surnom = '$surnom' and pass = '$cryptedPwd'" );
  4. $result = mysql_fetch_array($req);
  5. if($surnom != $result[surnom] || $cryptedPwd != $result[pass]) {
  6. $non = "Vous n'etes pas loggé !";
  7. } else {
  8. $email_session = $result[email];
  9. session_start();
  10. session_register("surnom" );
  11. session_register("email_session" );
  12. $oui = "Vous etes bien loggé !";
  13. }
  14. }


 
modifié:
original:
 

Code :
  1. $cryptedPwd= md5($pass);
  2. $req = mysql_query("select email from $table_membre where surnom = '$surnom' and pass = '$cryptedPwd'" );
  3. if(!mysql_num_rows($req))
  4. {
  5.   echo "Vous n'etes pas loggé !";
  6. }
  7. else
  8. {
  9.   session_start();
  10.   session_register("surnom" );
  11.   session_register("result[email]" );
  12.   echo "Vous etes bien loggé !";
  13. }

n°77341
speedyop
Posté le 01-12-2001 à 23:18:57  profilanswer
 

fait d'abord la selection du password correspondant a l'user
 
$query="select password from matable where pseudo='".$pseudo."'";
if ($result=mysql_query($query))
{
if (mysql_num_rows($result)>0)
 {
 $user=mysql_fetch_array($result);  
//la tu fait la comparaison
 if ($user[$password]==md5(password))  
  {
  //la c ok  
  }      
 else
  {
  //la le password est mauvais
  // tu peut meme mettre un compteur pour compter le nombre de tentative infructueuse  et bloquer le compte au bout de trop
  }
 }
else
 {
 echo "aucun compte a ce nom";
 }
}
else
{
echo "erreur technique";
}

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

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

  [PHP] Cryptage

 

Sujets relatifs
[EASY PHP] Configurer l'envoi de mail ?[PHP] Phpmyadmin recherche d une version
[PHP] Combiner des if ?[Php ou JAVA] Je cherche un scrpit/source...
[PHP FREE ] Fatal error: Maximum execution time exceeded[PHP] Affichage de retours chariots dans un champ
problème sur le PHP et MYSQL HELP ME!!!!!!!PHP champs
[IMPORTANT] PHP - Fonction include ()[PHP] Datetime et formatage
Plus de sujets relatifs à : [PHP] Cryptage


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