logo Обзор КриптоПро NGate для защищённого доступа к корпоративным ресурсам
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Azial  
#1 Оставлено : 21 августа 2019 г. 14:07:07(UTC)
Azial

Статус: Новичок

Группы: Участники
Зарегистрирован: 20.08.2019(UTC)
Сообщений: 9

Сказал(а) «Спасибо»: 1 раз
Пытаюсь реализовать пример из SDK,сертификат ГОСТ Р 34.11-2012/34.10-2012 256 бит , установлен в реестр, и затем через КриптоПро CSP, фреймворк 4.6.1 , выдает ошибку "Набор ключей не существует",
REGISTRY\\74217ff0-6a31-44f5-9a08-66d5d779bfec передаю как имя контейнера скопировав строку из Крипто Про CSP
Код:

				public static Gost3410_2012_512CryptoServiceProvider GetSertifikate(string ContainerName)
				{
						CspParameters cp = new CspParameters(80, null, ContainerName);
						cp.Flags = CspProviderFlags.UseExistingKey | CspProviderFlags.UseMachineKeyStore;
						cp.ProviderName = "Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider";
						Gost3410_2012_512CryptoServiceProvider gost =
								new Gost3410_2012_512CryptoServiceProvider(cp);
						return gost;
				}

Offline Azial  
#2 Оставлено : 21 августа 2019 г. 14:48:16(UTC)
Azial

Статус: Новичок

Группы: Участники
Зарегистрирован: 20.08.2019(UTC)
Сообщений: 9

Сказал(а) «Спасибо»: 1 раз
Gost3410_2012_256CryptoServiceProvider пробовал.
Offline two_oceans  
#3 Оставлено : 22 августа 2019 г. 0:11:44(UTC)
two_oceans

Статус: Эксперт

Группы: Участники
Зарегистрирован: 05.03.2015(UTC)
Сообщений: 602
Российская Федерация
Откуда: Иркутская область

Сказал(а) «Спасибо»: 33 раз
Поблагодарили: 130 раз в 125 постах
Предполагаю, проблема в том, что используете UseMachineKeyStore, а контейнер в реестре пользователя или сертификат в хранилище пользователя (соответственно их скорее всего нет в хранилище компьютера). Попробуйте без флага UseMachineKeyStore (если не служба) или скопировать контейнер на флешку (на флешке контейнер виден как от пользователя так и от компьютера) и переустановить сертификат в хранилище компьютера. Также попробуйте указать имя без "REGISTRY\\", по дружественному имени контейнера. Точно имена можно узнать протестировав контейнер в панели управления КриптоПро CSP, скорее всего в Вашем случае 74217ff0-6a31-44f5-9a08-66d5d779bfec будет дружественным именем контейнера.

Обратите внимание для Gost3410_2012_256CryptoServiceProvider тип 80 и имя похоже на правильное, а вот для Gost3410_2012_512CryptoServiceProvider тип будет 81 и имя другое.
thanks 1 пользователь поблагодарил two_oceans за этот пост.
Azial оставлено 22.08.2019(UTC)
Offline Azial  
#4 Оставлено : 22 августа 2019 г. 8:07:04(UTC)
Azial

Статус: Новичок

Группы: Участники
Зарегистрирован: 20.08.2019(UTC)
Сообщений: 9

Сказал(а) «Спасибо»: 1 раз
Gost3410_2012_256CryptoServiceProvider поставил и флаг сменил 1 на UseExistingKey, Спасибо
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.