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

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline Челпанов А.  
#11 Оставлено : 29 апреля 2011 г. 15:29:11(UTC)
Челпанов А.

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

Группы: Участники
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 390
Мужчина
Откуда: КриптоПро

Поблагодарили: 2 раз в 2 постах
В результате внутренней переписки, которую я приводить здесь не буду, была найдена проблема.
В CSP есть ограничение на размер имени контейнера.
В CSP 2.0 и 3.0 имя ограничено 64 символами.
В CSP 3.6 имя ограничено 128 символами.
При открытии контейнера по FQCN имени оно делится на следующие части
- префикс "\\.\"
- имя считывателя, например "OMNIKEY CardMan 5x21 0"
- разделитель "\"
- имя контейнера, например "7bdc6307-4453-4287-9c32-d9968ef51378"
Обычно размер имени контейнера не превышает 36 символов. Размер имени считывателя для не смарт считывателей, обычно не превышает 22 символов.
Размер приведенного выше имени составляет ровно 64 символа. Поэтому имя считывателя или имя контейнера большего размера приведет к ошибке в CSP 2.0 или 3.0.

Возможные варианты устанения:

1. Не указывать флаг FQCN при выводе окна выбора контейнера
Код:
Gost3410CryptoServiceProvider.SelectContainer(false, false, IntPtr.Zero);

При наличии двух считывателей поиск контейнера в момент его открытия может привести к дополнительному опросу второго считывателя и накрты в нем.
2. Переименовывать имя считывателя смарт карт в реестре (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais\Readers\ИМЯ) на более короткое. При переименовании следует перерегистрировать считыватель в CSP.

Можно так же использовать сочетания этих двух методов, например
Код:
Gost3410CryptoServiceProvider.SelectContainer(true, false, IntPtr.Zero);

если, результирующее имя не превышает 64 символов открывать контейнер по FQCN.
При превышении вырезать имя считывателя (оно не может содержать \\) и открывать по обычному имени (или просить переименовать считыватель).
С уважением, Александр.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.