[英]How to get the certificate part only and the private key part only respectively from PEM file in the command way?
將包含私鑰和證書的PKCS#12文件(.pfx .p12)轉換為PEM,例如:
openssl pkcs12 -in cert_and_pvt_key.pfx -out cert_and_pvt_key.pem
然后我有一個同時帶有證書和私鑰的PEM文件,現在,我想分別獲取證書文件和私鑰文件,是的,我知道cert_and_pvt_key.pem是文本格式,我們可以復制密鑰部分和證書部分喜歡,但是,這不是很優雅,我想要一些復雜的東西,例如openssl pkcs12
,有什么可用的嗎?
您可以使用-nocerts
和-nokeys
選項將openssl pkcs12
僅輸出所需的部分。 依次運行openssl pkcs12
:
openssl pkcs12 -in cert_and_pvt_key.pfx -nokeys -out cert.pem
然后:
openssl pkcs12 -in cert_and_pvt_key.pfx -nocerts -out pvt_key.pem
如果您沒有訪問原始PKCS#12文件的權限,那么它將變得有些困難。 以下應該工作:
openssl pkcs12 -export -in cert_and_pvt_key.pem | openssl pkcs12 -nokeys -out cert.pem
和:
openssl pkcs12 -export -in cert_and_pvt_key.pem | openssl pkcs12 -nocerts -out pvt_key.pem
但是,這在創建PKCS#12時以及在嘗試將文件拆分為證書和密鑰時再次要求輸入密碼。 OpenSSL提供了-nodes
動詞來禁用此密碼,但它似乎不適用於-export
。 因此,它將在腳本中失敗。
否則,您將不得不使用awk
或類似文件分割文件。 此站點上有很多示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.