Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/11/2010, 09:54
3nr1c
Invitado
 
Mensajes: n/a
Puntos:
[APORTE] Decriptador de md5

Bueno es un decriptador de md5 que he creado en realidad no decripta, genera passwords aleatorios usando esto, luego los encripta y guarda el password y el md5 en una base de datos. Cada vez que se refresca la pagina, se genera un password nuevo, por lo que se vuelve a crear un registro. Son imposibles los registros dobles.

Asimismo, es posible introducir una palabra a codificar, que tambien es guardada.
Y, con los registros guardados, hay un decodificador. Podeis verlo en funcionamiento aquí:
http://enr1c.eshost.es/paginas/generador.php.

Y el código:
Código PHP:
<?php
echo 'Aqui tienes tu contraseña:<br>';
function 
f_genera_psw($num=8){ // By Kernellover 
    
$voc = array ("a","e","i","o","u"); 
    
$con = array ("b","c","d","f","g","h","j","k","l","m","n","p","q","r","s","t","w","x","y","z"); 
    
$psw "";                // cadena que contendrá el password. 
    
$vc  mt_rand(0,1);    // definde si empieza por vocal o consonante. 
    
for ($n=0$n<$num$n++){ 
        if (
$vc==1){ 
            
$vc=0
            
$psw .= $con[mt_rand(0,count($con)-1)]; 
        } 
        
$psw .= $voc[mt_rand(0,count($voc)-1)]; 
        
$psw .= $con[mt_rand(0,count($con)-1)]; 
    } 
    
$psw ereg_replace ("q","qu",$psw); 
    
$psw ereg_replace ("quu","que",$psw); 
    
$psw ereg_replace ("yi","ya",$psw); 
    
$psw ereg_replace ("iy","ay",$psw); 
    
$psw substr($psw,0,$num); 
    return 
$psw
}  

$password f_genera_psw(rand(4,16));
$md5 md5($password);
$link mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result mysql_query("SELECT * FROM md5 WHERE md5 ='$md5'",$link);
if(
mysql_num_rows($result)>0){
echo 
$password;
}else{
mysql_query("INSERT INTO md5 (palabra,md5) VALUES ('$password','$md5')",$link);
echo 
$password;
}
?>
<br><br><br>
Decripta md5:<br>
<form method="get" action="generador.php">
<input type="text" name="md5">
<input type="submit">
</form>
<?php
if(isset($_GET['md5'])) {
$md5 $_GET['md5'];
$link mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result mysql_query("SELECT * FROM md5 WHERE md5 ='$md5'",$link);
if(
mysql_num_rows($result)>0){
$row=mysql_fetch_array($result);
$palabra str_replace('<','&lt;',$row['palabra']);
echo
'Tu palabra es:<br>'.$palabra.'<br>';
}else{
echo 
'No tenemos este código md5 en la base de datos, vuelve a intentarlo :-)<br>';}
}
?>
<br>Encripta en md5:<br>
<form method="get" action="generador.php">
<input type="text" name="new_md5">
<input type="submit">
</form>
<?php
if(isset($_GET['new_md5'])) {
$h $_GET['new_md5'];
$new_md5 md5($h);
$link mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result mysql_query("SELECT * FROM md5 WHERE md5 ='$new_md5'",$link);
if(
mysql_num_rows($result)>0){
echo 
'Tu palabra en md5 es:<br>'.$new_md5.'<br>';
}else{
mysql_query("INSERT INTO md5 (palabra,md5) VALUES ('$h','$new_md5')",$link);
echo 
'Tu palabra en md5 es:<br>'.$new_md5.'<br>';
}
}
?>
Se aceptan sugerencias