Чтение открытого/закрытого ключа из памяти с помощью OpenSSL

Я использую открытые/закрытые ключи в своем проекте для шифрования/дешифрования некоторых данных.

Я размещаю открытый ключ ("public.pem" )на сервере.

"public.pem" выглядит так:

-----BEGIN PUBLIC KEY-----
.....
.....
-----END PUBLIC KEY-----

Я написал клиентскую часть, которая загружает этот открытый ключ и сохраняет его на диск, а затем вызывает OpenSSL PEM _read _RSA _PUBKEY ()с дескриптором файла для этого файла. Эта операция отлично работает, и в результате получается объект RSA, готовый к шифрованию.

Я хотел бы избежать записи открытого ключа на диск каждый раз (, так как у меня уже есть буфер в памяти ).

Как я могу сделать ту же операцию без сохранения буфера на диск? Я заметил функцию под названием :PEM _read _bio _RSAPublicKey (), но я не уверен, что она использует структуру BIO. Я на правильном пути?

Таким образом, реальный вопрос будет :Как прочитать открытый/закрытый ключ к объекту RSA прямо из памяти, а не из файлового дескриптора.

6
задан user1144031 9 August 2012 в 14:59
поделиться