Dear Andrew,
You should take a look at CMS implementation as a model.
For example, you can generate a symmetric key for content encryption and
algorithm-specific way to pass the symmetric key to the recipient using EVP_PKEY_encrypt.
On Wed, Apr 1, 2020 at 7:35 PM Andrew Felsher <ncsuandrew12@xxxxxxxxx> wrote:
Hi,I'm trying to do what I assumed would be a very common and typical use of OpenSSL. I'm just encrypting and decrypting some data (in code; not from command line). EVP_EncryptInit_ex (and decrypt, update, and final variants) are the standard way to do this.However, the init functions take a char buffer. All the examples I can find use hard-coded char buffer keys. But obviously I'm not going to be hard-coding my keys. I'm generating them through a couple different means, but ultimately I have EVP_PKEYs (in my case, containing RSA private keys). And there doesn't seem to be a straightforward way to go from EVP_PKEYs to a form consumable by the EVP init functions.EVP_PKEY_get_raw_private_key looks like it would be perfect, but it was introduced in 1.1.1 and I'm limited to 1.1.0.This seems like it would be a very common use case, yet I can't seem to find any examples or documentation anywhere.Am I doing something wrong or making some really off-base assumptions?Thanks for any help, pointers, or guidance,Andrew F
SY, Dmitry Belyavsky