SslCreateEphemeralKey 函数
SslCreateEphemeralKey 函数创建临时密钥,以便在安全套接字层协议 (SSL) 握手期间进行的身份验证期间使用。
语法
SECURITY_STATUS WINAPI SslCreateEphemeralKey(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_Out_ NCRYPT_KEY_HANDLE *phEphemeralKey,
_In_ DWORD dwProtocol,
_In_ DWORD dwCipherSuite,
_In_ DWORD dwKeyType,
_In_ DWORD dwKeyBitLen,
_In_ PBYTE pbParams,
_In_ DWORD cbParams,
_In_ DWORD dwFlags
);
参数
-
hSslProvider [in]
-
SSL 协议提供程序实例的句柄。
-
phEphemeralKey [out]
-
临时键的句柄。
-
dwProtocol [in]
-
dwCipherSuite [in]
-
dwKeyType [in]
-
CNG SSL 提供程序密钥类型标识符值之一。 对于不是 椭圆曲线加密 (ECC) 的密钥类型,请将此参数设置为零。
-
dwKeyBitLen [in]
-
密钥长度,以位为单位。
-
pbParams [in]
-
指向要创建的键的参数的缓冲区的指针。 如果未使用 Diffie-Hellman (临时) 密钥交换算法 (DHE) 密码套件,请将 pbParams 参数设置为 NULL , 将 cbParams 参数设置为零。
-
cbParams [in]
-
pbParams 缓冲区中数据的长度(以字节为单位)。
-
dwFlags [in]
-
此参数留待将来使用。
返回值
如果函数成功,则返回零。
如果函数失败,它将返回非零错误值。
返回代码/值 | 说明 |
---|---|
|
内存不足,无法分配缓冲区。 |
|
hSslProvider 句柄无效。 |
|
提供的参数之一无效。 |
注解
使用 DHE 密码套件时,内部 SSL 实现会将服务器 p 和 g 参数传递到 pbParams 和 cbParams 参数中的 SslCreateEphemeralKey 函数。
pbParams 缓冲区中的数据的格式与设置 BCRYPT_DH_PARAMETERS 属性时使用的格式相同,并且以BCRYPT_DH_PARAMETER_HEADER结构开头。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |
标头 |
|
DLL |
|