Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline Aleks305  
#1 Оставлено : 3 мая 2011 г. 2:34:20(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

Добрый день!
В организации используются разные приложения, в которых используются сертификаты, хотелось бы чтобы сертификаты, выданные для одного приложения не могли быть использованы другом. Насколько я понял эту задачу можно решить с использованием различных OID.
То есть выпускаем сертификат с OID 1.2.643.3.3.1.1.1.46 и предполагаем, что он будет использован в приложении 1, а сертификат с OID 1.2.643.3.3.1.1.1.47 в приложении 2. Если мы попытаемся сертификаты использовать наоборот, то не проверка ЭЦП, например, не даст положительный результат.
Поправьте меня если я не так что-то сказал.
Всвязи с этим возникло несколько вопросов:
1) Для того чтобы добавить новый OID в ЦС на базе Win server 2003 нужно в реестре HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\OID\EncodingType 0\CryptDllFindOIDInfo добавить нужные нам OID 1.2.643.3.3.1.1.1.46 и 1.2.643.3.3.1.1.1.47. Когда создаешь в реестре эти разделы следующим шагом должен быть создание строкового параметра. В Руководстве по регистрации дополнительных объектных идентификаторов сказано строковому параметру значение Name, присваиваю значение "Использование в ИС".
Далее насколько я понял надо перегрузить сервер и что-то должно уже получится.
Возможно использование дополнительных OID таким способом, как я указал.
2) Как мне в дальнейшем и с помощью чего формировать запрос на сертификат, чтобы запросы содержали данный OID?
3) Есть ли в КриптоПро JCP функционал, который бы заставлял приложение проверять требуемый OID и в случае не соответствия давал отрицательный результат?
Offline rozhkov  
#2 Оставлено : 3 мая 2011 г. 17:46:25(UTC)
rozhkov

Статус: Активный участник

Группы: Участники
Зарегистрирован: 25.01.2011(UTC)
Сообщений: 589
Откуда: Крипто-Про

По поводу приложений - да, именно так и будет.
1) Да, именно так все и происходит как описано в документации.
2) Вы создали новый OID, Вы делаете шаблон и ним, называете его, например, Приложение 1, ставите права на выпуск такого сертификата и все ок.
3) Да, такая возможность имеется, если Вы как разработчик это будете делать, советую Вам обратить внимание на это -> ftp://193.47.154.6/DBO4/...Doc/progguide.html#Param
более подробно при примерам и их реализации Вам смогут ответить наши разработчики.
Offline Aleks305  
#3 Оставлено : 3 мая 2011 г. 20:40:00(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

Мне кажется в Microsoft CA на Win server 2003 нельзя делать шаблоны сертификатов (у нас не стоит Крипто Про УЦ)...или я ошибаюсь?
А если нельзя, как тогда поступать?
Offline rozhkov  
#4 Оставлено : 3 мая 2011 г. 23:26:48(UTC)
rozhkov

Статус: Активный участник

Группы: Участники
Зарегистрирован: 25.01.2011(UTC)
Сообщений: 589
Откуда: Крипто-Про

не смотрел такую возможность, только чутка погуглил :) работать Microsoft CA с шаблонами можно на technet.microsoft.com информация по этому поводу имеется, по поводу того как будет работать оно с добавленными не подскажу, но новые OID он увидит это 100%.
можно еще в этом случае глупо поступить, если у Вас enterprise ca, то в файле, например, который является проверка подлинности клиента добавляете OID'ы нужные и выпускаете сертификаты с нужными OID.
Offline Aleks305  
#5 Оставлено : 4 мая 2011 г. 0:20:50(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

по второму предложению не уловил, что нужно сделать...не могли бы пояснить
Offline rozhkov  
#6 Оставлено : 4 мая 2011 г. 20:09:01(UTC)
rozhkov

Статус: Активный участник

Группы: Участники
Зарегистрирован: 25.01.2011(UTC)
Сообщений: 589
Откуда: Крипто-Про

в папке куда у Вас ссылается IIS есть файлик certrqma.asp
открываете его блокнотом, находите вот такое:
Option ID=locCliAuthCert Selected Value="1.3.6.1.5.5.7.3.2"> Сертификат проверки подлинности клиента
и добавляете следом такое:
Option ID=test Value="1.3.6.1.5.5.7.3.2, 1.3.6.1.5.5.7.3.4"> Сертификат test
только вместо тех oid которые я прописал Вы прописываете свои для приложений "а" и "б".
Offline Aleks305  
#7 Оставлено : 4 мая 2011 г. 20:17:38(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

Сделал следующим образом:
В реестре добавил необходимый oid, как указано в документации на КриптоПро УЦ 1.5. После этого перезапустил УЦ. Можно использовать следующую команду через консоль, приведет к аналогичному результату, только значение NAME не добавится.
certutil -setreg policy\EnableRequestExtensionList +<номер OID>, потом перезапуск УЦ.
После всех этих манипуляций в КриптоАРМ добавил в закладку Сравочники номер OID, который мне был необходим и который я ранее ввел при настройке УЦ. На этапе запроса на сертификат с использованием КриптоАРМ включил данный OID в запрос. Подал в base-64 кодировке запрос в УЦ - результат положительный получил серт с необходимым OID.
Все это конечно хорошо, когда я генерю ключи сам. А если пользователь подает запрос на сертификат сам да и если у него нет КриптоАРМ или чего-то такого сподручного формировать новые OID?
Тут можно обойтись только шаблонами на сертификат, которые я насколько понял можно экспортировать каким-то не очень легким способом из win server 2008(у меня не получилось), доступными на web-морде УЦ.
Второй путь - добавление необходимых расширений в сертификат с использованием команды следующего вида:
certutil -setextension <№ запроса> 1.3.6.1.5.5.7.48.1.5 0 @<имя файла c закодированным значением>
Вот только для меня пока не понятно,как определить это закодированное значение, чтобы получилось нужное мне расширение в сертификате.
Например, когда боролся с расширением "id-pkix-ocsp-nocheck" в сертификате для службы ocsp файл должен был содержать значения 05 50 и тогда все было ок.
Как здесь быть - кто подскажет?


Offline Aleks305  
#8 Оставлено : 4 мая 2011 г. 20:18:57(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

не видел предыдущего сообщения от господина rozhkov - сейчас попробую
Offline Aleks305  
#9 Оставлено : 5 мая 2011 г. 16:25:16(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

попробовал сделать как вы указали, к сожалению почему-то эта страница перестала загружаться...
но получилось по-другому: через web-морду при расширенном запросе сертификата выбрал Другой... и ввел oid необходимый. УЦ отработал нормально, но минусы такого решения: в поле Использование ключа - выбираются стандартные значения, то есть Цифровая подпись, Неотрекаемость, Шифрование ключей, Шифрование данных, на мой взгляд это не очень хорошо, так как часть шифрование не требуется...
2-ой минус это то, что доступ к web-морде у нас только есть внутри организации, иногда приходится при взаимодействии с другими фирмами использовать запросы на сертификат в base-64 кодировке. Насколько я понимаю, добавить необходимое расширение через web-морду нельзя.

Поэтому стал рассматривать путь решения проблемы тем образом, как указал я в прошлом сообщении. Выпустил сертификат с необходимым расширением - посмотрел его ASCII-кодировке c помощью команды certutil -v mycert.cer
Нашел нужное мне поле. И вот тут появился первый вопрос:

Сначала в сертификате, который я просматривал было два назначения в поле Улучшенный ключ
2.5.29.37: Флаги = 0, Длина = 15
Улучшенный ключ
Проверка подлинности клиента (1.3.6.1.5.5.7.3.2)
Доступ к XXXXXXXXXXXXX (1.2.643.555.1.1)

0000 30 13 06 08 2b 06 01 05 05 07 03 02 06 07 2a 85 0...+.........*.
0010 03 84 2b 01 01 ..+..
Отсюда сложно сказать, что соответствует Доступ к XXXXXXXXXXXXX (1.2.643.555.1.1)

Тогда я выпустил сертификат только с расширением Доступ к XXXXXXXXXXXXX (1.2.643.555.1.1)
получилось при просмотре следуюее
2.5.29.37: Флаги = 0, Длина = b
Улучшенный ключ
Доступ к XXXXXXXXXXXXX (1.2.643.555.1.1)

0000 30 09 06 07 2a 85 03 84 2b 01 01 0...*...+..
Проанализировав можно понять, что одинаковые цифры и в том и другом случае 06 07 2a 85 03 84 2b 01 01.
Соответственно в текстовый файл должен занести только их? я правильно рассуждаю?

Далее я сделал запрос на сертификат в base-64 кодировке, не включая в запрос расширение Доступ к XXXXXXXXXXXXX , сохранил в файл. Через web-морду подал запрос в УЦ. Затем выполнил следующую команду
C:\>certutil -setextension 37 1.2.643.555.1.1 0 @oid.txt
0000 06 07 2a 85 03 84 2b 01 01 ..*...+..
CertUtil: -setextension - команда успешно выполнена.
Выпустил сертификат и увидел что данное расширение Доступ к XXXXXXXXXXXXX добавилось не в поле Улучшенный ключ, а отдельным полем с символом некритичного расширения. Когда щелкаешь на этом расширении "Доступ к XXXXXXXXXXXXX" в поле "Поле " показывается значение 06 07 2a 85 03 84 2b 01 01, а в поле Значение ..*...+.. oid 1.2.643.555.1.1 нигде не видно.
Для меня непонятно немного, правильно ли я сделал? Одинаковы ли сертификаты сделанный мною через web-морду при выдаче запроса с необходимым oid, и сертификат с таким расширением, которое я привел чуть выше. К слову сказать пробовал вставлять не только 06 07 2a 85 03 84 2b 01 01, но и 30 13 06 08 2b 06 01 05 05 07 03 02 06 07 2a 85 03 84 2b 01 01, и 03 84 2b 01 01.
Команда во всех случаях выполнялось успешно, только менялось значение в поле "Поле" и "Значение".

и еще один вопрос, смогу ли я с использованием КриптоПро JCP или проверять значение oid, выданного мной сертификата по второму методу (то есть добавление необходимого расширения к запросу на сертификат из файла)? Будет ли отличаться метод проверки от первого случая (когда Доступ к XXXXXXXXXXXXX" находится в поле Улучшенный ключ и виден oid 1.2.643.555.1.1)?

Очень надеюсь на ответы)
Offline Aleks305  
#10 Оставлено : 6 мая 2011 г. 19:40:00(UTC)
Aleks305

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.02.2011(UTC)
Сообщений: 74
Откуда: Санкт-Петербург

никто не может подсказать? или надо адресовать письмо в другую ветку форума?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (2)
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.