2012-06-12 97 views
13

目前我有一個只包含私鑰的.PEM文件。我需要將此文件轉換爲.PKCS12文件。目前我正試圖使用​​openssl來實現這一點,我遇到了一些問題。我使用OpenSSL轉換.PEM只包含RSA私鑰到.PKCS12

.pem文件的格式爲:

----- BEGIN RSA私鑰-----

一些關鍵

--- --END RSA私鑰-----

我用下面的openssl指令來嘗試這個.PEM文件轉換成.PKCS12:

OpenSSL的PKCS12 -export -inkey file.pem -out file.p12

然後該控制檯與消息掛起:

加載 '屏幕' 變成隨機狀態完成度的數

我在做什麼錯?

任何幫助將appriciated。

+0

到目前爲止,您只接受了任何一個問題的答案,那就是您自己的答案! –

+0

pkcs12文件通常包含證書鏈以及鏈的葉證書的私鑰。最簡單的形式是它包含一個自簽名證書和相關的私鑰。您需要使用公鑰創建證書,並且該證書必須包含消費應用程序所期望的字段。 –

回答

25

我遇到了這個問題,並通過在導出後添加-nocerts選項來解決它。我對「凍結」原因的猜測是,openssl可能試圖從控制檯讀取其他輸入。

openssl pkcs12 -export -nocerts -inkey your.private.key.pem -out your.private.key.p12 
+0

@ sliq ..你可以看看我的問題嗎? http://stackoverflow.com/questions/41149979/pem-key-generation-format-encoding-errors –

3

我認爲你必須提供證書爲好,不僅私鑰:

OpenSSL的PKCS12 -export -inkey privatekey.pem -in certificate.cer退房手續 bothAsPKCS12.p12

+0

是的。根據我的經驗,必須提供'-in'(例如.cer/.crt)和'-inkey'(例如.key)。 – aff