bg-blog-articles

Форматы SSL-сертификатов и расширения файлов сертификатов: Полное руководство

Форматы SSL-сертификатов

Понять, что такое SSL-сертификат и как он работает, довольно просто. Но когда дело доходит до установки его на сервер, иногда может показаться, что Вы имеете дело с ракетостроением.

При таком большом количестве форматов SSL-сертификатов, привязанных к конкретным требованиям сервера, Вы скорее запутаетесь и разочаруетесь, чем правильно настроите свой сертификат с самого начала. Но скоро все изменится.

В этом подробном руководстве мы разберем каждый формат SSL-сертификата и расширения файлов сертификатов, а также покажем Вам два способа конвертирования файлов различных типов.


Оглавление

  1. Форматы файлов сертификатов — основы
  2. Форматы и расширения файлов SSL-сертификатов
  3. Преобразование формата SSL

Получите SSL-сертификаты сегодня

Форматы файлов сертификатов — основы

Давайте начнем с основ. Все SSL-сертификаты являются Сертификаты x.509. Это стандартный формат сертификатов открытых ключей, выраженный на формальном языке под названием Abstract Syntax Notation One. Мы не будем углубляться в структуру X.509; Вы можете прочитать об этом в Wiki. Здесь мы обсуждаем такие форматы сертификатов SSL, как DER, PEM, PKCS#7 и PKCS#12.

Простой способ отличить их — посмотреть на их кодировку.

В PEM и PKCS#7 используется кодировка Base ASCII (American Standard Code for Information Interchange). Это популярный стандарт для файлов, содержащих текст.

В DER и PKCS#12 используется двоичное кодирование — система чисел по основанию 2, состоящая только из нулей и единиц.

Из-за различных форматов и кодировок сертификаты SSL имеют множество расширений файлов.


Форматы и расширения файлов SSL-сертификатов

Форматы сертификатов SSL включают PEM, DER, PFX и PKCS#7, каждый из которых имеет свои особенности использования. Общими расширениями файлов являются:

ФорматУдлинительОписание
PEM.pem, .crt, .cerВ кодировке Base64, используется в системах Unix/Linux
DER.der, .cerДвоичный формат, используемый в Windows
PFX/PKCS#12.pfx, .p12Хранит сертификат и закрытый ключ, используется в Windows
PKCS#7.p7b, .p7cЦепочка сертификатов, используемая в средах Java

Давайте внимательно рассмотрим каждый формат и расширения файлов SSL-сертификатов. Вы узнаете, что скрывается за каждой аббревиатурой и в какой системе она используется чаще всего.

Формат DER

DER stands for Distinguished Encoding Rules, a binary encoding format, rarely used outside of Windows. It is contained in .der or .cer files.


Формат PEM

PEM — самый популярный формат SSL-сертификатов, и именно с ним Вы, скорее всего, столкнетесь. Большинство центров сертификации предлагают SSL-сертификаты в формате PEM с различными расширениями файлов сертификатов, такими как .pem, .crt, .cer или .key.

PEM расшифровывается как Privacy-Enhanced Email, и Вы, возможно, задаетесь вопросом, какое отношение имеет электронная почта к сертификату SSL? Короче говоря, PEM не справился со своей основной задачей, но нашел свое применение в качестве формата контейнера.

По сути, файлы PEM — это Base64-кодированные DER-файлы, в которых нули и единицы закодированы в последовательность печатаемых символов. Таким образом, Вы сможете открыть их в любом текстовом редакторе, включая Блокнот.

Один файл .pem может содержать сертификат сервера, промежуточный сертификат и закрытый ключ. В качестве альтернативы Вы можете получить сертификат сервера и промежуточный сертификат в отдельном файле .crt или .cer, а закрытый ключ может находиться в файле .key.


Формат PKCS#7

PKCS расшифровывается как Public Key Cryptography Standards.

PKCS#7 — это многоцелевой формат SSL-сертификатов для распространения зашифрованных данных. В основном он используется на платформах Windows и Java Tomcat.

Today, we’re actually using its successor CMS (Cryptographic Message Syntax), but just like with SSL and TLS, the old name has become too familiar to replace.

PKSC#7 имеет два расширения файлов: .p7b или p7c. В отличие от PEM, PKCS#7 не может хранить закрытые ключи, только первичные и промежуточные сертификаты.


Формат PKCS#12

PKCS#12 — это еще один стандарт публичной криптографии с повышенной безопасностью. Как и PEM-файл, он может включать всю цепочку SSL-сертификатов и пару ключей в одном файле .pfx. Основное отличие заключается в том, что ПККС#12 — это контейнер, защищенный паролем.

Some server systems prompt you to enter a password during the CSR generation, and you can use it to open .pfx files. Some server systems prompt you to enter a password during the CSR generation, and you can use it to open .pfx files. If you still need to create that request, our SSL CSR generator produces the CSR and the matching private key from a single form.

Сэкономьте 10% на SSL-сертификатах

Преобразование формата SSL

Теперь, когда Вы знаете форматы SSL-сертификатов и их многочисленные расширения, пришло время рассказать о том, чего Вы так долго ждали — как преобразовать SSL-сертификат в любой формат.

As with most file conversions, there are different ways to approach them. The quickest one is to use an automatic SSL converter tool. All you have to do is pick your desired operation, for instance, PEM to PKCS#7 conversion, upload the files, and then hit Convert.

В качестве альтернативы Вы можете использовать бесплатную программную библиотеку OpenSSL для преобразования Ваших SSL-файлов. Эта утилита позволяет использовать протокол SSL/TLS практически на любом существующем сервере. Многие платформы и дистрибутивы Linux поставляются с предустановленной утилитой OpenSSL. Для Windows Вам придется получить установочный пакет.


Преобразование X.509 в PEM

Чтобы преобразовать X.509 в PEM, выполните следующую команду в OpenSSL:

openssl x509 -in certificatename.cer -outform PEM -out certificatename.pem


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

Двоичное кодирование в Base64 ASCII.

Чтобы преобразовать DER в PEM, выполните следующую команду:

openssl x509 -inform der -in certificatename.der -out certificatename.pem


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

Base65 ASCII в двоичную кодировку.

Чтобы преобразовать PEM в DER, выполните следующую команду:

openssl x509 -inform der -in certificatename.der -out certificatename.pem


Преобразование PEM в PKCS#7

Файл .p7b не содержит закрытого ключа.

Чтобы преобразовать PEM в PKCS#7, выполните следующую команду:

openssl crl2pkcs7 -nocrl -certfile certificatename.pem -out certificatename.p7b -certfile CACert.cer


Преобразование PKCS#7 в PEM

Чтобы преобразовать PKCS#7 в PEM, выполните следующую команду:

openssl pkcs7 -print_certs -in certificatename.p7b -out certificatename.pem


Преобразование PKCS#12 в PEM

Файл PKCS#12 защищен паролем.

Чтобы преобразовать PKCS#12 в PEM, выполните следующую команду:

openssl pkcs12 -in certificatename.pfx -out certificatename.pem


Преобразование PKCS7 в PKCS12

Для этого необходимо выполнить два шага. Сначала Вы преобразуете файл P7B в CER, а затем объедините CER и закрытый ключ в PFX.

  1. openssl pkcs7 -print_certs -in certificatename.p7b -out certificatename.cer
  2. openssl pkcs12 -export -in certificatename.cer -inkey privateKey.key -out certificatename.pfx -certfile cacert.cer

Вот, собственно, и все. Теперь Вы можете быстро конвертировать и установить на свой сервер любой тип SSL-файла.


Заключение

Понимание форматов SSL-сертификатов, расширений файлов сертификатов и того, как преобразовать их в нужную Вам конфигурацию, — ценный навык, который поможет Вам без проблем установить SSL-сертификаты в любой системе.

Выбор правильного формата SSL обеспечит надежное шифрование и безопасные соединения на веб-серверах, почтовых клиентах, устройствах VPN и в сетях.

Часто задаваемые вопросы

Какое расширение файла используется для экспортированного файла резервной копии сертификата?

Расширение файла, используемое для экспортированного файла резервной копии сертификата, зависит от формата и типа сертификата. Наиболее распространенными файлами резервных копий сертификатов являются .p12 и .pfx (системы Windows), .cer и .crt, а также .key для резервного копирования закрытого ключа.

Копировать ссылку

Какие типы файлов SSL-сертификатов принимает APACHE2?

Apache использует формат сертификатов PEM с расширениями файлов .cer .crt и .key.

Копировать ссылку

Как создать формат ssl-certificate.pem в Linux?

Чтобы создать SSL-сертификат в формате PEM в Linux, Вы можете воспользоваться инструментарием OpenSSL и его командными строками. После того, как Вы получили SSL-сертификат от ЦС, Вы можете создать файл формата PEM, соединив закрытый ключ и SSL-сертификат в один файл с помощью следующей команды:

cat private.key your_ssl_certificate.crt > your_ssl_certificate.pem

Копировать ссылку

Как определить формат SSL-сертификата?

Откройте Ваш файл SSL с помощью любого текстового редактора. Если Вы видите надпись «——BEGIN CERTIFICATE——» в начале файла сертификата и «——END CERTIFICATE——» в конце файла, значит, сертификат выполнен в формате PEM. Если сертификат имеет формат DER, он не будет содержать этих меток и вместо этого будет представлять собой двоичный файл.

Копировать ссылку

Какой формат файла сертификата содержит закрытый ключ?

Формат PKCS#12 или PFX содержит сертификаты (S) и закрытый ключ. В этом формате закрытый ключ и соответствующий сертификат хранятся в одном зашифрованном файле.

Копировать ссылку

Как экспортировать SSL-сертификат в формат .pfx?

Мы написали подробное руководство о том, как импортировать и экспортировать файл PFX в Microsoft IIS (Internet Information Services).

Копировать ссылку

Сэкономьте 10% на SSL-сертификатах при заказе сегодня!

Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10

Детальное изображение дракона в полете
Написано

Опытный автор контента, специализирующийся на SSL-сертификатах. Превращает сложные темы кибербезопасности в понятный, увлекательный контент. Вносите свой вклад в повышение уровня цифровой безопасности с помощью впечатляющих рассказов.