[openssl-users] Need information on AES encryption and decryption Key and IV type

Michel michel.sales at free.fr
Fri Feb 26 23:07:36 UTC 2016

As Rich already answered : "The IV, key, and ciphertext are all binary
arrays of bytes."
This is not specific to AES.
Converting from or to hex (or Base64) strings is needed only to read from or
print to outside your C program.
Values passed to EVP_*() calls are expected to be raw (binary) data :
unsigned char *key, unsigned char *iv, as documented in
(and do not rely on the 'bogus' key and IV values in the do_crypt()
-----Message d'origine-----
De : openssl-users [mailto:openssl-users-bounces at openssl.org] De la part de
Envoyé : vendredi 26 février 2016 17:30
À : openssl-users at openssl.org
Objet : [openssl-users] Need information on AES encryption and decryption
Key and IV type


I am using Openssl for encryption and decryption.
I need some information on AES encryption and decryption key and iv type.
My doubt is when we are using a openssl in command line we need to pass key
and iv as hex strings right?
and same when we are EVP calls in C/C++ programming what is the type of Key
and Iv. i mean it should a hex string or raw binary values?

I saw, openssl command line interface code of openssl in that the hex
strings are converted into hex values.
But in EVP calls the Key and Iv are used directly.

More information about the openssl-users mailing list