Конвертирование сертификатов - OpenSSL

28 янв. 2025 г.

Конвертирование сертификатов - OpenSSL

Конвертирование сертификатов из одного формата в другой

Существуют различные форматы файлов, призванные хранить сертификаты и приватные ключи для использования в различных ситуациях. Время от времени Вам может потребоваться конвертировать сертификат из одного формата в другой, а для того, чтобы понять, как это делается, для начала следует узнать, чем эти форматы отличаются.

  • Privacy Enhanced Mail (PEM) – один из наиболее часто встречающихся форматов, его легко идентифицировать по так называемой «оболочке PEM», находящейся в начале и конце и определяющей содержание. Например:

    -----BEGIN CERTIFICATE-----
    -----END CERTIFICATE-----
    Или
    -----BEGIN PRIVATE KEY-----
    -----END PRIVATE KEY-----
    Или
    -----BEGIN PKCS7-----
    -----END PKCS7-----
  • PKCS #7 B (P7B) – Расшифровывается как "Cryptographic Message Syntax Standard". Этот формат содержит полную цепочку сертификатов включая корневой, промежуточный и сертификат сервера, на который он выпущен.  
  • PKCS #12/PFX/P12  – формат "Personal Information Exchange Syntax Standard". Файл .pfx содержит приватный ключ  и публичный ключ. Также он может содержать корневой и промежуточный сертификаты. Файлы PFX защищены паролем и могут быть импортированы во многие браузеры и серверы, такие как  Связка ключей на Mac OS, IIS, Apache Tomcat и другие.
  • Base64 – стандартизированная кодировка файлов .pem, хотя файлы .cer и .crt также могут её использовать. 
  • DER – Distinguished Encoding Rules; бинарный формат, распространённый среди сертификатов X.509. 


Разобраться в конвертировании сертификатов поможет OpenSSL. Обычно она предустановлена на системы GNU/Linux и Mac OS. Для Windows можно скачать Win32 OpenSSL installer.

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

Сертификаты

  • Конвертирование из формата PEM в DER:
    openssl x509 -outform der -in certificate.pem -out certificate.der
  • Перевод из DER в PEM:
    openssl x509 -inform der -in certificate.cer -out certificate.pem
  • Конвертирование из PEM в формат PKCS7 (P7B):
    openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cer
  • Конвертирование PKCS #7 (P7B) в формат PEM:
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

Сертификаты и ключи

  • Конвертирование сертификата и приватного ключа в формате PEM в PKCS #12 / PFX:
    openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt
  • Конвертирование PKCS #7 (P7B) и приватного ключа в PKCS #12 / PFX:
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

    openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile CACert.cer;
  • Перевод файла PKCS #12 / PFX в формат  PKCS #7 (P7B) и получение приватного ключа:
    openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes

 

Related Articles

Система оповещения GlobalSign

Просмотр последних системных оповещений.

Просмотр оповещений

Инструмент инвентаризации сертификатов (CIT)

Сканируйте конечные точки, чтобы найти все ваши сертификаты.

Войти / Зарегистрироваться

Тест конфигурации SSL

Проверьте установку сертификата на наличие проблем и уязвимостей SSL.

Связаться с поддержкой