bagaimana cara mengubah kunci publik menjadi string menggunakan api openSSL?

Saya dapat mengambil konten kunci publik dari file sertifikat menggunakan openssl dengan mengikuti tautan http://fm4dd.com/openssl/certpubkey.htm

Namun, itu mencetak kunci publik ke stdout. Saya ingin dapat menyimpannya dalam sebuah string. Apakah ada cara untuk memasukkannya ke dalam buffer char atau string?

Baris PEM_write_bio_PUBKEY(outbio, pkey) dicetak ke stdout.

Mencari cukup banyak, tidak bisa mendapatkan apa yang saya inginkan.

Bantuan apa pun akan dihargai, lebih baik jika contoh kode diberikan karena saya kehabisan waktu.

Terima kasih sebelumnya.


person Abbas    schedule 16.11.2018    source sumber
comment
Kode yang Anda tautkan untuk menyiapkan outbio menjadi stdout. Saya kira Anda hanya perlu membuat keluaran BIO yang berbeda saja? misalnya BIO_s_mem   -  person Rup    schedule 16.11.2018
comment
Terima kasih, jika Anda dapat memberikan beberapa kode untuk melakukan itu, akan sangat membantu.   -  person Abbas    schedule 16.11.2018


Jawaban (1)


Saya akhirnya menemukan solusinya! Struktur X509 ke string yang dapat dibaca manusia

Baru saja diganti dengan EVP_PKEY *key di tanda tangan X509_to_PEM() dan menggunakan PEM_write_bio_PUBKEY(bio, key) sebagai ganti PEM_write_bio_X509(bio, cert).

Bekerja !

person Abbas    schedule 16.11.2018