soy-demetrio Опубликовано 10 Апреля 2015 Жалоба Поделиться Опубликовано 10 Апреля 2015 Коллеги, доброго дня.Имеется следующая конфигурация:1. RuToken, на нём - ключ Vipnet.2. Vipnet CSP. В его GUI виден RuToken, и виден на нём ключевой контейнер.3. Приложение: использует Vipnet CSP через MS crypto API, хочет подписать ключевой парой, находящейся на токене.Проблема:Чтобы в MS crypto API создать контекст криптопровайдера, нужно передать полный путь к ключевому контейнеру.Вопрос:Как, имея данные ключевого контейнера из UI Vipnet CSP, скомпоновать путь, по которому контейнер будет найден випнетом, обёрнутым в MS crypto API?Дополнительные данные:Випнет показывает "путь": Rutoken/Rutoken S(2ee8742b ), "имя контейнера": eds_for_vipnetcsp, но попытки из этого что-то скомпоновать пока к успеху не привели. Например,Rutoken/Rutoken S(2ee8742b )/eds_for_vipnetcsp не работает. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Echo Опубликовано 10 Апреля 2015 Жалоба Поделиться Опубликовано 10 Апреля 2015 Коллеги подсказывают:\\!\Rutoken/Rutoken S\\<имя контейнера>Напишите, пожалуйста, как сработает Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
soy-demetrio Опубликовано 10 Апреля 2015 Автор Жалоба Поделиться Опубликовано 10 Апреля 2015 Спасибо, контейнер нашёлся! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Гость cjsbox Опубликовано 23 Сентября 2015 Жалоба Поделиться Опубликовано 23 Сентября 2015 Здравствуйте! У нас точно такая же задача. Можете ли скинуть пример обращения к контейнеру(VipNet) на РуТокене для подписания и проверки сообщения с помощью MS crypto API? Или ссылку где про это можно почитать.Заранее большое спасибо. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Гость GoshaSH Опубликовано 25 Сентября 2015 Жалоба Поделиться Опубликовано 25 Сентября 2015 Тогда следующий вопрос. Ситуация подобная, но используется одновременно несколько Рутокенов. Как программно определить полный путь до контейнера в удобоваримом представлении (что-то типа \\!\Rutoken/Rutoken S\\<имя контейнера>)? Для этих целей в крипто про есть ключ CRYPT_FQCN. Есть ли что нить подобное в ВипНет? SDK замусолил до дыр. Там ничего нет. Но апплет ВипНет это делать умеет. Как?P.S. Win XP SP3 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Гость GoshaSH Опубликовано 25 Сентября 2015 Жалоба Поделиться Опубликовано 25 Сентября 2015 Здравствуйте!У нас точно такая же задача. Можете ли скинуть пример обращения к контейнеру(VipNet) на РуТокене для подписания и проверки сообщения с помощью MS crypto API? Или ссылку где про это можно почитать.Заранее большое спасибо.Если делать это, как написано MSDN, т.е.CryptAcquireContext(,CRYPT_VERIFYCONTEXT)CryptGetProvParam(,PP_ENUMCONTAINERS,,CRYPT_FIRST)...CryptGetProvParam(,PP_ENUMCONTAINERS,,,CRYPT_NEXT)то получишь список всех контейнеров. Где они находятся неизвестно. При попытке обращения к любому найденному, кроме тех которые находятся на HDD, вылезает противное окошко с предложением самостоятельно выбрать токен где находится контейнер. Т.е. ВипНет выдавая список доступных контейнеров, сам потом не может их найти ))). Частично можно упростить задачу используя недокуменнтированный ключ CRYPT_UNIQUE (наткнулся случайно).Т.е.CryptAcquireContext(,CRYPT_VERIFYCONTEXT)CryptGetProvParam(,PP_ENUMCONTAINERS,,CRYPT_FIRST or CRYPT_UNIQUE)...CryptGetProvParam(,PP_ENUMCONTAINERS,,,CRYPT_NEXT or CRYPT_UNIQUE)Тогда выдаст список уникальных путей до контейнера, что то в виде 1|2\5|300\17|00a2d83e \8|sgn-4e20-6af0-95af-5fdb.С этим еще можно хоть как то работать. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.