Поделиться через


Функция SslImportKey

Функция SslImportKey импортирует ключ в поставщик протокола SSL .

Синтаксис

SECURITY_STATUS WINAPI SslImportKey(
  _In_  NCRYPT_PROV_HANDLE hSslProvider,
  _Out_ NCRYPT_KEY_HANDLE  *phKey,
  _In_  LPCWSTR            pszBlobType,
  _In_  PBYTE              pbKeyBlob,
  _In_  DWORD              cbKeyBlob,
  _In_  DWORD              dwFlags
);

Параметры

hSslProvider [in]

Дескриптор экземпляра поставщика протокола SSL.

phKey [out]

Указатель на дескриптор криптографического ключа для получения импортированного ключа.

pszBlobType [in]

Строка Юникода, завершающаяся нулевым значением, которая содержит идентификатор, указывающий тип большого двоичного объекта , содержащегося в буфере pbInput . Это может быть одно из следующих значений.

Значение Значение
BCRYPT_DH_PUBLIC_BLOB
Экспорт открытого ключа Diffie-Hellman. Буфер pbOutput получает BCRYPT_DH_KEY_BLOB структуру, за которой сразу же следуют данные ключа.
BCRYPT_ECCPUBLIC_BLOB
Экспорт открытого ключашифрования на эллиптических кривых (ECC). Буфер pbOutput получает BCRYPT_ECCKEY_BLOB структуру, за которой сразу же следуют данные ключа.
BCRYPT_OPAQUE_KEY_BLOB
Экспорт симметричного ключа в формате, который относится к одному поставщику служб шифрования (CSP). Непрозрачные BLOB-объекты не могут быть переданы и должны быть импортированы с помощью того же CSP, который создал большой двоичный объект.
BCRYPT_RSAPUBLIC_BLOB
Экспорт открытого ключа RSA . Буфер pbOutput получает BCRYPT_RSAKEY_BLOB структуру, за которой сразу же следуют данные ключа.

pbKeyBlob [in]

Указатель на буфер, содержащий большой двоичный объект ключа.

cbKeyBlob [in]

Размер буфера pbKeyBlob в байтах.

dwFlags [in]

Этот параметр зарезервирован для использования в будущем.

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

Если функция завершается успешно, она возвращает ноль.

Если функция завершается сбоем, она возвращает ненулевое значение ошибки.

Возможные коды возврата включают, помимо прочего, следующие.

Возвращаемый код/значение Описание
NTE_NO_MEMORY
0x8009000EL
Недостаточно памяти для выделения необходимых буферов.
NTE_INVALID_HANDLE
0x80090026L
Недопустимый дескриптор hSslProvider .
NTE_INVALID_PARAMETER
0x80090027L
Параметр phKey имеет значение NULL.

Комментарии

Функцию SslImportKey можно использовать для импорта ключей сеанса в рамках процесса передачи сеансовых ключей из одного процесса в другой.

Требования

Требование Значение
Минимальная версия клиента
Windows Vista [только классические приложения]
Минимальная версия сервера
Windows Server 2008 [только классические приложения]
Заголовок
Sslprovider.h
DLL
Ncrypt.dll