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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Jin  
#1 Оставлено : 7 мая 2010 г. 15:52:09(UTC)
Jin

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

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

Возник вопрос.
Подскажите как можно создать запрос на сертификат и отправить его ЦС, получить ответ и распарсить этот подписанный сертификат.

Как сформировать ключи, установить сертификат в хранилище я знаю, как сделать остальные операции нет.

Кто знает подскажите или хотябы скажите какие библиотеки использовать...
Offline Kirill Sobolev  
#2 Оставлено : 7 мая 2010 г. 16:17:01(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
Само создание запроса с помощью CryptoAPI - заполнение структуры CERT_REQUEST_INFO и подпись CryptSignAndEncodeCertificate.
Если нужно использовать скрипты - то библиотека XEnroll.
Отправка на ЦС - зависит от ЦС, если это служба MS то отправить запрос можно с помощью интерфейса ICertRequest, если КриптоПро УЦ - то с помощью интерфейса внешних приложений.

Отредактировано пользователем 7 мая 2010 г. 16:17:48(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Jin  
#3 Оставлено : 7 мая 2010 г. 16:57:40(UTC)
Jin

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

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

CryptSignAndEncodeCertificate - ещё и подписывает, только зачем?
Ведь подписывать должен сервер, а не клиент.

Ну пускай ещё и подписывать надо, только каким сертификатом, каким ключём?
Offline Kirill Sobolev  
#4 Оставлено : 7 мая 2010 г. 17:23:10(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
Сервер подписывает сертификат, клиент подписывает запрос, своим ключем.
Техническую поддержку оказываем тут
Наша база знаний
Offline Jin  
#5 Оставлено : 7 мая 2010 г. 18:50:34(UTC)
Jin

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

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

У вас нету примера использования этой функции, т.к. не понятно какой HCRYPTPROV контекст туда её передавать, как он должен быть создан.
Лично мне кажется что функцию CryptAcquireContext вызывать надо так

CryptAcquireContext(&Prov,L"MYNAMEKEYCONTAINER1",L"Microsoft Base Cryptographic Provider v1.0",ProvType,CRYPT_NEWKEYSET)

но почему то после такого вызова. функция

CryptGenKey(Prov,CALG_SHA1|CRYPT_EXPORTABLE|AT_KEYEXCHANGE,512,&key)

ругается и выдаёт ошибку что неправильно указанны флаги , хотя вроде всё правильно

Offline Jin  
#6 Оставлено : 7 мая 2010 г. 18:56:20(UTC)
Jin

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

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

Стоп, вопрос по поводу CryptGenKey и генерации ключа в контейнере, снят )
Offline Jin  
#7 Оставлено : 7 мая 2010 г. 19:35:16(UTC)
Jin

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

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

как считаете на C# + Sharpei легче программировать чем на C++? и какомы возможности .NET криптографических классов? Всё можно релизовать в плане криптографии?
Offline Kirill Sobolev  
#8 Оставлено : 7 мая 2010 г. 20:50:47(UTC)
Кирилл Соболев

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

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

Поблагодарили: 177 раз в 168 постах
На .Net можно, конечно, все реализовать, но в зависимости от платформы придется пользоваться либо Xenroll (2000, 2003), либо Certenroll (vista, 2008 и выше). В самом .Net Framework средств для создания запросов нет.
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.