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 :

Mots de passe sécurisés avec PHP 5.5 [Tutoriel]


Sujet :

Langage PHP

  1. #21
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 184
    Points : 409
    Points
    409
    Par défaut
    OK je comprend ton point de vue, cependant je ne parlais pas du risque de collisions, mais du fait de pouvoir trouver 2 ou plusieurs collisions à la demande à partir d'un hash donné, ce qui est à mes yeux une faille bien plus importante qu'une "simple" faille bruteforce qui permet uniquement de casser un mdp dans un dictionnaire ou inférieur à un certain nombre de caractères.
    Je doute que quelques gpu parallélisés puisse venir à bout d'un password sha1 de 20 caractères utf8 en moins de quelques millions d’années, alors que s'il était en md5 il suffirai de trouver une collision, et ce en quelques heures...

  2. #22
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 43
    Points
    43
    Par défaut
    Tu racontes n'importe quoi ("cependant je ne parlais pas du risque de collisions, mais du fait de pouvoir trouver 2 ou plusieurs collisions" WTF?) et tu ne sais pas de quoi tu parles (tout le reste de ton WTF) donc je passe la main.

  3. #23
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 184
    Points : 409
    Points
    409
    Par défaut
    Citation Envoyé par jb_gfx Voir le message
    Tu racontes n'importe quoi ("cependant je ne parlais pas du risque de collisions, mais du fait de pouvoir trouver 2 ou plusieurs collisions" WTF?) et tu ne sais pas de quoi tu parles (tout le reste de ton WTF) donc je passe la main.
    Salut!
    Je peux me tromper, l'erreur est humaine, mais j'aimerai un peu plus d'arguments que "Tu ne comprends rien à rien, inutile de discuter"

    Tu ne m'as peut être pas bien compris, peut être n'ai-je pas été assez clair. Quand j'entend "risque de collisions", j'entend risque que sur un grand nombre de chaines hashés je trouve 2 hashs identiques sans pouvoir les prévoir. Quand j'entend "trouver 2 hashs à la demande", je veux dire partir d'un hash et trouver 2 chaines différentes qui génèrent ce hash. C'est peut être toujours pas assez clair, mais tu pourras trouver une démo qui montre comment des chercheurs ont réussi à générer 2 exécutables différents qui possèdent le meme md5: http://www.mscs.dal.ca/~selinger/md5collision/

    Si c'est possible sur des binaires, c'est aussi possible sur des passwords, cela dit apparemment le bruteforce reste à l'heure actuelle la méthode préférée des crackers.

    J’espère avoir éclairé le WTF ou pas

  4. #24
    Membre expérimenté
    Avatar de Jarodd
    Profil pro
    Inscrit en
    Août 2005
    Messages
    851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 851
    Points : 1 717
    Points
    1 717
    Par défaut
    Depuis le temps que cet article est en haut de mes favoris, je viens de prendre le temps de le suivre, merci à son auteur.

    J'ai juste une question concernant la partie IV. Vérifier un hash, notamment la fonction password_needs_rehash(). L'article dit :

    On peut utiliser ce test après avoir changé le coût de l'algorithme pour permettre aux utilisateurs de réinitialiser leur mot de passe de manière progressive, au fur et à mesure qu'ils accèdent au site.
    Je ne comprends pas trop ce que cela signifie (réinitialiser le mot de passe de manière progressive ?!?), et concrêtement l'usage qu'on peut faire de cette fonction. Est-il possible d'avoir quelques éclaircissements ? Merci

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

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

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    En fait plutôt que de changer tous les mots de passe d'un coup, tu peux le faire de manière progressive, c'est à dire que chaque utilisateur va régénérer son hash.

    Admettons qu au lancement de ton site tu as choisi une complexité de 10.
    Puis plus tard tu passes à 12.
    En lançant password_need_rehash tu vas avoir un retour positif puisque ton hash sauvegardé à une complexité de 10 mais que tu le veux désormais à 12.

    password_need_rehash vérifie simplement que le hash en paramètre correspond aux options fournies (allo, complexité)
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #26
    Membre expérimenté
    Avatar de Jarodd
    Profil pro
    Inscrit en
    Août 2005
    Messages
    851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 851
    Points : 1 717
    Points
    1 717
    Par défaut
    Ok merci Grunk.

    Donc la méthode n'est a priori pas à appeler à chaque connexion de l'utilisateur (contrairement à ce que j'avais compris : il change son mdp en trois fois - de manière progressive - )

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

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

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    En fait la méthode sera à appeler à chaque fois dès que tu vas induire un changement dans l'algo de cryptage au cours de la vie de ton site. Si tu ne changes jamais , tu n'auras pas besoin de t'en servir.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Mots de passe sécurisés avec PHP 5.5
    Par grunk dans le forum Langage
    Réponses: 1
    Dernier message: 18/04/2014, 09h24
  2. Mots de passe sécurisés avec PHP 5.5
    Par grunk dans le forum Langage
    Réponses: 1
    Dernier message: 18/04/2014, 09h24
  3. Mots de passe sécurisés avec PHP 5.5
    Par grunk dans le forum Langage
    Réponses: 1
    Dernier message: 18/04/2014, 09h24
  4. [MySQL] Création d'un login et mot de passe securisé avec PHP/MySQL
    Par NicoMontreal91 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 28/09/2008, 22h01
  5. [Sécurité] Crypter un mot de passe UNIX avec PHP
    Par dom78 dans le forum Langage
    Réponses: 3
    Dernier message: 15/05/2006, 19h28

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