Quantcast
Channel: FiveTech Software tech support forums
Viewing all articles
Browse latest Browse all 26212

Problema con encriptacion Simetrica con HBSSL

$
0
0
Hola, Pude compilar y ejecutar CORRECTAMENTE el código (modificado para Fivewin) que viene en el archivo crypt.prg en la carpeta Tests del Contrib de Hbssl, es decir, puede encriptar y desencriptar utilizando el algoritmo "AES-192-OFB" como viene el ejemplo original (recortado): //--inicio del código SSL_INIT() OpenSSL_add_all_ciphers() ctx := hb_EVP_CIPHER_CTX_create() EVP_CIPHER_CTX_init( ctx ) //--------- IMPLEMENTADO EN UNA FUNCION INDEPENDIENTE como ENCRIPTA(cData) EVP_EncryptInit( ctx, "AES-192-OFB", cKey ) ? EVP_CIPHER_CTX_cipher( ctx ) ? EVP_CIPHER_block_size( EVP_CIPHER_CTX_cipher( ctx ) ) encrypted := "" result := "" EVP_EncryptUpdate( ctx, @result, cData ) encrypted += result EVP_EncryptFinal( ctx, @result ) encrypted += result ? "ENCRYTPTED", ">" + hb_StrToHex( encrypted ) + "<" ? ">" + encrypted + "<" ctx := hb_EVP_CIPHER_CTX_create() //-----------IMPLEMENTADO EN UNA FUNCION INDEPENDIENTE como DESENCRIPTA(cDataEncrypted) EVP_DecryptInit( ctx, "AES-192-OFB", cKey ) decrypted := "" result := "" EVP_DecryptUpdate( ctx, @result, cDataEncrypted ) decrypted += result EVP_DecryptFinal( ctx, @result ) decrypted += result ? "DECRYTPTED", ">" + decrypted + "<" RETURN ( hb_StrToHex(decrypted ) ) //----Fin del codigo Al convertir el ejemplo a dos funciones independientes, una para encriptar y otra para desencriptar, sin embargo, no arroja el mismo resultado al tratar de desencriptar. Pienso que es posible que este algoritmo requiera una IV (Initiation Vector) y no se lo he dado. No se lo doy porque no conozco su nombre, sintaxis ni la estructura para hacerlo. Puede tambien ser otro problema que desconozco. Sin embargo si alimento desde un archivo Txt el texto encriptado, la función lo desencripta correctamente, pienso que es eso porque estoy simulando el programa original distribuido en crypt.prg y las variables necesarias están inicializadas correctamente. Mucho les agradeceré si alguien puede decirme que me falta para que funcione la función de Desencripta(cDataEncrypted) en forma independiente (del ejemplo original). Muchas gracias por su atención.

Viewing all articles
Browse latest Browse all 26212

Trending Articles