КриптоПро CSP  

CPCCreateProvider

Функция CPCCreateProvider() используется для инициализации и настройки криптопровайдера, и для получения таблицы остальных его функций.

DWORD CPCAPI CPCCreateProvider(
  HCRYPTMODULE * phCSP,
  LPCPC_CONFIG pConfig
);

Аргументы

phCSP
[out] Адрес, по которому функция копирует указатель на таблицу функций криптопровайдера (CPC_FUNCTION_TABLE_ ).
pConfig
[in] Указатель на структуру CPC_CONFIG_ , содержащую настройки криптопровайдера.

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

При успешном завершении функция возвращает 0 (S_OK), в противном случае возвращается соответствующий код ошибки (см. таблицу).
Коды возвратаОписание
ERROR_INVALID_PARAMETERОдин из параметров содержит некорректное значение. Чаще всего это некорректный указатель.
NTE_FAILОбщая ошибка инициализации.
NTE_NO_MEMORYКриптопровайдер во время операции исчерпал память.
NTE_PROVIDER_DLL_FAILКриптопровайдер неправильно установлен или переданная лицензия неверна.

Требования:

Ядро AIX: 6/7.
Ядро FreeBSD: 11/12.
Ядро Linux: 2.6.x и выше.
Ядро Solaris: 10/11.
Ядро Windows: 7/8/8.1/10, Server 2008/2008R2/2012/2012R2/2016/2019.
Ядро ОС: При использовании в ядре ОС CPCAcquireContext допустимо вызывать только с флагами CRYPT_VERIFYCONTEXT|CRYPT_SILENT.

См. также

CPCDestroyProvider, CPCGetDefaultConfig