Odczytywanie klucza publicznego / prywatnego z pamięci za pomocą OpenSSL

W moim projekcie używam kluczy publicznych / prywatnych do szyfrowania / deszyfrowania niektórych danych.

Hostuję klucz publiczny („public.pem”) na serwerze.

„public.pem” wygląda tak:

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

Napisałem stronę klienta, która pobiera ten klucz publiczny i zapisuje go na dysku, a następnie wywołuje PEM_read_RSA_PUBKEY () OpenSSL z deskryptorem pliku do tego pliku. Ta operacja działa świetnie, a wynikiem jest obiekt RSA, który jest gotowy do szyfrowania.

Chciałbym uniknąć zapisywania klucza publicznego na dysk za każdym razem (ponieważ mam już bufor w pamięci).

Jak mogę wykonać tę samą operację bez zapisywania bufora na dysku? Zauważyłem funkcję o nazwie: PEM_read_bio_RSAPublicKey (), ale nie jestem pewien, czy jej struktura BIO jest używana. Czy jestem na właściwej drodze?

Prawdziwe pytanie brzmi: Jak odczytać klucz publiczny / prywatny do obiektu RSA prosto z pamięci, a nie z deskryptora pliku.

questionAnswers(3)

yourAnswerToTheQuestion