Декодер сертификатов
Декодирование SSL/TLS сертификатов X.509 в формате PEM. Вся обработка выполняется в вашем браузере для максимальной безопасности и конфиденциальности.
Как использовать декодер сертификатов
Вставьте сертификат
Скопируйте ваш PEM-кодированный сертификат, включая заголовки BEGIN/END, и вставьте его в поле ввода
Автодекодирование
Инструмент автоматически разбирает структуру ASN.1/DER и извлекает все поля сертификата
Просмотр деталей
Просмотрите субъекта, издателя, сроки действия, SAN, информацию об открытом ключе и отпечаток SHA-256
Что такое X.509?
X.509 — это стандарт ITU-T, определяющий формат сертификатов открытого ключа. Сертификат X.509 связывает удостоверение (субъект) с открытым ключом и подписывается центром сертификации (CA). SSL/TLS сертификаты, используемые для HTTPS-сайтов, являются наиболее распространённым применением сертификатов X.509.
SSL/TLS-сертификаты
Сертификаты X.509 — основа HTTPS, проверяющие подлинность сервера и обеспечивающие зашифрованную связь
Инфраструктура открытых ключей
X.509 определяет формат сертификатов открытых ключей в PKI для привязки идентичностей к криптографическим ключам
Кодирование ASN.1/DER
Сертификаты используют правила ASN.1 DER для бинарной структуры, обёрнутые в PEM Base64 для текстовой передачи
PEM, DER, CRT, PFX — сравнение форматов сертификатов
Один и тот же сертификат X.509 можно сохранить в нескольких форматах файлов. Знание того, какой у вас, экономит время — вот как их различить:
| Формат | Расширения | Кодировка | Типичное применение |
|---|---|---|---|
| PEM | .pem, .crt, .cer | Base64 ASCII с заголовками BEGIN/END | Веб-серверы (Nginx, Apache), большинство Linux-инструментов — формат, который декодирует этот инструмент |
| DER | .der, .cer | Сырой двоичный ASN.1 | Java-хранилища ключей, некоторые средства Windows и встраиваемые инструменты |
| P7B / PKCS#7 | .p7b, .p7c | Base64 ASCII, только сертификаты (без закрытого ключа) | Импорт цепочки сертификатов в Windows, IIS |
| PFX / PKCS#12 | .pfx, .p12 | Двоичный, защищён паролем, может включать закрытый ключ | Импорт/экспорт в Windows, IIS, пакеты для подписи кода |
Быстрая проверка: если файл открывается в текстовом редакторе и содержит -----BEGIN CERTIFICATE-----, это PEM. Если выглядит как двоичный мусор — это DER или PFX.
Полезные команды OpenSSL
Предпочитаете командную строку? Эти команды OpenSSL делают то же, что и этот инструмент — декодируют, проверяют даты и снимают отпечаток сертификата:
openssl x509 -in cert.pem -text -noout
Декодировать и показать все поля сертификата
openssl x509 -in cert.pem -noout -dates
Показать только сроки действия (notBefore / notAfter)
openssl x509 -in cert.pem -noout -fingerprint -sha256
Вывести отпечаток SHA-256
openssl x509 -in cert.der -inform DER -text -noout
Декодировать двоичный сертификат DER
openssl x509 -in cert.pem -noout -subject -issuer
Показать только Subject и Issuer
openssl s_client -connect example.com:443 -showcerts
Получить цепочку сертификатов с живого сервера
Справочник полей сертификата
Что означает каждое декодированное поле и почему оно важно:
Subject (кому выдан)
Идентичность, на которую выдан сертификат. Типовые компоненты: CN (общее имя), O (организация), C (страна).
Issuer (кем выдан)
Центр сертификации, подписавший сертификат. Если Subject совпадает с Issuer, сертификат самоподписанный.
Serial Number (серийный номер)
Уникальный номер, назначенный выдающим CA. Используется для проверки отзыва (CRL / OCSP).
Validity (Not Before / Not After)
Окно времени, в котором сертификат действителен. Вне этого окна браузеры и клиенты его отклоняют.
Public Key и размер ключа
Открытый ключ, привязанный к идентичности. Норма сейчас — RSA 2048 бит или EC 256 бит; RSA 1024 бит устарел.
Subject Alternative Names (SAN)
Список доменных имён и IP, которые покрывает сертификат. С 2015 года браузеры сверяются с SAN, а не с CN — сертификат example.com должен явно включать www.example.com, иначе валидация не пройдёт.
Signature Algorithm (алгоритм подписи)
Каким алгоритмом CA подписал сертификат. Требуются SHA-256 и выше; подписи SHA-1 отклоняются современными браузерами.
Fingerprint (отпечаток SHA-256)
Хэш всего DER-кодированного сертификата. Используется для пиннинга и сравнения сертификатов между системами.
Часто задаваемые вопросы
Инструмент поддерживает PEM-кодированные сертификаты (-----BEGIN CERTIFICATE-----). Форматы DER и P7B в настоящее время не поддерживаются.
Инструмент декодирует и отображает детали сертификата, но не проверяет цепочку доверия по корневым CA.
В настоящее время поддерживаются только сертификаты X.509. Декодирование CSR может быть добавлено в будущем обновлении.
PEM — это текст в Base64 с заголовками BEGIN/END (расширения .pem, .crt, .cer). DER — сырая двоичная ASN.1-форма тех же данных. CRT и CER — просто имена расширений, содержимое может быть как PEM, так и DER. PFX/PKCS#12 — защищённый паролем двоичный пакет, который может включать закрытый ключ; применяется в основном в Windows.
Декодирование и валидация — разные вещи. Сертификат может отлично парситься, но не проходить валидацию: истёк срок, имя хоста отсутствует в SAN, цепочка не ведёт к доверенному корневому CA или сертификат отозван. Инструмент показывает декодированные поля — сначала проверьте сроки действия и SAN.
Да. SSL-сертификат — общедоступная информация: его получает каждый посетитель вашего сайта, секретов в нём нет. А вот закрытый ключ не вставляйте нигде и никогда: этому инструменту он не нужен и использовать его он не может.
Отдаваемая цепочка содержит конечный (leaf) сертификат плюс промежуточные центры сертификации (CA), которые связывают его с доверенным корневым — обычно всего 2–3 сертификата. Сам корневой сертификат отправлять не нужно: клиенты уже хранят корни в своём хранилище доверия. Отсутствующий промежуточный сертификат — самая частая причина ошибок TLS в духе «в моём браузере работает, а на мобильном падает», поскольку одни клиенты кэшируют или угадывают промежуточные сертификаты, а другие — нет.
Декодируйте сертификат и посмотрите блок срока действия: notBefore — дата выпуска, notAfter — дата истечения срока; планируйте продление не позднее чем за 30 дней до notAfter. SAN (Subject Alternative Names) перечисляет все имена хостов, которые покрывает сертификат; имя, отсутствующее в этом списке, вызывает в браузерах ошибку несоответствия имени сертификата, даже если CN совпадает. Этот инструмент показывает оба поля сразу в декодированном виде.
Похожие инструменты
Парсер JWT
Мгновенное декодирование и проверка JSON Web Tokens (JWT). Просмотр заголовка, полезной нагрузки и информации о подписи с удобным отображением времени
Декодер SAML
Декодирование утверждений SAML из XML в кодировке Base64
Декодер Base64 и URL
Декодирование и кодирование Base64, парсинг URL-кодированных строк, предпросмотр изображений Base64 и декодирование сегментов заголовка или полезной нагрузки JWT
Авторитетные источники
Первоисточники, лежащие в основе этого инструмента, — официальные стандарты и спецификации, а не пересказы из вторых рук.
RFC 5280 - Internet X.509 PKI Certificate and CRL Profile
Профиль IETF для сертификатов X.509: поля, расширения, SAN и отзыв.
X.509 - Wikipedia
Формат сертификатов инфраструктуры открытых ключей X.509 и его поля.
MDN Web Docs - TLS Certificates
Справочник Mozilla по TLS-сертификатам и тому, как браузеры проверяют цепочку доверия.