共用方式為


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]

其中一個 CNG SSL 提供者通訊協定識別碼 值。

dwCipherSuite [in]

其中一個 CNG SSL 提供者加密套件識別碼 值。

dwKeyType [in]

其中一個 CNG SSL 提供者金鑰類型識別碼 值。 針對不是 橢圓曲線加密 的金鑰類型,請將此參數設定為零, (ECC) 。

dwKeyBitLen [in]

金鑰的長度 (位元數)。

pbParams [in]

緩衝區的指標,包含要建立之索引鍵的參數。 如果未使用 Diffie-Hellman (暫時) 金鑰交換演算法 (DHE) 加密套件,請將 pbParams 參數設定為 Null並將 cbParams 參數設定為零。

cbParams [in]

pbParams緩衝區中資料的長度,以位元組為單位。

dwFlags [in]

這個參數保留給未來使用。

傳回值

如果函式成功,則會傳回零。

如果函式失敗,它會傳回非零錯誤值。

傳回碼/值 Description
NTE_NO_MEMORY
0x8009000EL
記憶體不足,無法配置緩衝區。
NTE_INVALID_HANDLE
0x80090026L
hSslProvider控制碼無效。
NTE_INVALID_PARAMETER
0x80090027L
其中一個提供的參數無效。

備註

使用 DHE 加密套件時,內部 SSL 實作會將伺服器pg參數傳遞至pbParamscbParams參數中的SslCreateEphemeralKey函式。

pbParams緩衝區中的資料格式與設定BCRYPT_DH_PARAMETERS屬性時所使用的格式相同,並以BCRYPT_DH_PARAMETER_HEADER結構開頭。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2008 [僅限傳統型應用程式]
標頭
Sslprovider.h
DLL
Ncrypt.dll