我假设你有一个包含PKCS#7编码证书数据的.cer文件,并且你想把它转换成PEM编码的证书数据(通常是.crt或.pem文件)。 例如,包含PKCS#7编码数据的.cer文件如下所示:
----- BEGIN PKCS7 -----
MIIW4gYJKoZIhvcNAQcCoIIW0zCCFs8CAQExADALBgkqhkiG9w0BBwGggha1MIIH
...
POI9n9cd2cNgQ4xYDiKWL2KjLB + 6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G
+ bKhADEA
----- END PKCS7 -----
PEM证书数据如下所示:
----- BEGIN CERTIFICATE -----
MIIHNjCCBh6gAwIBAgIQAlBxtqKazsxUSR9QdWWxaDANBgkqhkiG9w0BAQUFADBm
...
nv72c / OV4nlyrvBLPoaS5JFUJvFUG8RfAEY =
-----结束证书-----
有一个OpenSSL命令可以将.cer文件(包含PKCS#7数据)转换为您可能遇到的PEM数据(上例中的BEGIN CERTIFICATE块)。 您可以通过以下命令将PKCS#7数据强制转换为PEM格式,我们将调用certfile.cer文件:
openssl pkcs7 -text -in certfile.cer -print_certs -outform PEM -out certfile.pem
请注意,.cer或.pem文件可能包含一个或多个证书(可能是整个证书链)。