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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline sabretoothedhamster  
#1 Оставлено : 20 августа 2013 г. 19:16:13(UTC)
sabretoothedhamster

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

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

Здравствуйте!

Подскажите, пожалуйста, куда нужно смотреть, чтобы понять почему происходит следующее:

вызов CryptAcquireContextW(&hCryptProv, pCryptKeyProvInfo->pwszContainerName, CP_GR3410_2001_PROV_W, PROV_GOST_2001_DH, CRYPT_SILENT)
возвращает NTE_BAD_KEYSET_PARAM

в то время как CryptAcquireContextW(&hCryptProv, NULL, CP_GR3410_2001_PROV_W, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT)
отрабатывает нормально, возвращая хэндлер криптопрошного криптопровайдера (3.6.7491(5364) KC1 Built: Mar 20 2013 01:47:40, IA32)

а имя контейнера достаётся честным образом (через CertGetCertificateContextProperty/pwszContainerName) из честного криптопрошного сертификата, у которого:

Certificate info:
Signature algorithm: GOST R 34.11/34.10-2001
Public key: GOST R 34.10-2001 (512 Bits)
Extensions:
Key Usage: Digital Signature, Non-repudiation, Key Encipherment, Data Encipherment
Private key:
Usage: encrypt/decrypt session keys (AT_KEYEXCHANGE)
Container name: SCARD\ETOKEN_JAVA_xxxxxxxx\xxxx\xxxx
Provider name: Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider
Provider type: PROV_GOST_2001_DH


P.S. Этот код нормально работает у всех клиентов, кроме одного :(
Offline Русев Андрей  
#2 Оставлено : 21 сентября 2013 г. 0:01:36(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,658

Сказал(а) «Спасибо»: 50 раз
Поблагодарили: 710 раз в 491 постах
Возможно, у этого клиента токен не вставлен в компьютер. Флаг CRYPT_SILENT подавляет окна - поменяйте флаги на 0 - возможно, проблемы нет или вы узнаете её детали.
Официальная техподдержка. Официальная база знаний.
Offline sabretoothedhamster  
#3 Отправлено: : 10 октября 2013 г. 14:21:40(UTC)
sabretoothedhamster

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

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

Абсолютно точно вставлен. Когда нет токена, оно ругается NTE_BAD_KEYSET.

Может это быть связано с наличием на машине гостовских криптопровайдеров/сертификатов не от Крипто-Про? Если да, то есть ли какое-нибудь "наставление", как уберечься от проблем в этом случае?
Offline Андрей Писарев  
#4 Оставлено : 10 октября 2013 г. 14:38:31(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Автор: sabretoothedhamster Перейти к цитате
Абсолютно точно вставлен. Когда нет токена, оно ругается NTE_BAD_KEYSET.

Может это быть связано с наличием на машине гостовских криптопровайдеров/сертификатов не от Крипто-Про? Если да, то есть ли какое-нибудь "наставление", как уберечься от проблем в этом случае?


Уберечься: рекомендация не использовать несколько CSP на 1 РМ.

Пример:
у меня есть в системе сертификаты и контейнеры созданные для использования в ViPNet CSP
поработал, удалил ViPNet CSP... перешел на КриптоПРО CSP.

И при обращении к этим сертификатам->контейнерам для ViPNet CSP:
[2148073497]: Набор ключей не определен
Anxious
Техническую поддержку оказываем тут
Наша база знаний
Offline sabretoothedhamster  
#5 Оставлено : 12 ноября 2013 г. 18:05:49(UTC)
sabretoothedhamster

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

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

Автор: Андрей * Перейти к цитате

Уберечься: рекомендация не использовать несколько CSP на 1 РМ.


К сожалению, не всегда этот совет можно дать заказчику (да и не всегда он может ему следовать по объективным причинам). Хотелось бы рекомендаций программного характера, которые можно реализовать в коде. Ветка-то про встраивание...


Автор: Андрей * Перейти к цитате

у меня есть в системе сертификаты и контейнеры созданные для использования в ViPNet CSP
поработал, удалил ViPNet CSP... перешел на КриптоПРО CSP.

И при обращении к этим сертификатам->контейнерам для ViPNet CSP:
[2148073497]: Набор ключей не определен
Anxious


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