Запрос на подпись сертификата

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

. В системах инфраструктуры открытых ключей (PKI) запрос на подпись сертификата (также CSR или запрос на сертификацию ) - это сообщение, отправленное от заявителя в центр регистрации открытого ключа инфраструктура для подачи заявки на сертификат цифровой идентичности. Обычно он содержит открытый ключ, для которого должен быть выдан сертификат, идентифицирующую информацию (например, имя домена) и защиту целостности (например, цифровую подпись). Наиболее распространенный формат для CSR - это спецификация PKCS # 10; другой - подписанный открытый ключ и формат запроса SPKAC, сгенерированный некоторыми веб-браузерами.

Содержание
  • 1 Процедура
  • 2 Структура
  • 3 Пример
  • 4 См. также
  • 5 Ссылки
Процедура

Перед созданием CSR кандидат сначала генерирует пару ключей , сохраняя в секрете закрытый ключ. CSR содержит информацию, идентифицирующую заявителя (например, отличительное имя в случае сертификата X.509 ), которая должна быть подписана с использованием закрытого ключа заявителя.. CSR также содержит открытый ключ , выбранный заявителем. CSR может сопровождаться другими учетными данными или доказательствами личности, требуемыми центром сертификации, и центр сертификации может связаться с заявителем для получения дополнительной информации.

Типичная информация, требуемая в CSR (образец столбца из образца сертификата X.509 ). Обратите внимание, что часто существуют альтернативы отличительным именам (DN), предпочтительное значение указано в списке.

DNИнформацияОписаниеПример
CNОбщее имяЭто полное доменное имя, которое вы хотите защитить*. Wikipedia.org
OНазвание организацииОбычно юридическое название компании или юридического лица и должно включать любые суффиксы, такие как Ltd., Inc. или Corp.Wikimedia Foundation, Inc.
OUОрганизационная единицаНазвание отдела / подразделения внутренней организацииИТ
LНаселенный пунктНазвание города, поселка и т. Д.Сан-Франциско
STШтатПровинция, регион, округ или штат. Это не должно быть сокращено (например, Западный Суссекс, Нормандия, Нью-Джерси).Калифорния
CСтранадвухбуквенный код ISO для страны, в которой находится ваша организацияСША
EMAILАдрес электронной почтыКонтактное лицо организации, обычно администратора сертификата или ИТ-отдела

Если запрос будет успешным, центр сертификации отправит обратно сертификат идентификации, который был подписан цифровой подписью с использованием закрытого ключа центр сертификации.

Структура

Запрос на сертификацию состоит из трех основных частей: информации запроса сертификации, идентификатора алгоритма подписи и цифровой подписи в информации запроса на сертификацию. Первая часть содержит важную информацию, включая открытый ключ. Подпись запрашивающей стороны не позволяет субъекту запрашивать поддельный сертификат чьего-либо открытого ключа. Таким образом, закрытый ключ необходим для создания CSR, но не является его частью.

CSR для сертификатов личного идентификатора и сертификатов для подписи должен содержать адрес электронной почты держателя идентификатора или название организации в случае бизнеса МНЕ БЫ.

Первая часть, тип ASN.1 CertificationRequestInfo, состоит из номера версии (который равен 0 для всех известных версий 1.0, 1.5 и 1.7 спецификаций), имени субъекта, открытого ключа (алгоритм идентификатор + битовая строка), а также набор атрибутов, предоставляющих дополнительную информацию о субъекте сертификата. Атрибуты могут содержать требуемые расширения сертификата, пароль запроса для ограничения аннулирования, а также любую дополнительную информацию о субъекте сертификата, возможно, включая локальные или будущие типы.

Пример

PKCS # 10 стандарт определяет двоичный формат для кодирования CSR для использования с X.509. Он выражен в ASN.1. Вот пример того, как вы можете изучить его структуру ASN.1, используя OpenSSL :

openssl asn1parse -i -in your_request

CSR может быть представлен как PKCS # 10 в кодировке Base64 ; пример которого приведен ниже:

----- BEGIN CERTIFICATE REQUEST ----- MIICzDCCAbQCAQAwgYYxCzAJBgNVBAYTAkVOMQ0wCwYDVQQIDARub25lMQ0wCwYD VQQHDARub25lMRIwEAYDVQQKDAlXaWtpcGVkaWExDTALBgNVBAsMBG5vbmUxGDAW BgNVBAMMDyoud2lraXBlZGlhLm9yZzEcMBoGCSqGSIb3DQEJARYNbm9uZUBub25l LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMP / U8RlcCD6E8AL PT8LLUR9ygyygPCaSmIEC8zXGJung3ykElXFRz / Jc / bu0hxCxi2YDz5IjxBBOpB / kieG83HsSmZZtR + drZIQ6vOsr / ucvpnB9z4XzKuabNGZ5ZiTSQ9L7Mx8FzvUTq5y / Arium + FBeuno / IV8zvwAe / VRa8i0QjFXT9vBBp35aeatdnJ2ds50yKCsHHcjvtr 9 / 8zPVqqmhl2XFS3Qdqlsprzbgksom67OobJGjaV + fNHNQ0o / RZP // Pl3i7vvaEG 7Ff8tQhEwR9nJUR1T6Z7ln7S6cOr23YozgWVkEJ / dSr6LAopb + cZ88FzW5NszU6i 57HhA7ECAwEAAaAAMA0GCSqGSIb3DQEBBAUAA4IBAQBn8OCVOIx + n0AS6WbEmYDR SspR9xOCoOwYfamB + 2Bpmt82R01zJ / kaqzUtZUjaGvQvAaz5lUwoMdaO0X7I5Xfl sllMFDaYoGD4Rru4s8gz2qG / QHWA8uPXzJVAj6X0olbIdLTEqTKsnBj4Zr1AJCNy / YcG4ouLJr140o26MhwBpoCRpPjAgdYMH60BYfnc4 / DILxMVqR9xqK1s98d6Ob / + 3wHFK + S7BRWrJQXcM8veAexXuk9lHQ + FgGfD0eSYGz0kyP26Qa2pLTwumjt + nBPl rfJxaLHwTQ / 1988G0H35ED0f9Md5fzoKi5evU1wG5WRxdEUPyt3QUXxdQ69i0C + 7 ----- ЗАПРОС СЕРТИФИКАТА -----

Структура ASN.1 вышеупомянутого запроса на подпись сертификата (проанализированная openssl) выглядит следующим образом, где первое число - байтовое смещение, d = глубина, hl = длина заголовка текущего типа, l = длина содержимого:

0: d = 0 hl = 4 l = 716 минусы: ПОСЛЕДОВАТЕЛЬНОСТЬ 4: d = 1 hl = 4 l = 436 минусов: ПОСЛЕДОВАТЕЛЬНОСТЬ 8: d = 2 hl = 2 l = 1 prim: INTEGER: 00 11: d = 2 hl = 3 l = 134 минусы: ПОСЛЕДОВАТЕЛЬНОСТЬ 14: d = 3 hl = 2 l = 11 минусов: НАБОР 16: d = 4 hl = 2 l = 9 cons: ПОСЛЕДОВАТЕЛЬНОСТЬ 18: d = 5 hl = 2 l = 3 prim: OBJECT: countryName 23: d = 5 hl = 2 l = 2 prim: ПЕЧАТЬ: EN 27: d = 3 hl = 2 l = 13 минусов: НАБОР 29: d = 4 hl = 2 l = 11 минусов: ПОСЛЕДОВАТЕЛЬНОСТЬ 31: d = 5 hl = 2 l = 3 prim: ОБЪЕКТ: stateOrProvinceName 36: d = 5 hl = 2 l = 4 prim : UTF8STRING: none 42: d = 3 hl = 2 l = 13 cons: SET 44: d = 4 hl = 2 l = 11 cons: SEQUENCE 46: d = 5 hl = 2 l = 3 prim: OBJECT: localityName 51: d = 5 hl = 2 l = 4 prim: UTF8STRING: none 57: d = 3 hl = 2 l = 18 cons: SET 59: d = 4 hl = 2 l = 16 cons: SEQUENCE 61: d = 5 hl = 2 l = 3 prim: ОБЪЕКТ: организация Имя 66: d = 5 hl = 2 l = 9 prim: UTF8STRING: Wikipedia 77: d = 3 hl = 2 l = 13 cons: SET 79: d = 4 hl = 2 l = 11 cons: SEQUENCE 81: d = 5 hl = 2 l = 3 prim: OBJECT: organizationUnitName 86: d = 5 hl = 2 l = 4 prim: UTF8STRING: none 92: d = 3 hl = 2 l = 24 cons: SET 94: d = 4 hl = 2 l = 22 минусов: ПОСЛЕДОВАТЕЛЬНОСТЬ 96: d = 5 hl = 2 l = 3 prim: OBJECT: commonName 101: d = 5 hl = 2 l = 15 prim: UTF8STRING: *. Wikipedia.org 118: d = 3 hl = 2 l = 28 минусов: НАБОР 120: d = 4 hl = 2 l = 26 минусов: ПОСЛЕДОВАТЕЛЬНОСТЬ 122: d = 5 hl = 2 l = 9 prim: OBJECT: emailAddress 133: d = 5 hl = 2 l = 13 prim: IA5STRING: [email#160;protected] 148: d = 2 hl = 4 l = 290 минусы: ПОСЛЕДОВАТЕЛЬНОСТЬ 152: d = 3 hl = 2 l = 13 минусы: ПОСЛЕДОВАТЕЛЬНОСТЬ 154: d = 4 hl = 2 l = 9 prim: ОБЪЕКТ: rsaEncryption 165 : d = 4 hl = 2 l = 0 prim: NULL 167: d = 3 hl = 4 l = 271 prim: BIT STRING 442: d = 2 hl = 2 l = 0 cons: cont [0] 444: d = 1 hl = 2 l = 13 cons: SEQUENCE 446: d = 2 hl = 2 l = 9 prim: OBJECT: md5WithRSAEncryption 457: d = 2 hl = 2 l = 0 prim: NULL 459: d = 1 hl = 4 l = 257 prim: BIT STRING

Это было сгенерировано путем передачи кодировки base64 в команду openssl asn1parse -in your_requ est -inform PEM -i, где PEM означает Почта с улучшенной конфиденциальностью и описывает кодировку ASN.1 Distinguished Encoding Rules в base64.

См. Также
Ссылки
Последняя правка сделана 2021-05-14 03:46:20
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте