SslCreateEphemeralKey 関数
SslCreateEphemeralKey 関数は、Secure Sockets Layer プロトコル (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 プロバイダー プロトコル識別子の値の 1 つ。
-
dwCipherSuite [in]
-
CNG SSL プロバイダー暗号スイート識別子の値の 1 つ。
-
dwKeyType [in]
-
CNG SSL プロバイダーのキー型識別子の値の 1 つ。 楕円曲線暗号 (ECC) ではないキー型の場合は、このパラメーターを 0 に設定します。
-
dwKeyBitLen [in]
-
キーの長さ (ビット数)。
-
pbParams [in]
-
作成するキーのパラメーターを格納するバッファーへのポインター。 Diffie-Hellman (エフェメラル) キー交換アルゴリズム (DHE) 暗号スイートが使用されていない場合は、pbParams パラメーターを NULL に設定し、cbParams パラメーターを 0 に設定します。
-
cbParams [in]
-
pbParams バッファー内のデータの長さ (バイト単位)。
-
dwFlags [in]
-
このパラメーターは将来使用するために予約されています。
戻り値
関数が成功すると、0 が返されます。
関数が失敗した場合は、0 以外のエラー値を返します。
リターン コード/値 | 説明 |
---|---|
|
バッファーを割り当てるのに十分なメモリがありません。 |
|
hSslProvider ハンドルが無効です。 |
|
指定されたパラメーターの 1 つが無効です。 |
注釈
DHE 暗号スイートを使用する場合、内部 SSL 実装では、pbParams パラメーターと cbParams パラメーターの SslCreateEphemeralKey 関数にサーバー p パラメーターと g パラメーターが渡されます。
pbParams バッファー内のデータの形式は、BCRYPT_DH_PARAMETERS プロパティの設定時に使用した形式と同じであり、BCRYPT_DH_PARAMETER_HEADER構造体から始まります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2008 [デスクトップ アプリのみ] |
Header |
|
[DLL] |
|