Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Hugo Borges_120734

problemas com Decrypt do mcrypt

Recommended Posts

Bom galera to com uma dúvida aqui com o mcrypt, rodei o seguinte código:

<?php
/*
* PHP mcrypt - Basic encryption and decryption of a string
*/

$secret_key = "dt4239#e%@13ffdg!3%$^%*d";
 
// Create the initialization vector for added security.
$iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND);
 
// Encrypt $string
$encrypted_string = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $secret_key, 'teste texto blabla', MCRYPT_MODE_CBC, $iv);
 
// Decrypt $string
$decrypted_string = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $secret_key, $encrypted_string, MCRYPT_MODE_CBC, $iv);
 

echo "Encrypted string : " . $encrypted_string . "<br />\n";
echo "Decrypted string : " . $decrypted_string . "<br />\n";
?>

Que me retorna na tela:

Encrypted string : Ö¡¸£R÷³rØÉ÷ µ,Ï™\òq-m‹•LX¼5ÑÚ
Decrypted string : teste texto blabla

Bom até aqui tudo ok. O problema e o seguinte eu pego o conteúdo criptografado e mando para outra página:

$secret_key = "dt4239#e%@13ffdg!3%$^%*d";
// Decrypt $string
$decrypted_string = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $secret_key,'Ö¡¸£R÷³rØÉ÷ µ,Ï™\òq-m‹•LX¼5ÑÚ', MCRYPT_MODE_CBC, $iv);

Ele não volta. Não sei o que estou fazendo errado pois a $secret_key é a mesma usado para Encrypted.

 

Alguém sabe o que estou fazendo errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom desta forma deu certo, pq?

//dados
$decriptado = "O rato roeu a roupa do rei";

echo "Dado a ser encriptado: $decriptado <br>";

 
//encriptado
$chave = "RxRe4g50fxD33dx049xrg432pp04";
$encriptado = mcrypt_encrypt(MCRYPT_BLOWFISH, $chave, $decriptado, MCRYPT_MODE_ECB);
echo "Resultado da encriptação: $encriptado  <br>";
 
//codificado p/ base64
$base64codic = base64_encode($encriptado);
echo "Encriptação codificado em base64: $base64codic <br>";
 
//descodificado de base64
$base64descodic = base64_decode('IUaPrvk7jlY+qPW7mnWTRpiARV4aSXODsnfFshcrM8E=');
echo "Descodificar de base64: $base64descodic <br>";
 
//decriptado
$decriptado = mcrypt_decrypt(MCRYPT_BLOWFISH, $chave, $base64descodic, MCRYPT_MODE_ECB);
echo "Decriptado: $decriptado. <br>";

echo "Sem caracteres extras no string: ".trim($decriptado);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.