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

Уведомление

Icon
Error

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

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

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

Требуется добавить в запрос extension Private Key Usage Period(2.5.29.16).

Делаю следующим образом:

Код:
CX509Extension KeyUsagePeriodExtension = new CX509ExtensionClass();
CObjectId KeyUsagePeriod = new CObjectIdClass();
KeyUsagePeriod.InitializeFromName(CERTENROLL_OBJECTID.XCN_OID_PRIVATEKEY_USAGE_PERIOD);
KeyUsagePeriodExtension.Initialize(KeyUsagePeriod, EncodingType.XCN_CRYPT_STRING_BASE64, "" );
req.X509Extensions.Add((CX509Extension)KeyUsagePeriodExtension);


Необходимо ли в 4й строке KeyUsagePeriodExtension.Initialize(KeyUsagePeriod, EncodingType.XCN_CRYPT_STRING_BASE64, "" ) последним параметром указывать что-то? Или достаточно того что прописано в настройках УЦ?

Если ничего не записывать то в запросе будет
Код:
2.5.29.16: Флаги = 0, Длина = 0
Период использования закрытого ключа
EMPTY


Верно ли это?

В MSDN примеры только на С++ с заполнением структуры CERT_PRIVATE_KEY_VALIDITY. Хочу сделать тоже самое на C# не прибегая к P/Invoke.

Отредактировано пользователем 12 января 2011 г. 12:49:14(UTC)  | Причина: Не указана

Offline Kirill Sobolev  
#2 Оставлено : 11 января 2011 г. 19:09:48(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Цитата:
Необходимо ли в 4й строке KeyUsagePeriodExtension.Initialize(KeyUsagePeriod, EncodingType.XCN_CRYPT_STRING_BASE64, "" ) последним параметром указывать что-то? Или достаточно того что прописано в настройках УЦ?

Зависит от того, что Вы хотите увидеть в запросе. Настройки УЦ в работе Вашего примера не участвуют.
Цитата:
Верно ли это?

Зависит от поведения ЦС, обнаружившего в запросе расширение с таким содержанием.
Техническую поддержку оказываем тут
Наша база знаний
Offline Kenshin  
#3 Оставлено : 11 января 2011 г. 19:22:54(UTC)
Kenshin

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

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

Kirill Sobolev написал:
Зависит от поведения ЦС, обнаружившего в запросе расширение с таким содержанием.


Кирилл, у меня стандартно установленный КриптоПро УЦ. Как определить его "поведение", не проводя экспериментов?
Стоит задача добавить в сертификат расширение 2.5.29.16. Срок действия закрытого ключа для большинства сертификатов должен будет совпадать со сроком действия самого сертификата - один год.
Offline okolobaxa  
#4 Оставлено : 12 января 2011 г. 15:21:26(UTC)
okolobaxa

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

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

Нашел нить решения:

Записывать туда надо закодированную в Base64 DER-последовательность.

ASN.1 синтаксис этого экстеншена
Код:
PrivateKeyUsagePeriod	::=	SEQUENCE {
notBefore	 [0] GeneralizedTime OPTIONAL,
notAfter	 [1] GeneralizedTime OPTIONAL 
}


Получаем что-то типо
Код:
SEQUENCE {
    GeneralizedTime '20001231205959.999Z' 
    GeneralizedTime '20001231205959.999Z'
}


Теперь нужно закодировать эту последовательность в DER.

Есть ли какой либо инструмент, желательно бесплатный, который позволит преобразовать ASN.1 нотацию в DER?
Offline Kirill Sobolev  
#5 Оставлено : 12 января 2011 г. 15:24:08(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
1) Хороший вариант - настроить модуль политики ЦС на автоматическое добавление этого расширения в сертификат в зависимости от расширения "Улучшенный ключ".
2) Плохой вариант - добавлять расширение на клиенте каким-то образом, на ЦС настроить его перекладывание из запроса на сертификат. В этом случае клиенты могут класть туда всякую чушь, потому что это расширение на ЦС никак не анализируется.

Еще момент - если срок действия закрытого ключа больше или равен сроку действия сертификата, то расширение на ЦС при использовании первого варианта добавлено не будет.
Техническую поддержку оказываем тут
Наша база знаний
Offline Kenshin  
#6 Оставлено : 12 января 2011 г. 16:00:42(UTC)
Kenshin

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

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

Kirill Sobolev написал:
Еще момент - если срок действия закрытого ключа больше или равен сроку действия сертификата, то расширение на ЦС при использовании первого варианта добавлено не будет.


За это предложение - отдельное спасибо, Кирилл! Всю голову сломал, почему оно не добавляется.
Offline Kirill Sobolev  
#7 Оставлено : 12 января 2011 г. 16:22:25(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Цитата:
почему оно не добавляется

Потому что в этом нет смысла. Получается открытый ключ в сертификате истек, а закрытый продолжает действовать! Парадокс - в один и тот же момент времени подпись и действительна, потому что сделана на действующем ключе, и недействительна - потому что проверяется истекшим сертификатом.
Техническую поддержку оказываем тут
Наша база знаний
Offline NORD  
#8 Оставлено : 17 февраля 2011 г. 16:33:47(UTC)
NORD

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

Группы: Участники
Зарегистрирован: 22.09.2008(UTC)
Сообщений: 13
Мужчина
Откуда: СПб, ООО "ИТСК"

вопрос:

если сертификат действителен
с 08.02.2011 10:42:46 по 08.02.2012 10:42:46
а закрытый ключ его действителен
с 08.02.2011 07:51:06 по 08.02.2012 07:51:06

будет ли данный сертификат правильным?
и пройдет ли он корректно проверку утилитами cryptcp и csptestf
Offline Kirill Sobolev  
#9 Оставлено : 17 февраля 2011 г. 21:11:26(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Цитата:
будет ли данный сертификат правильным?

правильным для чего?
Цитата:
и пройдет ли он корректно проверку утилитами cryptcp и csptestf

проверку на что? ни одна из этих утилит сама не проверяет срок действия закрытого ключа.
Техническую поддержку оказываем тут
Наша база знаний
Offline NORD  
#10 Оставлено : 18 февраля 2011 г. 12:28:41(UTC)
NORD

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

Группы: Участники
Зарегистрирован: 22.09.2008(UTC)
Сообщений: 13
Мужчина
Откуда: СПб, ООО "ИТСК"

Правильным с точки зрения использования для подписи и шифрования.
могут ли не совпадать интервалы (время начала и окончания) действия самого СКП и ЗК, причем периоды у них одинаковые=1год?

Господа из Росэлторга утверждают, что наш сертификат не проходит проверку именно вашими утилитами.
в то время, как дамп ASN.1 проходит абсолютно нормально.
Прошу ознакомится:
http://t.roseltorg.ru/cp...p;mid=HZJUJ&act=read

При этом читал ваш форум и наткнулся на вот какую тему:
http://www.cryptopro.ru/....aspx?g=posts&t=1532

делаю выводы на основании прочитанного:
срок действия закр.ключа =< срок действия СКП, а вот про интервалы ничего не сказано...

нашел только следующее:
"...Как правило, срок действия закрытого ключа и срок действия СКП делают равным при их применении в целях шифрования и/или аутентификации и/или ЭЦП с условим использования механизма создания доказательства момента подписи (например, штампы времени)..."

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