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

Langage PHP Discussion :

[Sécurité] Cryptage MD5 et sécurité ?


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Points : 258
    Points
    258
    Par défaut [Sécurité] Cryptage MD5 et sécurité ?
    Bonjour à tous,
    je suis en train de faire une classe "user" pour la gestion des accès sécurisés, et je me pose des questions sur les meilleurs cryptages...
    j'utilise 2 méthodes qui sont le crypt() de php avec le "salt", et le MD5.
    Je n'ai pas du tout confiance avec le MD5, qui semble pourtant une référence.
    On sait que que logiciels de password crackers en viennent à bout.

    Qu'en pensez-vous ? et pendant qu'on y est, que pensez-vous de la fonction crypt() ?
    Merci de vos éclaircissements.
    C'est curieux chez les marins ce besoin de faire des phrases !

  2. #2
    Membre régulier Avatar de dark_vidor
    Homme Profil pro
    Élève
    Inscrit en
    Janvier 2005
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Élève

    Informations forums :
    Inscription : Janvier 2005
    Messages : 321
    Points : 118
    Points
    118

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Points : 691
    Points
    691
    Par défaut
    salut

    le probleme ne vient pas tant du principe de cryptage bien que md5(est un hash), mais vient des mots de passe utilisateur bien souvent trop light
    je pense que le mieux est d'utilisé une classe disons Sécurité afin que ta class user ne depande pas du type de cryptage que tu utilise
    personnelemnet j'utilise sha1

  4. #4
    Membre actif Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Points : 258
    Points
    258
    Par défaut
    C'est vrai, les pb de sécurité viennent souvent du choix des mots de passe trop lights...
    J'ai prévu un dictionnaire des mots de passe courants (16000 mots de passe) qui est parcouru quand 1 utilisateur change son mot de passe. Si son mot de passe est dedans, c'est pas accepté et l'utilisateur doit en choisir 1 autre...
    C'est curieux chez les marins ce besoin de faire des phrases !

  5. #5
    wkd
    wkd est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 112
    Points : 65
    Points
    65
    Par défaut
    t'as pas à avoir peur, il ne fonctionne ke dans un seul sens le MD(hashage)
    Le forum est là pour ceux qui ont déjà passé des heures et des heures à chercher la petite bête et qui n'ont pas encore trouvé le moyen de l'attraper...

  6. #6
    Membre averti
    Profil pro
    Ingénieur en électronique
    Inscrit en
    Septembre 2004
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur en électronique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 419
    Points : 333
    Points
    333
    Par défaut
    le seul probléme a mon sens du md5 s'est que des hackers en ont fait des base de données .....

    A savoir toutes les bases peuvent avoir se probléme , si une personne souhaite hacker les mot de passe ...

    S'est pourquoi , tout les utilisateur , doivent savoir qui ne faut jamais toujours métre le méme mot de passe ....

  7. #7
    Membre actif Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Points : 258
    Points
    258
    Par défaut
    Tu as raison WKD, mais ce qui m'inquiète c'est l'efficacité des logiciels de crackage par "brute force" pour ce genre de cryptage...
    Et qui marchent plutôt bien...
    Et là je rejoins l'avis de jeff_!, plus le mot de passe est robuste, plus le mdp est long à trouver.
    C'est curieux chez les marins ce besoin de faire des phrases !

  8. #8
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    En utilisant un salt tu rends obsolète le dico.

  9. #9
    Membre actif Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Points : 258
    Points
    258
    Par défaut
    Pourquoi le dico est obsolète ?
    La vérif se fait comme ça:
    l'utilisateur entre son nouveau mot de passe.
    Avant l'envoi du formulaire, son mot de passe est encrypté en MD5 par javascript.
    la vérif se fait côté serveur sur un dico MD5 par rapport au mot de passe reçu et déjà encrypté en MD5.
    S'il n'y a pas de similarité, on encrypte le mot de passe (déjà en MD5) avec crypt() et on insert dans la base.
    Donc le salt est utilisé après la vérif du dico.
    Ca doit marcher, non ?
    C'est curieux chez les marins ce besoin de faire des phrases !

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    Salut à tous,

    le salt est utile parce que sans lui, si tu trouves l'algorithme de chiffrement utilisé, tu peux déchiffrer tous les mot de passes de ta bdd.
    => utile si ton serveur mysql a été hacké...
    Avec le salt, tu connais uniquement le chiffrement d'un seul mdpasse, les autres ne sont donc pas compromis (n'oublie pas que même avec un mdpasse crypté, tu peux t'authentifer!!)


    Tu peux aussi aller voir , ils expliquent la technique du grain de sel un peu mieux que moi...

    Sinon va voir , ya la base pour un site sécurisé (avec un minimum d'effort...).

  11. #11
    Membre éprouvé
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Points : 1 164
    Points
    1 164
    Par défaut
    Avant l'envoi du formulaire, son mot de passe est encrypté en MD5 par javascript.
    oula, tu veux pas lui dire quels sont tes accès root au passage ?

    Sachant qu'aucne méthode n'est sur travail par obsfucation autant que possible. Donc hash le pass coté serveur. Et utilise SSL pour ne pas envoyer le password en clair si tu flippes tant que cela.

    Pour ce qui est de l'utilisation du salt dans ce cas précis, c'est juste l'ajout d'un ou N caractères en fin de password lorsque c'est en clair, puis de le hasher.
    Ainsi en utilisant un salt tels TTFGKFDKG et un pasword light tels que toto, le hashage se fera sur : totoTTFGKFDKG
    Ce qui est beaucoup plus compliqué à casser avec un dico, et autant plus compliquè à casser par un brute force, surtout par internet.

    Après tu l'auras compris il n'y à plus qu'à comparé l'empreinte enregistré dans la base donnée avec le password modifié avec ton salt privé puis hasher pour savoir si le mot de passe fournit correspond à l'utilisateur.

    crypt est à oublié.

  12. #12
    Membre actif Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Points : 258
    Points
    258
    Par défaut
    Citation Envoyé par ePoX
    oula, tu veux pas lui dire quels sont tes accès root au passage ?

    Sachant qu'aucne méthode n'est sur travail par obsfucation autant que possible. Donc hash le pass coté serveur. Et utilise SSL pour ne pas envoyer le password en clair si tu flippes tant que cela.
    ...
    crypt est à oublié.
    Je hash côté client et côté serveur. Le MD5 côté client n'est qu'une sécurité (partielle) supplémentaire. J'aime pas trop ça (+ ça va et moins j'utilise le javascript, il n'y a que le côté serveur de vraiment stable ) mais je me dis que c'est mieux que rien.
    Quant à crypt(), effectivement j'ai oublié... sha1 avec un salt, ça me paraît bien.
    C'est curieux chez les marins ce besoin de faire des phrases !

Discussions similaires

  1. [Sécurité] Cryptage et grain de sel
    Par Gwipi dans le forum Langage
    Réponses: 6
    Dernier message: 05/09/2012, 16h13
  2. [Sécurité] Cryptage simple d'entier
    Par Florent08800 dans le forum Langage
    Réponses: 19
    Dernier message: 13/07/2006, 15h26
  3. [Sécurité] Cryptage des mots de passe
    Par franfr57 dans le forum Langage
    Réponses: 9
    Dernier message: 25/04/2006, 14h04
  4. [Sécurité] Authentification MD5
    Par dinastar dans le forum Langage
    Réponses: 4
    Dernier message: 16/03/2006, 16h48

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