概述
PEM格式的證書文件(*.pem)由Base64編碼的二進(jìn)制內(nèi)容和開頭行(——-BEGIN CERTIFICATE——-)、結(jié)束行(——-END CERTIFICATE——-)組成,支持使用EditPlus等文本編輯器打開。本文介紹將不同格式的HTTPS證書轉(zhuǎn)換為PEM格式的方法。
詳細(xì)信息
CER或CRT格式證書轉(zhuǎn)換為PEM格式
對于CER或CRT格式的證書,您可通過直接修改證書文件擴展名的方式,將其轉(zhuǎn)換成PEM格式。例如,將server.crt
證書文件重命名為server.pem
即可。
PFX格式證書轉(zhuǎn)換為PEM格式
PFX格式的證書一般出現(xiàn)在Windows Server服務(wù)器中,您可通過OpenSSL工具進(jìn)行轉(zhuǎn)換。通過執(zhí)行以下兩條OpenSSL命令,將PFX格式證書轉(zhuǎn)換成PEM格式證書。
- 只提取私鑰文件的命令:
openssl pkcs12 -in [$Cert_Name.pfx] -nocerts -out key.pem -nodes
說明:- [$Ccert_Name.pfx]為需要轉(zhuǎn)換的PFX格式證書。
- key.pem為提取的私鑰文件。
- 只提取公鑰證書的命令:
openssl pkcs12 -in [$Cert_Name.pfx] -nokeys -out cert.pem
說明:- cert.pem為提取的公鑰文件。
- 提取公鑰和私鑰合并文件的命令:
openssl pkcs12 -in [$Cert_Name.pfx] -nodes -out all.pem
P7B格式證書轉(zhuǎn)換為PEM格式
P7B格式證書一般出現(xiàn)在Windows Server和Tomcat服務(wù)器中,您可通過OpenSSL工具進(jìn)行轉(zhuǎn)換。參考以下步驟,將P7B格式證書轉(zhuǎn)化為PEM格式證書。
- 執(zhí)行以下命令,將P7B格式證書文件轉(zhuǎn)換為CER格式文件。
openssl pkcs7 -print_certs -in [$Incertificat.p7b] -out [$Outcertificate.cer]
說明:
- [$Incertificat.p7b]為需要轉(zhuǎn)換的P7B格式證書。
- [$Outcertificate.cer]為轉(zhuǎn)換后的PEM格式證書。
只保留CER文件中以“——-BEGIN CERTIFICATE——-”開頭,以“——-END CERTIFICATE——-”結(jié)尾的證書內(nèi)容,如下所示。
-----BEGIN CERTIFICATE-----
MIIE5zCCA8+gAwIBAgIQN+whYc2BgzAogau0dc3PtzANBgkqh......
-----END CERTIFICATE-----
- 將CER文件的擴展名改為
.pem
即可。
DER格式證書轉(zhuǎn)換為PEM格式
DER格式證書一般出現(xiàn)在Java平臺中,您可使用OpenSSL工具將其轉(zhuǎn)化為PEM格式。通過執(zhí)行以下兩條OpenSSL命令,DER格式證書轉(zhuǎn)換為PEM格式。
- 只提取公鑰文件的命令:
openssl x509 -inform der -in certificate.der -out certificate.pem
說明:
certificate.der為DER格式的證書,certificate.pem為轉(zhuǎn)換后的PEM格式證書。具體文件以實際環(huán)境為準(zhǔn)。 - 只提取私鑰文件的命令:
openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem
說明:
privatekey.der為DER格式的證書,privatekey.pem為轉(zhuǎn)換后的PEM格式證書。具體文件以實際環(huán)境為準(zhǔn)。