Вставьте ниже запрос на подписание сертификата (CSR), и этот декодер CSR покажет вам, что на самом деле в нём содержится: общее имя (Common Name) и остальные поля отличительного имени (Distinguished Name), открытый ключ и его размер, алгоритм подписи, а также каждое альтернативное имя субъекта (Subject Alternative Name), охватываемое запросом.
Проверка этих полей занимает несколько секунд. Если её пропустить, придётся выпускать сертификат повторно. Центр сертификации без проблем подпишет CSR с опечаткой в домене, и вы узнаете об этом, когда браузеры начнут выдавать ошибки несовпадения имени на сертификате, который вы уже оплатили и установили.
Декодируйте ваш файл CSR
Вставьте полный текст вашего CSR в поле, включая строки заголовка и окончания:
Действительный CSR начинается со строки ——BEGIN CERTIFICATE REQUEST—— и заканчивается строкой ——END CERTIFICATE REQUEST——.
На серверах Windows с IIS начальная строка записывается как ——BEGIN NEW CERTIFICATE REQUEST——. Оба варианта здесь работают. Файл может иметь расширение .csr, .pem или .txt — значение имеет только текст внутри него. Этот бесплатный онлайн-декодер CSR читает формат PEM, кодировку Base64, которую использует практически каждый сервер и панель хостинга.
Ещё нет CSR? Создайте его с помощью нашего генератора CSR или воспользуйтесь руководством по созданию CSR для вашей платформы.
Что показывает декодер CSR
Каждый CSR содержит две вещи, которые нужны центру сертификации: кем вы себя заявляете и какой открытый ключ вы хотите сертифицировать. Часть с идентификационными данными называется субъектом, или отличительным именем (Distinguished Name), и представляет собой набор именованных полей, а не одну длинную строку. Декодер разбивает отличительное имя на составляющие и приводит рядом с ним ключевые сведения.
В таблице ниже перечислены все поля, которые возвращает этот декодер CSR, каким должно быть допустимое значение и что происходит, если оно указано неверно.
| Поле | Что это | Допустимое значение | Что ломается, если оно неверно |
|---|---|---|---|
| Общее имя (CN) | Основной домен, который будет защищён сертификатом | www.example.com или *.example.com для wildcard-сертификата | Должно в точности совпадать с полным доменным именем (FQDN). Опечатка или отсутствие www приводит к ошибке несовпадения имени в любом браузере и к необходимости переоформления сертификата. |
| Альтернативное имя субъекта (SAN) | Расширение, перечисляющее все домены, охваченные сертификатом | DNS:example.com, DNS:www.example.com | Браузеры считывают SAN и игнорируют общее имя. Любой домен, отсутствующий в этом списке, не защищён сертификатом, независимо от того, что указано в CN. |
| Организация (O) | Ваше юридически зарегистрированное название компании | Example Corporation Ltd | Проверяется по публичным реестрам для сертификатов OV и EV. Торговое название или сокращение приостанавливает процесс проверки. |
| Подразделение организации (OU) | Отдел или подразделение внутри организации | IT Department | Согласно решению CA/Browser Forum SC47, поле OU запрещено в публично доверенных TLS-сертификатах, выпущенных 1 сентября 2022 года и позднее. Вы всё ещё можете указать его в CSR, но оно будет удалено из полученного сертификата. |
| Населённый пункт (L) | Город или населённый пункт | San Francisco | Указывайте полностью. SF не проходит проверку OV. |
| Штат или регион (ST) | Штат, провинция или регион | California | Указывайте полностью. CA воспринимается как сокращение и отклоняется. |
| Страна (C) | Двухбуквенный код ISO 3166-1 alpha-2 | US, GB, DE | Ровно две буквы. USA и UK — самые распространённые ошибки формата в CSR. |
| emailAddress | Необязательный контактный адрес в субъекте | [email protected] | Необязательно. Большинство публичных ЦС его игнорируют. |
| Алгоритм открытого ключа | Алгоритм, с помощью которого создана пара ключей | RSA или ECDSA | Ключи ECDSA меньше и проверяются быстрее. RSA имеет более широкую поддержку на старом оборудовании. Некоторые устаревшие балансировщики нагрузки и устройства принимают только RSA. |
| Размер ключа | Длина открытого ключа | 2048 или 4096 бит для RSA; 256 или 384 бита для ECDSA | 2048 бит — минимум для RSA в любом публичном ЦС. Запрос с ключом 1024 бита отклоняется сразу. |
| Алгоритм подписи | Алгоритм, которым подписан запрос | SHA-256 с шифрованием RSA | SHA-1 больше не принимается. Это поле описывает собственную подпись CSR; алгоритм для выпускаемого сертификата выбирает ЦС. |
CSR может также содержать необязательные атрибуты и запрошенные расширения, которые большинство декодеров пропускают. Пароль-вызов (challenge password) — это необязательная строка, которую некоторые ЦС раньше использовали для авторизации отзыва сертификата; оставьте её пустой, если ваш ЦС не требует иного. Запрошенные расширения, такие как keyUsage, extendedKeyUsage и basicConstraints, описывают, что должно быть разрешено делать сертификату, хотя окончательные значения устанавливает ЦС.
Как работает декодирование CSR
CSR — это запрос на сертификацию в формате PKCS#10, определённый в RFC 2986. Его содержимое описывается на языке ASN.1, сериализуется в DER — бинарный формат, — затем кодируется в Base64 и оборачивается строками заголовка и окончания PEM, чтобы запрос можно было безопасно передавать по электронной почте и копировать без повреждения данных.
Декодирование выполняет обратную последовательность действий. Инструмент удаляет оболочку PEM, преобразует Base64 обратно в DER, разбирает структуру ASN.1 и помечает каждое найденное значение.
На любом этапе никакого расшифровывания не происходит, потому что ничто в CSR не зашифровано. CSR содержит ваш открытый ключ. Приватный ключ остаётся на сервере, на котором он был создан, и никогда не попадает в запрос. Любой, кто перехватит CSR, сможет его прочитать, и именно поэтому его безопасно отправлять центру сертификации по электронной почте.
Что CSR действительно содержит — это подпись. Запрос подписывается приватным ключом, соответствующим открытому ключу внутри него, что доказывает, что вы владеете этим ключом. Это называется доказательством владения (Proof of Possession), и именно так ЦС узнаёт, что человек, запрашивающий сертификат, контролирует сертифицируемый ключ.
После проверки запроса ЦС выпускает сертификат X.509, содержащий ваш открытый ключ и те поля субъекта, которые ему удалось подтвердить.
Что проверить перед отправкой CSR
Пройдите по этому списку с декодированным результатом, прежде чем запрос попадёт в центр сертификации. Использование декодера в качестве проверки CSR на этом этапе занимает минуту. Обнаружение той же ошибки после выпуска сертификата обходится переоформлением и повторным развёртыванием.
- Общее имя точно совпадает с вашим полным доменным именем, включая или исключая www, как задумано. example.com и www.example.com — это два разных имени.
- Каждый нужный домен присутствует в списке SAN, а не только в общем имени.
- Страна указана ровно двумя буквами. При сомнениях проверьте по списку ISO 3166-1 alpha-2.
- Штат и населённый пункт указаны полностью, без сокращений.
- Организация указана как ваше зарегистрированное юридическое название, если вы покупаете сертификат OV или EV. Сертификаты с проверкой домена (DV) игнорируют это поле.
- Ключ имеет длину 2048 бит RSA или больше, либо 256 бит ECDSA или больше.
- Алгоритм подписи — SHA-256 или сильнее.
- Синтаксис wildcard-домена — *.example.com, что охватывает только один уровень. Он не покрывает shop.eu.example.com.
- У вас всё ещё есть приватный ключ, из которого был сгенерирован этот CSR. Подтвердите это с помощью инструмента Certificate Key Matcher перед заказом.
Распространённые проблемы CSR, которые выявляет декодер
Несовпадение имени. Общее имя или список SAN не совпадают с доменом, на котором сервер фактически отвечает. Это самая распространённая причина, по которой сертификат устанавливается, но всё равно выдаёт ошибку в браузере.
Отсутствующий SAN. Сертификат выпущен, общее имя выглядит верно, но одно из имён хостов всё равно вызывает ошибку. Декодируйте CSR и проверьте, было ли это имя хоста когда-либо в списке SAN. Если нет — оно никогда не было защищено.
Отклонённый код страны. Три буквы вместо двух. ЦС отклоняет запрос, обычно с сообщением, которое не называет конкретное поле.
Сокращённое название штата. CA вместо California, NY вместо New York. Заказы с проверкой домена (DV) проходят. Заказы с проверкой организации (OV) и расширенной проверкой (EV) приостанавливаются на этапе проверки до повторной подачи.
Слишком маленький ключ. RSA-1024 уже много лет не принимается публичными ЦС. Создайте новый CSR с ключом 2048 бит или больше; исправить это редактированием запроса невозможно.
Поле OU исчезло. Вы указали отдел в поле подразделения организации, но его нет в выпущенном сертификате. Это ожидаемое поведение с сентября 2022 года, а не ошибка со стороны ЦС. Узнайте, почему было удалено поле OU.
CSR не совпадает с вашим приватным ключом. Обычно это результат создания второго CSR и потери информации о том, какая пара ключей относится к какому запросу. Инструмент Certificate Key Matcher решает это за один шаг.
Международный домен в неверной форме. Домены с не-ASCII символами должны указываться в кодировке Punycode, форме xn--, а не в исходном написании.
Декодирование CSR с помощью OpenSSL
Если у вас установлен OpenSSL, вы можете прочитать CSR без браузера:
openssl req -in example.csr -noout -text
Добавьте -verify, чтобы одновременно проверить собственную подпись запроса, что подтверждает, что CSR не был изменён с момента создания:
openssl req -in example.csr -noout -text -verify
Вывод размещает всё отличительное имя в строке Subject: в виде одной строки, разделённой запятыми, а не отдельными полями, поэтому читайте её слева направо: C, ST, L, O, OU, CN. Ниже указывается Public Key Algorithm — название RSA или ECDSA, а Public-Key: приводит длину в битах в скобках. Signature Algorithm встречается два раза: один раз в начале и один раз внизу возле блока подписи; обе записи относятся к собственной подписи CSR.
Альтернативные имена субъекта легко пропустить. Они не входят в строку Subject. Ищите дальше вниз блок Requested Extensions и запись X509v3 Subject Alternative Name под ним. Если этот блок отсутствует, у CSR вообще нет SAN.
Веб-инструмент выше — более быстрый вариант, когда OpenSSL не установлен, когда вы работаете на Windows без WSL, или когда CSR получен из панели хостинга и существует только как текст во вкладке браузера. Результат содержит те же данные, изложенные простым языком.
Декодирование CSR для Sectigo, DigiCert или любого другого ЦС
CSR — это файл PKCS#10, и формат не меняется в зависимости от того, кто будет его подписывать. Нет отдельного формата CSR для Sectigo или DigiCert, поэтому один декодер подходит для запросов, предназначенных для любого центра сертификации.
Что действительно различается между ЦС — это какие поля проверяются и насколько строго. Сертификаты с проверкой домена (DV) проверяют только контроль над доменом и полностью игнорируют поле организации. Сертификаты с проверкой организации (OV) и расширенной проверкой (EV) требуют, чтобы поля организации, населённого пункта, штата и страны совпадали с публичными реестрами, поэтому точность этих полей становится всё важнее по мере продвижения вверх по уровням проверки.
Часто задаваемые вопросы
Что такое декодер CSR?
Декодер CSR — это инструмент, который читает запрос на подписание сертификата (Certificate Signing Request) и отображает его содержимое в понятном виде. Он расшифровывает кодировку Base64 и ASN.1, которая делает CSR нечитаемым для человеческого глаза, а затем помечает каждое поле: Common Name, Organization, Organizational Unit, Locality, State, Country, алгоритм открытого ключа, размер ключа, алгоритм подписи и любые Subject Alternative Names. Такой инструмент используют для проверки запроса перед его отправкой или для выяснения причин, по которым уже имеющийся сертификат работает не так, как ожидалось.
Копировать ссылку
Как прочитать файл CSR?
Вставьте его в декодер CSR, который иногда называют CSR viewer или CSR reader, и прочитайте помеченные данные в выводе. CSR выглядит как сплошной блок случайных символов, потому что это двоичные данные, закодированные в Base64, поэтому при открытии файла в текстовом редакторе вы не увидите ничего полезного. Если вы предпочитаете командную строку, команда openssl req -in example.csr -noout -text выводит ту же информацию.
Копировать ссылку
Можно ли расшифровать CSR?
Нет, потому что CSR не зашифрован. Это одно из самых устойчивых заблуждений о запросах на сертификат. CSR представляет собой данные ASN.1, закодированные в Base64, которые может декодировать кто угодно, без ключа и без пароля. Он содержит ваш открытый ключ, но никогда не содержит закрытого. То, что люди подразумевают под «расшифровать CSR», на самом деле означает декодировать его, и именно это делает данный инструмент, а также команда openssl req.
Копировать ссылку
Нужно ли декодировать CSR перед отправкой в Certificate Authority?
Нет. Отправляйте закодированный текст именно в том виде, в котором его сгенерировал ваш сервер, включая строки заголовка и окончания. CA разбирает его на своей стороне. Декодирование нужно для вашей пользы, а не для них: именно так вы можете обнаружить неправильный домен или двухбуквенный код страны до того, как CA превратит вашу ошибку в сертификат.
Копировать ссылку
Могу ли я прочитать текст CSR в командной строке?
Да. openssl req -in example.csr -noout -text выводит расшифрованное содержимое в терминал. Добавление -verify также проверяет самоподпись CSR. Смотрите раздел OpenSSL выше, чтобы узнать, что означает каждая часть вывода.
Копировать ссылку
Какую информацию я увижу после декодирования CSR?
Субъект, также называемый Distinguished Name (уникальное имя), который содержит Common Name, Organization, Organizational Unit, Locality, State и Country. Открытый ключ с указанием его алгоритма (RSA или ECDSA) и размера ключа в битах. Алгоритм подписи, которым был подписан запрос. И, если они включены в запрос, альтернативные имена субъекта (Subject Alternative Names), перечисляющие все домены, которые будет охватывать сертификат.
Копировать ссылку
Что такое Subject Alternative Name и почему он важнее, чем Common Name?
Subject Alternative Name — это расширение, в котором перечислены все имена хостов, охватываемые сертификатом. Современные браузеры считывают список SAN и полностью игнорируют Common Name, поэтому домен, указанный только в поле Common Name и отсутствующий в списке SAN, вызовет ошибку. Большинство публичных CA автоматически копируют Common Name в список SAN при выпуске сертификата, но это стоит уточнить у своего CA, а не полагаться на это по умолчанию. Если вам нужно несколько имен хостов в одном сертификате, укажите их все.
Копировать ссылку
Почему поле OU отсутствует в моём выданном сертификате?
Потому что это больше не разрешено. Голосование SC47 CA/Browser Forum запретило поле Organizational Unit в общедоступных доверенных сертификатах TLS, выпущенных начиная с 1 сентября 2022 года, на том основании, что CA не имеет надежного способа проверить название подразделения. Вы всё ещё можете указать OU при генерации CSR, и декодер его отобразит, но CA удаляет его перед выпуском сертификата. Ничего не пошло не так.
Копировать ссылку
Что такое PKCS#10?
PKCS#10 — это стандарт, определяющий формат CSR, описанный в RFC 2986. Он устанавливает, какие поля содержит запрос на сертификат и как они структурированы, поэтому один и тот же CSR работает с любым Удостоверяющим Центром, а не привязан только к тому, у которого вы приобрели сертификат.
Копировать ссылку
Связанные SSL-инструменты

Генератор CSR
Автоматически создайте свой CSR (запрос на подписание сертификата) и приватный ключ на основе данных, которые вы указываете при заполнении формы CSR.

Конвертер SSL
Конвертируйте ваш SSL/TLS-сертификат между форматами PEM, DER, PFX и P7B прямо в браузере. Смените формат за несколько кликов, чтобы сертификат корректно устанавливался на любом сервере или платформе, ожидающей другой формат.

Certificate Key Matcher
Проверьте, принадлежат ли ваш SSL-сертификат, приватный ключ и CSR одной и той же паре ключей. Всё выполняется в вашем браузере, поэтому приватный ключ никогда не покидает ваше устройство.

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