Расшифровка файла в C ++, который был зашифрован с помощью openssl -aes-128-cbc

Я пытаюсь расшифровать файл в C ++. Этот файл зашифрован с помощью следующей команды:

openssl enc -nosalt -aes-128-cbc -pass pass:test -in "test.txt" -out "test_enc.txt" -p

Консоль показываетkey=098F6BCD4621D373CADE4E832627B4F6 а такжеiv=0A9172716AE6428409885B8B829CCB05.

В C ++ я включил#include openssl/aes.h и попробуйте расшифровать с помощью следующего кода:

const char *indata = string.toAscii().constData();

unsigned char outdata[strlen(indata)];

unsigned char ckey[] = "098F6BCD4621D373CADE4E832627B4F6";
    unsigned char ivec[] = "0A9172716AE6428409885B8B829CCB05";

    /* data structure that contains the key itself */
    AES_KEY key;

    /* set the encryption key */
    AES_set_decrypt_key(ckey, 256, &key);

    AES_cbc_encrypt((unsigned char*) indata, outdata, strlen(indata), &key, ivec, AES_DECRYPT);

    QString result = QString((const char*) outdata);

    return result;

Переменная outdata содержит другое значение, чем до шифрования с помощью OpenSSL.

Ответы на вопрос(2)

Ваш ответ на вопрос