Перейти к контенту

Рекомендуемые сообщения

Доброго времени суток всем!

Есть проблема.

Установлен ViPNet Client 3.1(2.6263) и eToken PKI Client 5.1 SP1(5.1.66.0). Задача заключается в том, чтобы пин-код на токен можно было задать только один раз, либо при входе в приложение (которое использует ЭЦП), либо где-нибудь ещё. Приложение собственной разработки, с ним работают люди, которые каждые 5 или 10 минут должны подписывать с помощью ЭЦП электронные документы. Ввод пин-кода каждый раз категорически исключается, иначе вся работа только и будет заключаться во вводе пин-кода.

Приложение пытается открыть контекст криптопровайдера на сертификате, в CryptAcquireContext передаются имя контейнера, имя провайдера и флаг CRYPT_SILENT. В такой конфигурации пароль через CryptSetProvParam (флаг PP_KEYEXCHANGE_PIN) задать можно и он работает (документы корректно подписываются), но при освобождении контекста криптопровайдера в CryptReleaseContext приложение намертво повисает.

Можно ли программно решить проблему корректного задания пин-кода? Или проще посоветовать переписать ключи на токены с пустым пин-кодом? (во втором случае придётся снова ездить по всей области :( ).

Ссылка на комментарий
Поделиться на других сайтах

Доброго времени суток всем!

Есть проблема.

Установлен ViPNet Client 3.1(2.6263) и eToken PKI Client 5.1 SP1(5.1.66.0). Задача заключается в том, чтобы пин-код на токен можно было задать только один раз, либо при входе в приложение (которое использует ЭЦП), либо где-нибудь ещё. Приложение собственной разработки, с ним работают люди, которые каждые 5 или 10 минут должны подписывать с помощью ЭЦП электронные документы. Ввод пин-кода каждый раз категорически исключается, иначе вся работа только и будет заключаться во вводе пин-кода.

Приложение пытается открыть контекст криптопровайдера на сертификате, в CryptAcquireContext передаются имя контейнера, имя провайдера и флаг CRYPT_SILENT. В такой конфигурации пароль через CryptSetProvParam (флаг PP_KEYEXCHANGE_PIN) задать можно и он работает (документы корректно подписываются), но при освобождении контекста криптопровайдера в CryptReleaseContext приложение намертво повисает.

Можно ли программно решить проблему корректного задания пин-кода? Или проще посоветовать переписать ключи на токены с пустым пин-кодом? (во втором случае придётся снова ездить по всей области :( ).

Насколько я знаю, при использовании еТокена в ViPNet Клиенте, его pin-код молжно сохранить, есть соответствующий чекбокс в окне запроса pin-кода. Возможно, для ее активации Вам нужен пароль Администратора сетевого узла, с которым она будет доступна.

Рекомендую, если Вы используете библиотеки для встраивания в прикладное ПО, которые устанавливаете из ViPNet Клиента, напишите подробнее о проблеме и постановке задачи на hotline@infotecs.ru, возможно, потребуется взаимодействие с разработчиками ПО ViPNet

Ссылка на комментарий
Поделиться на других сайтах

Насколько я знаю, при использовании еТокена в ViPNet Клиенте, его pin-код молжно сохранить, есть соответствующий чекбокс в окне запроса pin-кода. Возможно, для ее активации Вам нужен пароль Администратора сетевого узла, с которым она будет доступна.

Рекомендую, если Вы используете библиотеки для встраивания в прикладное ПО, которые устанавливаете из ViPNet Клиента, напишите подробнее о проблеме и постановке задачи на hotline@infotecs.ru, возможно, потребуется взаимодействие с разработчиками ПО ViPNet

Спасибо! Чекбокс попробуем вывести. Насчёт встраивания: я использую только функции Windows CryptoAPI, библиотеки ViPNet не подключаю.

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

С проблемой разобрались. Мы используем DLL для функций подписания. Выяснилось, что нельзя вызывать функцию CryptReleaseContext во время выгрузки библиотеки (DllEntryPoint с параметром reason = DLL_PROCESS_DETACH). Как только разделили вызов CryptReleaseContext с выгрузкой динамической библиотеки, приложение перестало зависать в процессах и завершается корректно.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...

Важная информация

Продолжая пользоваться сайтом вы принимаете Условия использования.