Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
Построение цепочки проверки сертификата, используя кросс-сертификат
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
У меня есть УЦ1 и УЦ2. УЦ2 выдал пользовательский сертификат B, у которого идентификатор ключа субъекта совпадает с идентификатором ключа УЦ2. Пользователь A принадлежит УЦ1 и хочет проверить сертификат B. Для этого я из сертификата УЦ2 сделал запрос и подписал его на УЦ1, получив кросс-сертификат. Таким образом, я предполагаю, что цепочка будет строиться так: возьмем сертификат B, из него достанем идентификатор ключа центра сертификатов, по этому ключу получим из хранилища кросс-сертификат, у него достанем идентификатор ключа центра сертификатов, и по этому ключу получим корневой сертификат УЦ1. Таким образом цепочка сложилась. Я правильно понимаю? Проблема в том, что когда я делаю кросс-сертификат, то его идентификатор ключа субъекта не совпадает с идентификатором ключа самоподписанного сертификата УЦ2. А так как именно этот идентификатор ключа хранится в сертификате B, то мне не удается проверить сертификат B с помощью кросс-сертификата. Скажите, пожалуйста, в чём моя ошибка?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
Мне кажется много людей просмотрело тему, но никто ничего не ответил, и я хочу добавить поясняющий вопрос: Должен ли идентификатор ключа субъекта у корневого сертификата УЦ2 совпадать с идентификатором ключа субъекта кросс-сертификата?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,719 Сказал «Спасибо»: 500 раз Поблагодарили: 2054 раз в 1594 постах
|
LucidLynx написал:У меня есть УЦ1 и УЦ2. УЦ2 выдал пользовательский сертификат B, у которого идентификатор ключа субъекта совпадает с идентификатором ключа УЦ2.
Точно? Может правильнее так: идентификатор ключа ЦС (УЦ2) в сертификате пользователя совпадает с идентификатором ключа субъекта в сертификате УЦ2Идентификатор ключа - хеш от открытого ключа, при запросе на кросс - не создается новых ключей => должен совпадать Отредактировано пользователем 15 июня 2012 г. 18:06:57(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
Да, я неверно написал. В сертификате пользователя B идентификатор ключа центра сертификатов совпадает с идентификатором ключа субъекта сертификата УЦ2. Правильно? Я пытаюсь реализовать проверку, используя кросс-сертификат. Сделал корневой самоподписанный через OpenSSL, сделал из него запрос и отдаю его нашему внутреннему тестовому центру сертификации (называется Microsoft -- Службы сертификации). В результате я получаю кросс-сертификат, в котором идентификатор ключа субъекта отличается от идентификатора ключа субъекта в самоподписанном корневом. Утилита certutil выдает следующее: Хеш ИД ключа (rfc-sha1): ee ab 11 50 31 e2 e1 84 b4 dc b7 5b 32 95 3e 15 ab b9 1b 9d Хеш ИД ключа (sha1): 54 ea 7f 5c a2 cd 7d 85 09 c8 e8 85 15 81 94 01 03 ed d9 ad Вот в получившемся кросс-сертификате идентификатор ключа субъекта равен 54 ea 7f... А в моем самоподписанном корневом (и именно это значение стоит в поле идентификатор ключа центра сертификатов в сертификате пользователя B) — ee ab 11... Поэтому цепочка не строится. Насколько я понял из RFC 3280, алгоритм получения идентификатор ключа субъекта может быть разным, и даже быть просто монотонно увеличивающимся (параграф 4.2.1.2 Subject Key Identifier). Как, учитывая это, следует находить следующий сертификат в цепочке?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,719 Сказал «Спасибо»: 500 раз Поблагодарили: 2054 раз в 1594 постах
|
LucidLynx написал:Да, я неверно написал. В сертификате пользователя B идентификатор ключа центра сертификатов совпадает с идентификатором ключа субъекта сертификата УЦ2. Правильно? Я пытаюсь реализовать проверку, используя кросс-сертификат. Сделал корневой самоподписанный через OpenSSL, сделал из него запрос и отдаю его нашему внутреннему тестовому центру сертификации (называется Microsoft -- Службы сертификации). В результате я получаю кросс-сертификат, в котором идентификатор ключа субъекта отличается от идентификатора ключа субъекта в самоподписанном корневом. Утилита certutil выдает следующее: Хеш ИД ключа (rfc-sha1): ee ab 11 50 31 e2 e1 84 b4 dc b7 5b 32 95 3e 15 ab b9 1b 9d Хеш ИД ключа (sha1): 54 ea 7f 5c a2 cd 7d 85 09 c8 e8 85 15 81 94 01 03 ed d9 ad Вот в получившемся кросс-сертификате идентификатор ключа субъекта равен 54 ea 7f... А в моем самоподписанном корневом (и именно это значение стоит в поле идентификатор ключа центра сертификатов в сертификате пользователя B) — ee ab 11... Поэтому цепочка не строится. Насколько я понял из RFC 3280, алгоритм получения идентификатор ключа субъекта может быть разным, и даже быть просто монотонно увеличивающимся (параграф 4.2.1.2 Subject Key Identifier). Как, учитывая это, следует находить следующий сертификат в цепочке? http://www.cryptopro.ru/....aspx?g=posts&t=4276открытые ключи в сертификатах = разное значение? есть предложение - выложить сертификаты здесь... самоподписанный и выданный... ( обычно с этого начинают) Отредактировано пользователем 15 июня 2012 г. 18:37:30(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
Спасибо. Но у меня нет задачи вычислять этот хеш, я строю цепочку проверки сертификатов. Я беру из пользовательского сертификата идентификатор ключа центра сертификатов и ищу в хранилище по этому ключу сертификат, чтобы добавить его в цепочку. Но так как у кросса другой идентификатор, то для пользовательского сертификата не находится сертификата, которым бы можно было его проверить. В этом моя проблема. Сертификаты я создаю с помощью OpenSSL, а кросс выдал себе через наш внутренний Microsoft-овский УЦ. Да, в моем самоподписанном корневом сертификате и в кросс-сертификате абсолютно одинаковые публичные ключи, но разные идентификаторы ключа субъекта. P.S. Сейчас сделаю сертификаты. Отредактировано пользователем 15 июня 2012 г. 18:45:02(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,719 Сказал «Спасибо»: 500 раз Поблагодарили: 2054 раз в 1594 постах
|
ОС же строит цепочку если вместо корневого, поставить в хранилище кросс... |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
В моем случае цепочку строит прикладной код на Java. Я предполагал положить кросс в хранилище промежуточных сертификатов и реализовать работу с ними.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,719 Сказал «Спасибо»: 500 раз Поблагодарили: 2054 раз в 1594 постах
|
LucidLynx написал:В моем случае цепочку строит прикладной код на Java. Я предполагал положить кросс в хранилище промежуточных сертификатов и реализовать работу с ними. Пример с кроссом и тем же корневым на двух машинах: http://rghost.ru/38679881 |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 15.03.2012(UTC) Сообщений: 54 Откуда: Белгород
|
В cacert и cross идентификаторы ключа субъекта разные, а публичные ключи одинаковые. Отредактировано пользователем 15 июня 2012 г. 18:53:03(UTC)
| Причина: Не указана Вложение(я): cacert.crt (1kb) загружен 11 раз(а). usercert.crt (1kb) загружен 7 раз(а). cross.cer (2kb) загружен 13 раз(а).У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
|
|
|
|
Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
Построение цепочки проверки сертификата, используя кросс-сертификат
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close