Получить файл .cer из файла .pem


13

Я сгенерировал закрытый ключ RSA, используя следующую команду:

openssl genrsa -out privkey.pem 2048

И создал самозаверяющий сертификат, используя следующую команду:

openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3650

Сейчас я пытаюсь преобразовать Cacert .pem файл в сертификат .cer

Есть идеи?


1
Согласно support.ssl.com/Knowledgebase/Article/View/19/0/… .pem является кодировкой и .cerявляется расширением. Коротко: .cerфайл может содержать как кодировку, так PEMи DERкодировку. Что именно вам нужно? (Ссылка должна вам помочь.)
— Фабиан

Я нашел команду для создания самозаверяющего сертификата по этой ссылке: openssl.org/docs/HOWTO/certificates.txt Вот полный текст: Если вы не хотите иметь дело с другим центром сертификации или просто хотите создать тестовый сертификат для себя. Это похоже на создание запроса сертификата, но создает запрос вместо запроса сертификата.
— Деварши

Это на самом деле не отвечает тому, что вам нужно: какова цель генерируемого вами сертификата? Может быть, сервер HTTPS? Или личная аутентификация для какого-то приложения? Но я думаю, что вы уже получили достаточно хороших ответов ниже на то, что вы спросили.
— Фабиан

Сценарий таков: мы создаем пару открытый-закрытый ключ в приложении для Android, и нам нужно предоставить общий ключ для приложения iOS, единственный способ, которым я нашел его, - это самозаверяющий сертификат. iOS apis извлекает открытый ключ из сертификата с этим расширением (пример): some_certificate.cer. Сейчас я пытаюсь сгенерировать some_certificate.cer через терминал и проверить, может ли он извлечь из него открытый ключ и выполнить шифрование с использованием того же самого.
— Деварши

Я не могу помочь вам с iOS. Но я понимаю, что расширение .cer используется только Microsoft. Если приведенные ниже ответы не помогут вам, вы можете спросить об этом в разделе, посвященном программированию для iOS.
— Фабиан

Ответы:


37

Вы можете использовать следующую команду:

openssl x509 -inform PEM -in cacert.pem -outform DER -out certificate.cer

2

.cer - это тип файла для кодировки DER или Base64, если я правильно помню.

openssl x509 -in cacert.pem -out cacert.cer -inform pem -outform der для формата DER.


1

Фактическое продление не имеет значения для сертификатов. Обычно файлы .pem имеют сертификат x509 в форме, закодированной в base64. Файлы .cer могут быть в формате base64 или DER (Windows распознает и то, и другое). В зависимости от вашего приложения вам необходимо выяснить, какой формат сертификата требуется приложению.

Для преобразования между base64 (PEM) и кодировкой DER:

openssl x509 -in cert.pem -outform pem -outform der -out cert.cer
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.