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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline dot9889  
#1 Оставлено : 1 июля 2015 г. 5:44:21(UTC)
dot9889

Статус: Участник

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

Сказал(а) «Спасибо»: 4 раз
Здравствуйте, скажите где здесь ошибка?
Цитата:
[DllImport("advapi32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool CryptGetKeyParam(
IntPtr hProv,
uint dwParam,
[Out] byte[] pbData,
[In, Out] ref uint pdwDataLen,
uint dwFlags);


Цитата:
public static void GetCertFromContainer()
{
uint BUFFSIZE = 512;
ArrayList containernames = new ArrayList();
byte[] pcbData= { };
//String provider = null; //can use null, for default provider
String provider = "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider";
String container = null; //required for crypt_verifycontext
uint type = PROV_RSA_FULL;
uint cspflags = CRYPT_VERIFYCONTEXT | CSPKEYTYPE; //no private key access required.
IntPtr hProv = IntPtr.Zero;

bool gotcsp = Win32.CryptAcquireContext(ref hProv, container, provider, type, cspflags);
Win32.CryptGetKeyParam( hProv, KP_CERTIFICATE, pcbData,ref BUFFSIZE, 0);


}

CryptGetKeyParam возвращает false. Я пытаюсь разобраться как мне получить сертификат открытого ключа, но я не понимаю чем вообще инициализировать [In, Out] byte[] pbData- я так понимаю что я неправильно делаю. И до меня если честно не доходит пройтись по списку контейнеров отображаемых в КриптоПро?
Offline Максим Коллегин  
#2 Оставлено : 1 июля 2015 г. 7:56:52(UTC)
Максим Коллегин

Статус: Сотрудник

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,390
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 714 раз в 619 постах
Все Ваши темы не имеют отношения к КриптоПро .NET - создавайте в других разделах.
Последовательность вызовов:
AcquireContext
GetUserKey
GetKeyParam
Посмотрите примеры в SDK.
Знания в базе знаний, поддержка в техподдержке
thanks 1 пользователь поблагодарил Максим Коллегин за этот пост.
dot9889 оставлено 01.07.2015(UTC)
Offline dot9889  
#3 Оставлено : 1 июля 2015 г. 8:04:25(UTC)
dot9889

Статус: Участник

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

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