2010-04-10 104 views
4

我需要使用OpenSSL從RSA私鑰中提取RSA公鑰。從OpenSSL中的私鑰中提取公鑰

我正在使用RSAPublicKey_dup()傳遞RSA*私鑰來獲取公鑰。但是,雖然調用似乎有效,但我無法使用openssl命令行工具加載(或使用)此公鑰。

如果我使用命令行工具(「$ openssl rsa -in private.pem -pubout > public.pem」)生成公鑰,我可以使用它,它的工作原理就像一個魅力。

你們知道我怎麼能得到這份工作嗎?也許另一個功能? OpenSSL文檔很難瀏覽...

謝謝。

回答

2

我設法使用PEM_write_bio_RSA_PUBKEY()將此PEM數據寫入內存緩衝區,然後使用PEM_read_bio_RSA_PUBKEY()獲得新的RSA*

現在可以用來生成的公鑰;)

+0

其錯誤,其結果仍然是一個私鑰 – AbiusX 2012-01-20 16:35:13

+0

@AbiusX:你能解釋一下?似乎到目前爲止工作得很好。 – ereOn 2012-01-22 19:27:00

+0

我不記得我拉過的伎倆,要看我的版本歷史 – AbiusX 2012-04-14 04:32:39