Décrypter md5
Résolu/Fermé
Omen
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Comment décrypte-on un texte crypté par la méthode md5 en PHP ?
Omen
Omen
A voir également:
- Md5 decrypt
- Decrypt md5 - Meilleures réponses
- Décryptage md5 - Meilleures réponses
- Md5 checksum - Télécharger - Web & Internet
- Md5 - Télécharger - Gestion de fichiers
- Htpasswd decrypt - Forum Webmastering
- Decrypter md5 ✓ - Forum PHP
- Sha1 decrypt ✓ - Forum Bases de données
43 réponses
En même temps généralement il faut déjà savoir comment obtenir le mot de passe haché et si tu n'a ni accès à la machine ni au fichier/database contenant le mot de passe haché ça va te prendre un poil plus de temps.
Avant de vouloir à tout prix dé-hacher un mot de passe, faudrait peut être déjà savoir comment l'obtenir...
Avant de vouloir à tout prix dé-hacher un mot de passe, faudrait peut être déjà savoir comment l'obtenir...
fiddy
Messages postés
11069
Date d'inscription
Statut
Contributeur
Dernière intervention
1 846
Oui, mais il existe des techniques d'attaques permettant de récupérer les informations sur le mot de passe stocké dans une base de données (pour peu qu'il y ait des failles, bien sûr, mais quand même). Et j'ai déjà vu quelque société lors d'audits mettant en clair le mot de passe au lieu d'utiliser un salt + hash. Et ça, ça fait peur.
Le md5 est décryptable (a mon grand étonnement)
Sur authsecu.com, ils doivent avoir un algo spécial, je sais pas...
le lien:
https://www.frameip.com/decrypter-dechiffrer-cracker-hash-md5/
(c'est aussi le 2eme resultat google en tapant "decrypter md5")
Sur authsecu.com, ils doivent avoir un algo spécial, je sais pas...
le lien:
https://www.frameip.com/decrypter-dechiffrer-cracker-hash-md5/
(c'est aussi le 2eme resultat google en tapant "decrypter md5")
Non il n'est pas décryptable, c'est un algorithme irréversible. Par contre, il est possible de se constituer une méga base de données contenant l'association message/hash et d'optimiser le tout (rainbow tables) ce qui donne un excellent compromis temps/mémoire.
C'est pour ça qu'il faut toujours mettre un salt avant de chiffrer un mot de passe.
Quoiqu'il en soit le MD5 n'est pas déchiffrable, même s'il n'est plus conseillé de l'utiliser à cause des bons algorithmes conduisant aux collisions.
C'est pour ça qu'il faut toujours mettre un salt avant de chiffrer un mot de passe.
Quoiqu'il en soit le MD5 n'est pas déchiffrable, même s'il n'est plus conseillé de l'utiliser à cause des bons algorithmes conduisant aux collisions.
loool md5 totalement décytptable en résumé comparé un md5 qui a éré trouver dans un base de données exemple d484f4gf7h84gg78e=hackedby apres tu prends celui que tu ne trouve pas 4fg5gfh45h5g5hf9 et tu compare selon un technik simpl ki se résume a 'le vert=jaune+bleu
le vert étant hackedby et le but grace a sa est de trouver le contenut de cette couleur dans lotre md5
compliker mais un peut de logique arrétez découter les ragot du net mdr sinn dite moi comment un gamin de 17a a pu hacker le site de la nasa hahaha
le vert étant hackedby et le but grace a sa est de trouver le contenut de cette couleur dans lotre md5
compliker mais un peut de logique arrétez découter les ragot du net mdr sinn dite moi comment un gamin de 17a a pu hacker le site de la nasa hahaha
Toi, t'as pas lu ce qui précède :
on ne décrypte pas le MD5, on trouve juste un message qui a le même MD5 que l'on cherche.
Imagine que l'on dise : la clé c'est 2 et c'est le résultat de la différence de deux nombres, tu ne peux pas retrouver ces nombres, mais simplement en trouver qui aboutissent au même résultat : 4-2, 8000-7998, 45-43...
Un MD5 est un condensé d'information, pas un cryptage d'information.
on ne décrypte pas le MD5, on trouve juste un message qui a le même MD5 que l'on cherche.
Imagine que l'on dise : la clé c'est 2 et c'est le résultat de la différence de deux nombres, tu ne peux pas retrouver ces nombres, mais simplement en trouver qui aboutissent au même résultat : 4-2, 8000-7998, 45-43...
Un MD5 est un condensé d'information, pas un cryptage d'information.
Bon c'est vraiment un topic qui intéresse du monde: percer le secret d'une mot de passe ou d'un texte...
Je ne suis pas comme fiddy un spécialiste mais j'ai quelques sommaires notions d'analyse combinatoire.
Alors un md5, c'est quoi: c'est 128 bits qui est obtenu à partir d'une chaîne de caractères (à prendre au sens large, un texte de 100...000 caractères est une chaîne de caractères).
Alors voici pourquoi, quelquesoit la fiabilité du hash md5, il est quasiment impossible d'être certain de la chaîne d'origine.
128 bits -> 2^128 soit seulement 3,4 * 10^38 possibilités.
Soit un texte composé des 72 caractères (26 majuscules, 26 minuscules, 10 chiffres et 10 ponctuations) possibles; si le texte fait:
- 10 caractères -> 72^10 soit 3,4 * 10^18 possibilités (10^18 = 1 milliard de milliard = 1 Giga de giga).
- 20 caractères -> 72^20 soit 1,4 * 10^37 possibilités, on peut envisager (en supposant qu'il n'y ait pas de doublons) qu'à chaque chaîne puisse correspondre un 'code' md5,
- 21 caractères -> 72^21 soit 1 * 10^39 possibilités, il y a forcément des doublons.... donc impossibilité d'être sûr du message d'origine.
- 1000 caractères (environ 1/2 page) -> 72^1000 soit 2,2 * 10^1857, il y aura donc forcément (en supposant une répartition moyenne des inévitables doublons) -> (2,2 * 10^1857) / (3,4 * 10^38) soit 6,3 * 10^1818 textes de 1000 caractères correspondant à un 'code' md5; autant dire qu'il est quasiment impossible d'avoir une table de correspondance.
Donc si la chaîne est très courte (mais déjà pour 10 caractères il faut déjà une table de 34 milliards de gigaoctets), lui ajouter une chaîne 'salt' est une méthode satisfaisante et, d'autre part, mettre des caractères tordus dans un mot de passe évite qu'une solution soit trouvée dans des dictionnaires ridiculement petits.
En espérant ne pas m'être trompé dans mes calculs, je souhaite à tous une bonne réflexion.
Je ne suis pas comme fiddy un spécialiste mais j'ai quelques sommaires notions d'analyse combinatoire.
Alors un md5, c'est quoi: c'est 128 bits qui est obtenu à partir d'une chaîne de caractères (à prendre au sens large, un texte de 100...000 caractères est une chaîne de caractères).
Alors voici pourquoi, quelquesoit la fiabilité du hash md5, il est quasiment impossible d'être certain de la chaîne d'origine.
128 bits -> 2^128 soit seulement 3,4 * 10^38 possibilités.
Soit un texte composé des 72 caractères (26 majuscules, 26 minuscules, 10 chiffres et 10 ponctuations) possibles; si le texte fait:
- 10 caractères -> 72^10 soit 3,4 * 10^18 possibilités (10^18 = 1 milliard de milliard = 1 Giga de giga).
- 20 caractères -> 72^20 soit 1,4 * 10^37 possibilités, on peut envisager (en supposant qu'il n'y ait pas de doublons) qu'à chaque chaîne puisse correspondre un 'code' md5,
- 21 caractères -> 72^21 soit 1 * 10^39 possibilités, il y a forcément des doublons.... donc impossibilité d'être sûr du message d'origine.
- 1000 caractères (environ 1/2 page) -> 72^1000 soit 2,2 * 10^1857, il y aura donc forcément (en supposant une répartition moyenne des inévitables doublons) -> (2,2 * 10^1857) / (3,4 * 10^38) soit 6,3 * 10^1818 textes de 1000 caractères correspondant à un 'code' md5; autant dire qu'il est quasiment impossible d'avoir une table de correspondance.
Donc si la chaîne est très courte (mais déjà pour 10 caractères il faut déjà une table de 34 milliards de gigaoctets), lui ajouter une chaîne 'salt' est une méthode satisfaisante et, d'autre part, mettre des caractères tordus dans un mot de passe évite qu'une solution soit trouvée dans des dictionnaires ridiculement petits.
En espérant ne pas m'être trompé dans mes calculs, je souhaite à tous une bonne réflexion.
Les maths m'ont donnés envie d'aller plus loin. Il me semblent que les résultats ne collent pas à la réalité. En effet, dans ton exemple tu utilises 72 caractères différents, hors rien qu'avec ceux qui me sont accessible simplement sur mon clavier, j'arrive à 132 caractères (56 lettres minuscules/majuscules + 10 chiffres + 15 accents + 51 caractères spéciaux et de ponctuation) mais j'imagine qu'au moins les 256 caractères de l'ASCII étendu sont supportés par MD5.
Ce qui donne pour 10 caractères :
256^10 =1,2 x 10^24
Au lieu de :
72^10 = 3,4 x 10^18
Il suffit alors de 16 caractères pour obtenir :
256^16 => 3,4 x 10^39
Ce qui donne :
(3,4*10^39)/(3,4*10^38) soit en moyenne 10 mots différents pour une même chaîne de hash MD5.
Ce qui donne pour 10 caractères :
256^10 =1,2 x 10^24
Au lieu de :
72^10 = 3,4 x 10^18
Il suffit alors de 16 caractères pour obtenir :
256^16 => 3,4 x 10^39
Ce qui donne :
(3,4*10^39)/(3,4*10^38) soit en moyenne 10 mots différents pour une même chaîne de hash MD5.
Salut,
56 lettres minuscules/majuscules
Mon alphabet n'a que 26 lettres, soit 52 lettres minuscules/majuscules ;-).
mais j'imagine qu'au moins les 256 caractères de l'ASCII étendu sont supportés par MD5.
Le MD5 s'en fiche du codage de l'information. Le codage se fait avant que ça passe dans le MD5.
soit en moyenne 10 mots différents pour une même chaîne de hash MD5
Beaucoup plus.
La taille de l'espace d'arrivée de la fonction MD5 est de : 2^128.
La taille de l'espace de départ est infinie.
Le rapport des deux donne l'infinie. Eh oui, il existe une infinité de mots ayant le même hash. Sauf qu'ils faut les trouver, et comme il n'y a aucun lien entre eux, cela est souvent dissuasif. C'est ce qu'on appelle les collisions. Et en exploitant une propriété intéressante de MD5 : MD5(a+b) = MD5(u+b) si MD5(a)=MD5(u).
, on peut faire des choses intéressantes dont on ne parlera bien évidemment pas.
Quoiqu'il en soit, il vaut mieux arrêter d'utiliser MD5 et migrer vers SHA512.
56 lettres minuscules/majuscules
Mon alphabet n'a que 26 lettres, soit 52 lettres minuscules/majuscules ;-).
mais j'imagine qu'au moins les 256 caractères de l'ASCII étendu sont supportés par MD5.
Le MD5 s'en fiche du codage de l'information. Le codage se fait avant que ça passe dans le MD5.
soit en moyenne 10 mots différents pour une même chaîne de hash MD5
Beaucoup plus.
La taille de l'espace d'arrivée de la fonction MD5 est de : 2^128.
La taille de l'espace de départ est infinie.
Le rapport des deux donne l'infinie. Eh oui, il existe une infinité de mots ayant le même hash. Sauf qu'ils faut les trouver, et comme il n'y a aucun lien entre eux, cela est souvent dissuasif. C'est ce qu'on appelle les collisions. Et en exploitant une propriété intéressante de MD5 : MD5(a+b) = MD5(u+b) si MD5(a)=MD5(u).
, on peut faire des choses intéressantes dont on ne parlera bien évidemment pas.
Quoiqu'il en soit, il vaut mieux arrêter d'utiliser MD5 et migrer vers SHA512.