Hola a todos,
estoy programando una aplicación en php. Necesito pasar algunos argumentos por la URL y quería que estos argumentos se enviasen encriptados.
He usado el par base64_encode-decode pero no me sirve ya que sólo oculta pero no asegura que alguien inserte un valor generado por él.
He intentado usar algún algoritmo de los de mCrypt pero al pasar por la URL al recuperar los datos estos son ilegibles (le hago un base64_encode y decode para evitar problemas de caracteres invalidos).
Código PHP:
<?php
function encode_this($string) {
$cifrado = MCRYPT_RIJNDAEL_256;
$modo = MCRYPT_MODE_ECB;
return base64_encode(mcrypt_encrypt($cifrado, LLAVE, $string, $modo,
mcrypt_create_iv(mcrypt_get_iv_size($cifrado, $modo), MCRYPT_RAND)
));
}
function decode_this($string) {
//$string = base64_decode($string);
$string = base64_decode($string);
$cifrado = MCRYPT_RIJNDAEL_256;
$modo = MCRYPT_MODE_ECB;
return mcrypt_decrypt($cifrado, LLAVE, $string, $modo,
mcrypt_create_iv(mcrypt_get_iv_size($cifrado, $modo), MCRYPT_RAND) );
}
?>
Para encriptar el valor del parametro uso encode en la pagina origen e intento recuperar con decode this en el destino pero no me funciona.
Alguien tiene alguna clase que me pueda ayudar?
Gracias.
Saludos