Крипто-Про CSP

CPGetUserKey

Функция CPGetUserKey() возвращает дескриптор одной из долговременных ключевых пар в ключевом контейнере.

установленного в реестре флага равно *

BOOL WINAPI CPGetUserKey(
  HCRYPTPROV hProv,
  DWORD dwKeySpec,
  HCRYPTKEY * phUserKey
);

Аргументы

hProv
[in] Дескриптор криптопровайдера.
Получается при помощи функции CPAcquireContext().
dwKeySpec
[in] Спецификация возвращаемого ключа. Следующие типы ключевых пар и ключей определены в настоящее время:
Значение Описание
AT_KEYEXCHANGE Ключевая пара обмена
AT_SIGNATURE Ключевая пара цифровой подписи
phUserKey
[out] Адрес, по которому функция копирует дескриптор ключа.

Возвращаемые значения:

При успешном завершении функция возвращает TRUE, в противном случае возвращается FALSE. Если возвращается FALSE, соответствующий код ошибки (см. таблицу) может быть получен через функцию GetLastError().
Коды возврата Описание
NTE_NO_KEY Ключ, указанный dwKeySpec параметром, не существует.
NTE_BAD_TYPE Значение параметра dwKeySpec неизвестно.
SCARD_W_CANCELLED_BY_USER Пользователь прервал операцию нажатием клавиши Cancel
SCARD_W_WRONG_CHV Пользователь ввел неправильный пароль или пароль, установленный функцией SetProvParam(), неправильный
SCARD_E_INVALID_CHV Пользователь ввел пароль с нарушением формата или пароль, установленный функцией SetProvParam(), имеет неправильный формат. Например, пароль имеет недопустимую длину или содержит недопустимые символы.
SCARD_W_CHV_BLOCKED Ввод Pin-кода был заблокирован смарт-картой, т.к. исчерпалось количество попыток разрешенное картой для ввода.
NTE_SILENT_CONTEXT Операция не может быть выполнена без пользовательского интерфейса.
SCARD_W_REMOVED_CARD Носитель контейнера был удален из считывателя

Требования:

Windows 2000/XP/2003: Необходимо Windows 2000 SP4 или старше с Internet Explorer 6.0 или старше.
Windows NT/95/98/ME: CSP 3.0 не поддерживает (см. КриптоПро CSP 2.0 World Wide Web link ).
Solaris: 9 Update 4 или выше.
FreeBSD: FreeBSD 5.2 или выше
Linux: RedHat 7.3, RedHad 9.0.
Файл описания: Прототип описан в файле wincsp.h.
Ядро Windows NT: IRQL < DISPATCH_LEVEL

См. также:

CPExportKey() ,CPGenKey() ,CPGetUserKey в MS CSP World Wide Web link ,CryptGetUserKey в MS CryptoAPI 2.0 World Wide Web link

Крипто-Про CSP Версия: 3.0 Сборка 3293
Что Вы думаете по поводу данной статьи?
Закажите CD c Крипто-Про CSP