Comunidad de diseño web y desarrollo en internet online

desencriptar

Citar            
MensajeEscrito el 18 Oct 2011 07:01 pm
Hola no se mucho de encriptacion de cadenas pero me podrian ayudar a desencriptar esta funcion.

Código PHP :

function enreda($valor_r) { 
      $vari1=""; 
      $vari2=0;//de cero 
      $vari3=strlen($valor_r); //largo de la cadena
      while($vari2 < $vari3) {
         if($valor_r[$vari2] == ' ') {
            $vari1.=" "; 
         } else if($valor_r[$vari2] == '!') {
            $vari1.=chr( (ord($valor_r[$vari2+1])-ord('A'))*16+(ord($valor_r[$vari2+2])-ord('a')) );
                $vari2+=2; 
         } else { 
            $vari1.=chr(ord($valor_r[$vari2])+1); 
         } $vari2++; 
      } 
      return $vari1; 
   } 



como seria lo opuesto de esta funcion, de modo que pueda meter la cadena encriptada, y me devuelva la cadena normal.??

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 18 Oct 2011 08:08 pm
holas creo que hay pocos usuarios que harian esa tarea :)
pero bueno me parecio interesante el codificado asi que te paso lo que tengo solo falta decodificar el caracter "!" el cual creo que es para algo importante como un separador de strings a o algo asi

Código PHP :

function desenreda($valor_r)
{
   $string = str_split($valor_r);
   $decoded_string = '';
   foreach($string as $char)
   {
   
      //echo $char ."\n";
      $n = ord($char)-1;
      //echo $n;
      //echo " ";
      switch(true)
      {
         //case ord($char) < 1 :
         //   $decoded_string .= '!';
         //break;
         case $char == ' ':
            $decoded_string .= $char;
         break;
         default:
         $decoded_string .= chr($n);
         break;
      }
      
   }
   return $decoded_string;
}
   

function enreda($valor_r) {  
      $vari1="";  
      $vari2=0;//de cero  
      $vari3=strlen($valor_r); //largo de la cadena 
  
      while($vari2 < $vari3)
     { 
         if($valor_r[$vari2] == ' ') { 
            $vari1.=" ";  
         } else if($valor_r[$vari2] == '!') { 
            $vari1.=chr( (ord($valor_r[$vari2+1])-ord('A'))*16+(ord($valor_r[$vari2+2])-ord('a')) ); 
            //echo  (ord($valor_r[$vari2+1])-ord('A'))*16+(ord($valor_r[$vari2+2])-ord('a')) ;
            //echo " = ";            
                $vari2+=2;  
         } else {  
            $vari1.=chr(ord($valor_r[$vari2])+1);  
         //echo ord($valor_r[$vari2])+1;
         //echo " = ";
         } $vari2++;  
      }  
      return $vari1 ;
}
$cadena = 'acbdefghijklmnopqrstuvwxyz0123456789 -´`+¡\'¡!ª)(/&%%$·"ª+-*/+\|@##~€¬';
echo $cadena;
echo "\n--------------------------------------------\n";
$encode = enreda($cadena);
echo $encode;
echo "\n--------------------------------------------\n";
$decode = desenreda($encode);
echo $decode;


para decodificar dicho caracter habria que empezar desde el ultimo hasta el primero de los caracteres.
bueno esa parte esta para pensarlo jeje si alkguien tiene tiempo que lo complete

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Oct 2011 09:01 pm
Gracias amigo, creo que debere tomar algo de tiempo para aprender a encriptar y desencriptar. se ve que es interesante

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 18 Oct 2011 11:24 pm
acotando un poco este post,
en la parte del caracter !,
por lo visto se come los 2 caracteres consecutivos

Código PHP :

$vari2+=2;

y la desencrypcion no seria factible por que l funcion "chr" de php soporta hasta 255 , y si supera eso digamos 257 seria igual que al insertar chr(1);
bueno y como el resultado del caracter "!" come 2 caracteres es dificil de distinguir.

haber espero que alguien nos ilumine :) parecia algo sencillo pero veo que esto no fue echo para php , si no , que fue traducido de algun codigo en C.

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 19 Oct 2011 04:48 pm
Lo ironico es que en el php donde me encontre con esto, esta de tal modo que con un eval y una based64 o algo asi, es comprensible para el servidor.

No lo posteo porque esto se conecta a una base de datos y ahi esta encriptado el password y usuario.

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 20 Oct 2011 04:57 pm
ha es para encryptar codigo???
mm entonces hayq verlo de modo disitinto :)
jeje creo que tengo algo para entretenerme este fin de semana bueno hasta entonces haber si alguien mas se le ocurre algo

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.