Как преобразовать сертификат .cer в .pem?

73

У меня есть .cerсертификат, и я хотел бы преобразовать его в .pemформат.

Если я правильно помню, я имел обыкновение конвертировать их, экспортировав .cerв Base64, а затем переименовав файл в .pem.

Как мне конвертировать .cerсертификат в .pem?

systempuntoout
источник

Ответы:

127

Конвертировать файл DER (.crt .cer .der) в PEM

openssl x509 -inform der -in certificate.cer -out certificate.pem

Источник

HUB
источник
13
Не работает для меня Файл CER экспортируется из инструмента экспорта сертификатов Windows. Она имеет следующий вид: -----BEGIN CERTIFICATE----- MII...D2H -----END CERTIFICATE-----. Из openssl я получаю следующую ошибку:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1338: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:390:Type=X509
Martin Pecka
14
Тогда ваш сертификат уже в формате PEM. Просто переименуйте его certificate.cerв certificate.pem.
медленно
12

Когда openssl недоступен в вашей системе, вы можете альтернативно конвертировать сертификаты с помощью Java Keytool .

Однако вы должны сначала создать хранилище ключей Java (JKS). Затем сертификаты можно импортировать и экспортировать в разных форматах.

keytool -genkey -alias test -keystore <key store file>
keytool -delete -alias test -keystore <key store file>

Преобразование из DER в PEM:

keytool -import -trustcacerts -alias test -file <der certificate file> -keystore test.keystore 
keytool -exportcert -alias test -file <pem certificate file> -rfc -keystore test.keystore

В этом блоге подробно объясняется, как конвертировать форматы сертификатов.

Марсель Фридман
источник
Я сделал это, и файл .pem практически идентичен файлу .cer, просто упакован по-другому.
эндолит
1
@endolith в этом случае они оба .pem файлы. Файл .cer может быть в кодировке .der или .pem, этот вопрос предполагает кодировку .der, которой у вас не было.
EIS
11

конвертировать .cer файл в .pem

откройте терминал и выполните следующую команду

openssl x509 -inform der -in сертификат.cer -outform pem -out сертификат.pem

Где certificate.cer - это исходный файл сертификата, который вы хотите преобразовать, а certificate.pem - это имя преобразованного сертификата.

Akhilesh
источник