Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 4.0
»
Многократный ввод правильного пароля контейнера для подписи одного документа
Статус: Новичок
Группы: Участники
Зарегистрирован: 17.08.2021(UTC) Сообщений: 5 
|
Автор: Андрей *  в логе подключение и отключение было: CPCReleaseContext второе подключение (в котором был вызов CryptSignHash) было уже с другим указателем (hProv) Между первой парой вызовов CPCAcquireContext и CPCReleaseContext не было других операций. Что могло в таком случае кроме CryptSignHash вызвать модальное окно запроса пароля?
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602  Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 396 раз в 366 постах
|
Автор: Konstantin Agile  Какой вызов в логе КриптоПРО CSP соответствует запросу наличия ЗК?
Между первой парой вызовов CPCAcquireContext и CPCReleaseContext не было других операций. Что могло в таком случае кроме CryptSignHash вызвать модальное окно запроса пароля? Насчет того, какой вызов соответствует запросу пароля тут давненько идут баталии, полной правды пока не видел. В теории можно вызвать CryptAcquireContext (создать hProv), потом установить для hProv параметр с пин-кодом и запроса не будет при всех операциях с этим hProv (а то и с этим контейнером - если закэшируется пароль в хранилище). Из этого как бы следует, что CryptAcquireContext не запрашивает пароль. В теории. Также очевидно что если к моменту вызова CryptSignHash пин-код не сохранен средствами криптопровайдера, не закэширован в хранилище (за это отвечает Microsoft CryptoApi) и не установлен для конкретного hProv, то CryptSignHash вызовет обращение к закрытому ключу и запрос пин-кода точно будет. Про то, что в промежутке между CryptAcquireContext и CryptSignHash - не ясно, в теории тоже не должно спрашивать. Например, при подписи xml хэш считается минимум 2 раза, подписывается только последний. Иногда для первого вычисления хэша также вызывают контекст с контейнером вместо VERIFY_CONTEXT. Кроме того, мне вспоминается поведение КриптоПро CSP когда у меня запрашивались пин-коды от трех "первых попавшихся" контейнеров и если в них не находилось нужного, выдавалась ошибка. Не очень хорошо помню при какой ситуации это было. При "автоопределении" контейнера, соответствующего сертификату или при вызове CryptAcquireCertificatePrivateKey. Автор: Konstantin Agile  Наличие ЗК можно проверить по сертификату для этого ввод пароля ведь не требуется. Сертификат это сертификат, в нем не хранится ссылка на контейнер ЗК. В хранилище ссылка хранится, но некоторым плагинам этого мало и они перечисляют сами контейнеры, а вдруг токен не вставлен. Контуровская диагностика активно продвигает драйверы рутокена, что на самом деле контейнер не на токене - алгоритм не волнует. Так что и плагин может быть написан с упором на токены. Более того, диагностика еще и выдает рекомендацию использовать КС1 вместо КС2. Автор: Konstantin Agile  Что могло в таком случае кроме CryptSignHash вызвать модальное окно запроса пароля? Модальное окно запроса пароля? Серьезно? Модальное - это когда не дает переключиться на какое-то другое (родительское) окно, на версии 4 мне такое не встречалось - для этого надо специально передавать hwnd родительского окна.
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 4.0
»
Многократный ввод правильного пароля контейнера для подписи одного документа
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close