Posez votre question Signaler

Hash md5 [Résolu]

Chamicki 524Messages postés 11 juin 2009Date d'inscription 10 août 2011Dernière intervention - Dernière réponse le 17 jun 2009 à 16:26
Bonjour,
je croyais qu'un hash md5 étais indescriptible et qu'il étais impossible d'en retrouver la valeur d'origine.
Hors j'ai trouver plusieurs site capable de faire la conversion...
Comment crypter mes mot de passe ?
Lire la suite 

Hash md5 »

7 réponses
Réponse
+3
moins plus
md5 est une fonction irréversible. Les site qui "font la conversion" font en fait une attaque par dictionnaire : ils possèdent une liste pré calculée de mots (au sens large) avec les hash correspondant et comparent ton hash à leur liste.

Si la valeur que tu hash n'est pas triviale, il devient très difficile de la retrouver puisque les dictionnaires ne contiennent pas toutes les valeurs possibles.

Une bonne pratique consiste à générer une chaîne aléatoire appelée sel ou salt (que tu stockeras aussi en base) et de calculer md5( "$password$string" ) au lieu de md5($password).
NooD - 17 jun 2009 à 13:38
Et même un peu plus que ça puisque des failles ont été trouvées dans l'algorithme (cf http://fr.wikipedia.org/wiki/MD5).
tu peux utiliser SHA-256, plus sûr mais la technique du grain de sel est efficace également.
pyschopathe - 17 jun 2009 à 15:26
C'est vrai que des collisions ont été créées artificiellement, mais pour une chaîne de caractère aussi courte qu'un mot de passe, la technique du bourrage me semble difficile à mettre en place de manière discrète, et il suffit de vérifier la longueur des données envoyées pour mettre à mal le bourrage (parce que trouver deux chaines qui ont le même hash, à la rigueur, mais pour qu'elles fassent environ la même taille, à 300% près, faut s'accrocher !).
Ajouter un commentaire
Réponse
+0
moins plus
Je crois que le meilleur moyen est un cryptage en Php qu 'on utilise pour les .htaccess.

Voir : http://www.siteduzero.com/...
Ajouter un commentaire
Réponse
+0
moins plus
C'est indéchiffrable la méthode crypt de php ?
pyschopathe - 17 jun 2009 à 16:22
crypt peut utiliser différents algorithmes, entre autres md5... Il faut savoir qu'aucun chiffrement n'est indéchiffrable : avec suffisamment de temps et de puissance de calcul, tout se casse. Mais dans le cas d'une application classique (pas de secret défense ou informations dans ce genre là), personne n'aura envie de passer 6 mois à faire tourner un cluster de mainframes pour casser un mot de passe. Il faut garder une échelle de mesures de sécurité cohérente avec ton application.

De plus, sécuriser les mots de passe en base n'est important que si ta base de données est compromise. Sans ça, il n'y a aucun intérêt.

Il faut être conscient que la sécurité globale de ton application correspond à la sécurité du maillon le plus faible. pense donc à protéger tes sessions, à n'autoriser les connexions que via un canal sécurisé, à protéger tes scripts des XSS et des injections sql, c'est bien plus important que trouver un algorithme de chiffrement inviolable pour stocker des mots de passe.
Ajouter un commentaire
Réponse
+0
moins plus
Ok merci, non c'est juste pour protéger une zone admin mais c'étais plus une question d'ordre générale pour savoir...
Ajouter un commentaire
Ce document intitulé « Hash md5 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook