Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   cifrado base 64 (https://www.clubdelphi.com/foros/showthread.php?t=96750)

Galahad 19-06-2024 19:17:55

cifrado AES/CBC y decodificación base64
 
Hola, buenas tardes
Estoy accediendo a un api web por REST donde recibo unos datos codificados.
No me aclaro para el descifrado de dichos datos.
Me dicen lo siguiente:

"Los datos se cifran usando "AES/CBC/PKCS5PADDING" y se codifican en base64 para su almacenamiento.
De esta forma para descifrarlo es necesario descodificar en un primer momento el base64 y descifrar la cadena de bytes resultante usando el algoritmo de cifrado
.
Los datos necesarios para el descifrado son el apiKey como key y el apiSecret como iv"

Lo del descodificación en base 64 no es problema, pero no me aclaro para crear el algoritmo de descifrado.
Tengo este ejemplo de descifrado en PHP, con esta base... ¿ podria crearse una función de descifrado idéntica en delphi ?
saludos..

Código PHP:

function decrypt_data($data$key$iv) {
        
$key_size 16;
        
$iv_size 16;
        
$padding '$';
        
$key substr(str_pad($key$key_size$padding), 0$key_size);
        
$iv substr(str_pad($iv$iv_size$padding), 0$iv_size);
        
$decryptedData openssl_decrypt(base64_decode($data), "AES-128-CBC"$keyOPENSSL_RAW_DATAbase64_decode($iv));
        return 
$decryptedData;
}
$string file_get_contents('./datos_cifrados.cx'true);
$key 'key';
$iv  'secret';
$res decrypt_data($string$key$iv);
echo 
$res;
?> 


delphi.com.ar 19-06-2024 21:36:07

Cita:

Lo del descodificación en base 64 no es problema, pero no me aclaro para crear el algoritmo de descifrado.
Te indica claramente que esta encryptado con AES-CBC, y en el código se puede observar "AES-128-CBC", y obviamente necesitas las claves para podes desencriptar la información.

En el foro tienes unos cuantros hilos que hablan del tema, por ejemplo: Cifrado AES-256

Saludos


La franja horaria es GMT +2. Ahora son las 22:00:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi