IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

developpement avec php


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Centrafrique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 1
    Par défaut developpement avec php
    bonjour! j'ai créer un utilisateur dans ma base de données et j'ai crypté le mot de passe avec md5. pour la vérification lors de l'authentification,j'ai utilisé la méthode get. mais je ne sais pas crypter la valeur saisie dans le formulaire d'authentification pour faire la vérification.j'ai besoin d'aide. merci d'avance
    voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    <?php
    		   if(isset($_GET['login']) && isset($_GET['pwd'])){
    		        include_once("modules/configurations.inc");
    				Connection_mySql();
    		        mysql_select_db("moonsolutions13f") or die("erreur de connexion a la base de donnees");
    				$query = "SELECT * FROM `administrateurs` ";
    				$result = mysql_query($query) or die("erreur!!");
     
     
     
    				    $d = false;
    					while($row = mysql_fetch_row($result)){
     
     
     
     
    				if((strcmp($row[1],$_GET['login'])==0) && (strcmp($row[2], $_GET['pwd'])==0)){
    						   $d = true;
    						}
                        }
     
     
                    mysql_close();
    				if( $d == false){
    			       echo "<div class=\" TEXTE\">login ou mot de passe incorrecte</div>";
    			    }else{
    				   echo "<div class=\" TEXTE\">login et mot de passe correcte</div>";
    				   $_SESSION['login'] = $_GET['login'] ; 
    				   ?>
                       <script language="javascript" type="text/javascript">
                          <!--
                          window.location.replace("index2.php");
    					-->
    				   </script> 
                       <?php
    				}
    		   }
    		?>
            <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="get">
               <div class="TEXT" align="center">
                   <p>&nbsp;               </p>
                   <p>
                     <font color='black'><input name="login" type="text" value="login" size="30" onFocus="javascript:this.value = '';">
                     <br>
                     <input name="pwd" type="password" value="mot de passe" size="30" onFocus="javascript:this.value = '';">
                     <br>
                     <input type="submit" value="connexion"></font>
                   </p>
                   <p><a href="./pwd_oubliee.php">Mot de passe oubli&eacute;</a></p>
               </div>
             </form>

  2. #2
    Invité
    Invité(e)

  3. #3
    Membre confirmé
    Homme Profil pro
    Fabricant de ressorts - programmeur amateur
    Inscrit en
    Janvier 2003
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Fabricant de ressorts - programmeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2003
    Messages : 70
    Par défaut
    Le plus simplement du monde, tu cryptes le mot de passe que t'a fourni l'utilisateur en MD5 (même routine que lors de la saisie) puis tu compares les deux mots de passe codés (en privilégiant le fait que ton code récupère le mot de passe crypté dans la base de données par rapport au login, puis teste les deux mots de passe codés plutôt que d'aller chercher dans ta base de données si le couple login/mot de passe crypté correspond)
    D'après ce que je sais d'un codage MD5, il n'y a aucun moyen de revenir en arrière pour retrouver le mot de passe initial.

    Les fonctions ci-dessus ne te serviront que si tu utilises le cryptage correspondant qui lui est réversible.

  4. #4
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    @nektarfl
    Oui mais non, tu fais fausse route.

    jreaux62 a donné une réponse qui peut paraître un peu courte mais en même temps c'était la seule bonne réponse aujourd'hui. Il est très déconseillé d'utiliser MD5 ou même SHA pour hasher des mots de passe car la puissance des ordinateurs permet maintenant de les brute forcer en quelques jours voire moins suivant la puissance du réseau d'ordinateurs mis à la disposition des hackers.

    Donc il faut utiliser des fonctions actuelles plus renforcées qui coûtent plus de temps serveur. Et comme l'indique son nom, password_hash() crée un hash qui par définition est non réversible.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Réponse courte, certes, mais il suffit d'avoir la curiosité de cliquer sur les liens...

  6. #6
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Citation Envoyé par nektarfl Voir le message
    Le plus simplement du monde, tu cryptes le mot de passe que t'a fourni l'utilisateur en MD5 (même routine que lors de la saisie) puis tu compares les deux mots de passe codés (en privilégiant le fait que ton code récupère le mot de passe crypté dans la base de données par rapport au login, puis teste les deux mots de passe codés plutôt que d'aller chercher dans ta base de données si le couple login/mot de passe crypté correspond)
    D'après ce que je sais d'un codage MD5, il n'y a aucun moyen de revenir en arrière pour retrouver le mot de passe initial.

    Les fonctions ci-dessus ne te serviront que si tu utilises le cryptage correspondant qui lui est réversible.
    Avec MD5 on ne crypte pas (ca n'existe pas crypter en français d'ailleurs ) . C'est un hash donc on hache le mot de passe.
    Un MD5 est en théorie irréversible , sauf que dans les faits , MD5 est faillible. Il existe ce qu'on appel des rainbow table qui permettent à partir d'un md5 de trouver la chaine de caractère originale si elle est assez "connue".

    Les fonctions proposée par jreaux62 ne permettent pas non plus de revenir en arrière. Elle utilise par défaut BCrypt qui est un hash plus sécurisé.

    En 2017 utilisé MD5 pour un mot de passe est une erreur.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    c'est pourtant proposé dans la liste déroulante de phpmyadmin...

  8. #8
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Citation Envoyé par nine Voir le message
    c'est pourtant proposé dans la liste déroulante de phpmyadmin...
    Où ça, dans quel contexte ?

  9. #9
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Citation Envoyé par nine Voir le message
    c'est pourtant proposé dans la liste déroulante de phpmyadmin...
    C'est proposé dans phpmyadmin pour tout VARCHAR , ca veux pas dire que c'est une bonne idée de l'utiliser pour des mots de passe.
    MD5 reste valable dans certains cas , pas pour les mot de passe.

    que faut il choisir dans la liste deroulante si faut pas prendre md5, le mieux c quoi ?
    Il n'ya pas d'algo supporté par phpmyadmin suffisament robuste pour les mot de passe.
    Mais en pratique personne ne rempli sa base avec phpmyadmin c'est fait avec du code , et là on utilise bcrypt voir éventuellement sha256
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Application Android developpée avec PHP
    Par mesken dans le forum Mobiles
    Réponses: 0
    Dernier message: 27/01/2017, 01h17
  2. [Oracle] Requète non valide avec php mais OK dans sql developper
    Par bedomon dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/06/2012, 15h51
  3. Developper sous Android avec PHP
    Par QAYS dans le forum Langage
    Réponses: 3
    Dernier message: 14/10/2011, 11h26
  4. Eclipse et l'outil Xampp pour developpement avec PHP
    Par metrax dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/03/2007, 13h19
  5. Création d'utilisateur sous PostgreSQL 7.3.2 avec PHP
    Par duongkhang dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 06/06/2003, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo