Inverse du md5() en php

Description

Ce code sert à retrouver le hashage md5() qui est utilisé pour la sécurité des échanges de paquets sur le web.

Source / Exemple :


<?php
$chaine_car="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$car=str_split($chaine_car);
$nb_car=count($car);
$car[$nb_car]="";
$c1=$c2=$c3=$c4=0;
$trouve=0;
$motorigine="mot";
$mothashe=md5($motorigine);
$avantfor=time();
for($i=0;$i<1000000000000000;$i++){
$cherche=$car[$c1].$car[$c2].$car[$c3].$car[$c4];
$cherchemd=md5($cherche);
if($cherchemd==$mothashe){ $trouve=1; echo"<br>Trouvé ! : $cherche ($mothashe : $motorigine) @ $i"; }
//else{ echo "$cherche : NON ! ----"; }
$c4++;
if($c4==$nb_car){ $c3++; $c4=0; }
if($c3==$nb_car){ $c2++; $c3=0; }
if($c2==$nb_car){ $c1++; $c2=0; }
if($c1==$nb_car or $trouve==1){ $i=1000000000000000000000; echo" ...FIN";}
}
$apresfor=time();
$duree=$apresfor-$avantfor;
echo("<br><br>$duree secondes !");
?>

Conclusion :


Pour modifier le md5 à chercher il faut changer $mothashe.
Dans ce cas là il devrait marquer "Trouvé ! : mot (de81459305398c88048a05a620fb4717 : mot) @ 3057389 ...FIN 28 secondes !" ...
Le seul problème c'est qu'il faut éditer le paramètre 'max_execution_time' dans php.ini ... il s'agit du temps (en sec) max d'exécution du fichier PHP.
Par contre, si vous voulez trouver un mot de passe de plus de 4 caractères ... il faudra attendre théoriquement ... plus de 2h20 pour 5 caractères.
Il faudrait 6 jours pour trouver une chaine de 6 caractères.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.