rss
Click para suscribirte
Deja un comentario!

Selecciona tu lector de Feeds:

Añadir a Netvibes Añadir a iGoogle Añadir a Mi Yahoo

Ahora me leen 19 personas mediante feeds.
TAGS

Encriptar y desencriptar cadena PHP

ESCRITO POR Josep Viciana EL 19-11-2008 - EN LA CATEGORÍA PHP.

Cualquier programador Web ha podido necesitar pasar datos por $_GET - en la url - , es una forma fácil y cómoda de pasar valores de una página a otra, pero… en algunos casos puede no ser recomendable y habría que tener un mínimo de precaución, y para estos casos - y otros muchos - se puede utilizar esta clase que un día vi - no se donde, si lo supiese pondría la fuente - y sobre la que me veo obligado a escribir, mas que nada para tenerla presente yo mismo y darla a conocer a quien necesite encriptar y desencriptar una cadena con PHP.

Ya de paso, esto puede servirnos en algún que otro caso para evitar inyecciones SQL, y así evitar que alguien nos mangonee lo que no debe.

Primero: Encriptar
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}

Se utiliza un código secreto, que es el que se pone en $key y que cuando desencriptemos necesitaremos saberlo para que lo haga correctamente.

Para encriptar una cadena escribimos
$cadena_encriptada = encrypt("LA CADENA A ENCRIPTAR","LA CLAVE");

Segundo: Desencriptar
function decrypt($string, $key) {
$result = '';
$string = base64_decode($string);
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}

Y para desencriptar la cadena escribimos
$cadena_desencriptada = decrypt("LA CADENA ENCRIPTADA","LA CLAVE QUE SE USÓ PARA ENCRIPTARLA");

Y poco mas que contar, el que encuentre esto por google probablemente no haya leido nada y sólo copiará el código, en cualquier caso… ahí esta, xD






Ni sus manos son tan blancas ni son blancas sus palomas.

Algunos derechos reservados. Josep Viciana. 06-01-2009.

Browse Happy logoPagerank