Tengo un problema que no soy capaz de solucionar. El problema es que que el navegador, en la URL no reconoce el signo "
=". Ahora explico mejor:
Ejecuto esto:
miweb.com/archivo.php?cadena=au78sad5a67s= pero me desencripta mal, solo funciona si sustituyo el "
=" por "
%3D", es decir, así:
miweb.com/archivo.php?cadena=au78sad5a67s%3D
Aquí dejo el código que uso:
Código PHP:
<meta charset="utf-8" />
<form action="#" method="get">
<input type="text" name="cadena" value="<?php if(isset($_GET['cadena'])) { echo $_GET['cadena']; }?>" size="60"></td>
</form>
<?php
$contrasena = "hello";
function desencriptar($cadena, $clave){
$cadena=base64_decode($cadena);
$cifrado = MCRYPT_RIJNDAEL_256;
$modo = MCRYPT_MODE_ECB;
$resultado= mcrypt_decrypt($cifrado, $clave, $cadena, $modo,
mcrypt_create_iv(mcrypt_get_iv_size($cifrado, $modo), MCRYPT_RAND));
return $resultado;
}
?>
<?php
$valorOriginal = desencriptar($_GET['cadena'], $contrasena);
echo "Texto Desencriptado: <code style='color:#009922;'>".$valorOriginal."</code>";
?>