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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Romani4  
#1 Оставлено : 21 января 2011 г. 1:49:54(UTC)
Romani4

Статус: Участник

Группы: Участники
Зарегистрирован: 17.01.2011(UTC)
Сообщений: 13
Откуда: St. Petersburg

Извините, что развел много тем, просто кажется логичным что для одного значительного вопроса одна тема.
Каким образом можно установить собственные дополнительные OID к сертификату (от 2х и более штук)?
Вот таким способом не заработало: (вылетело с пустой ошибкой)
Код:

OID keyOid = new OID(JCP.GOST_EL_KEY_OID);
OID signOid = new OID("свой oid");
OID digestOid = new OID("1.2.643.2.2.30.1");
OID cryptOid = new OID("свой oid");

AlgIdSpec keyParams = new AlgIdSpec(keyOid, signOid, digestOid, cryptOid);
keyGen.initialize(keyParams);
Offline Iva  
#2 Оставлено : 21 января 2011 г. 16:18:56(UTC)
Iva

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

Группы: Участники
Зарегистрирован: 09.10.2008(UTC)
Сообщений: 181

В JCP нет возможности устанавливать собственные дополнительные OID-ы к сертификату. signOid может определять только параметры ключа, т.е. набор параметров эллиптической кривой. Так не получится.
P.S. одна тема на один вопрос это правильно.
Offline Romani4  
#3 Оставлено : 22 января 2011 г. 23:31:50(UTC)
Romani4

Статус: Участник

Группы: Участники
Зарегистрирован: 17.01.2011(UTC)
Сообщений: 13
Откуда: St. Petersburg

Т.е. нельзя задавать для таких расширений как "extendedKeyUsage" и "keyUsage" свои значения?
Offline Iva  
#4 Оставлено : 24 января 2011 г. 19:18:46(UTC)
Iva

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

Группы: Участники
Зарегистрирован: 09.10.2008(UTC)
Сообщений: 181

Нельзя. Нет такой функциональности.
Offline Aleks305  
#5 Оставлено : 6 мая 2011 г. 13:54:44(UTC)
Aleks305

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

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

а как можно проверить наличие специального oid (введенного в организации)? Интересует реализация, чтобы при проверке ЭЦП файла, если ЭЦП создана с сертификатом без OID (например 1.2.643.555.1.1), то результат был отрицательным. А если с указанным OID, то результат положительным? Возможно?
Offline rozhkov  
#6 Оставлено : 6 мая 2011 г. 14:58:21(UTC)
rozhkov

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

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

в руководстве программиста написано (там есть еще много всего интересного) :
получать идентификатор текущих параметров алгоритма / набора параметров ключа при помощи функции getOID();
получать идентификатор по умолчанию для параметров алгоритма / набора параметров ключа при помощи функции getDefault();
проверять права на изменение идентификатора по умолчанию для параметров алгоритма / набора параметров ключа при помощи функции setDefaultAvailable();
устанавливать идентификатор по умолчанию для параметров алгоритма / набора параметров ключа при помощи функции setDefault(OID def);
получать список допустимых идентификаторов для параметров алгоритма / набора параметров ключа при помощи функции getOIDs();
получать список строковых представлений допустимых идентификаторов для параметров алгоритма / набора параметров ключа при помощи функции getNames();
получать строковое представление одного из допустимых идентификаторов для параметров алгоритма / набора параметров ключа при помощи функции getNamebyOID(OID oid);
получать один из допустимых идентификаторов для параметров алгоритма / набора параметров ключа по его строковому представлению при помощи функции getOIDbyName(String oid).
Offline Iva  
#7 Оставлено : 16 мая 2011 г. 19:34:47(UTC)
Iva

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

Группы: Участники
Зарегистрирован: 09.10.2008(UTC)
Сообщений: 181

Цитата:
а как можно проверить наличие специального oid (введенного в организации)? Интересует реализация, чтобы при проверке ЭЦП файла, если ЭЦП создана с сертификатом без OID (например 1.2.643.555.1.1), то результат был отрицательным. А если с указанным OID, то результат положительным? Возможно?

JCP сам так не может. Вам придется самим доставать сертификат из подписи, раскодировать его и проверять наличие нужного OID-а. Ваш OID это extended key usage?
Offline Aleks305  
#8 Оставлено : 31 мая 2011 г. 18:26:37(UTC)
Aleks305

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

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

Извините, что не ответил сразу ,в отпуске был.
Да планируется, что OID будет именно в eku.
То есть JCP не сможет проверить, наличие в сертификате какой-нить записи вида 1.2.643.... или как-то можно сделать...?

Кстати, может ответите на вопрос, уважаемая IVA по добавлению новых OID, я писал его в другой ветке форума, но так и не получил ответа: Цитирую:

"Выпустил сертификат с необходимым расширением - посмотрел его 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)?

Очень надеюсь на ответы)"

Ссылка на данную ветку форума http://cryptopro.ru/foru....aspx?g=posts&t=3382
Offline Aleks305  
#9 Оставлено : 10 июня 2011 г. 14:06:03(UTC)
Aleks305

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

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

up
Че-то как-то глухо в Крипто Про стало. то ли период отпусков, то ли не знают...
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.