从OpenSSL中的私钥中提取公钥

时间:2010-04-10 14:28:00

标签: c++ c openssl rsa

我需要使用OpenSSL从RSA私钥中提取RSA公钥。

我目前正在使用RSAPublicKey_dup()传递RSA*私钥来获取公钥。但是,虽然调用似乎有效,但我无法使用openssl命令行工具加载(或使用)此公钥。

如果我使用命令行工具(“$ openssl rsa -in private.pem -pubout > public.pem”)生成公钥,我可以使用它,它就像一个魅力。

你们知道我怎么能得到这项工作吗?也许另一个功能? OpenSSL文档很难浏览......

谢谢。

1 个答案:

答案 0 :(得分:2)

我设法使用PEM_write_bio_RSA_PUBKEY()将PEM数据写入内存缓冲区,然后使用PEM_read_bio_RSA_PUBKEY()获取新的RSA*

现在可以使用生成的公钥;)