SslCreateClientAuthHash 函数

SslCreateClientAuthHash 函数检索用于客户端身份验证的握手哈希的句柄。

语法

SECURITY_STATUS WINAPI SslCreateClientAuthHash(
  _In_  NCRYPT_PROV_HANDLE hSslProvider,
  _Out_ NCRYPT_HASH_HANDLE *phHandshakeHash,
  _In_  DWORD              dwProtocol,
  _In_  DWORD              dwCipherSuite,
  _In_  LPCWSTR            pszHashAlgId,
  _In_  DWORD              dwFlags
);

参数

hSslProvider [in]

安全套接字层协议 (SSL) 协议提供程序实例的句柄。

phHandshakeHash [out]

指向 NCRYPT_HASH_HANDLE 变量的指针,用于接收哈希句柄。

dwProtocol [in]

CNG SSL 提供程序协议标识符值之一。

dwCipherSuite [in]

CNG SSL 提供程序密码套件标识符值之一。

pszHashAlgId [in]

CNG 算法标识符值之一。

dwFlags [in]

此参数保留供将来使用,必须设置为零。

返回值

如果该函数成功,则返回零。

如果函数失败,它将返回非零错误值。

可能的返回代码包括但不限于以下内容。

返回代码/值 说明
NTE_INVALID_HANDLE
0x80090026L
hSslProvider 参数包含无效的指针。
NTE_INVALID_PARAMETER
0x80090027L
phHandshakeHash 参数设置为 NULL
NTE_NOT_SUPPORTED
0x80090029L
指定的接口版本不支持所选函数。
NTE_NO_MEMORY
0x8009000EL
内存不足,无法分配缓冲区。
NTE_BAD_FLAGS
0x80090009L
dwFlags 参数必须设置为零。

备注

SslCreateClientAuthHash 函数为传输层安全协议 (TLS) 1.2 或更高版本的会话调用,以创建用于哈希握手消息的哈希对象。 对于可在客户端身份验证签名中使用的每个可能的 哈希算法 ,它都会调用一次。

要求

要求
最低受支持的客户端
Windows 7 [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 R2 [仅限桌面应用]
标头
Sslprovider.h
DLL
Ncrypt.dll