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


Функция SslSignHash

Функция SslSignHash подписывает хэш с помощью указанного закрытого ключа. Процесс подписывания выполняется на сервере.

Синтаксис

SECURITY_STATUS WINAPI SslSignHash(
  _In_  NCRYPT_PROV_HANDLE hSslProvider,
  _In_  NCRYPT_KEY_HANDLE  hPrivateKey,
  _In_  PBYTE              pbHashValue,
  _In_  DWORD              cbHashValue,
  _Out_ PBYTE              pbSignature,
  _In_  DWORD              cbSignature,
  _Out_ DWORD              *pcbResult,
  _In_  DWORD              dwFlags
);

Параметры

hSslProvider [in]

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

hPrivateKey [in]

Дескриптор закрытого ключа, используемый для подписывания хэша.

pbHashValue [in]

Указатель на буфер, содержащий хэш для подписывания.

cbHashValue [in]

Размер буфера pbHashValue (в байтах).

pbSignature [out]

Адрес буфера, получающего сигнатуру хэша. Параметр cbSignature содержит размер этого буфера. Чтобы определить требуемый размер буфера, задайте для параметра pbSignatureзначение NULL. Требуемый размер буфера будет возвращен в параметре pcbResult .

cbSignature [in]

Размер буфера pbSignature (в байтах).

pcbResult [out]

Указатель на значение, которое после завершения содержит фактическое количество байтов, записанных в буфер pbSignature .

dwFlags [in]

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

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

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

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

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

Возвращаемый код или значение Описание
NTE_INVALID_HANDLE
0x80090026L
Один из предоставленных дескрипторов недопустим.

Требования

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