SslExportKeyingMaterial 関数
RFC 5705 標準に従ってキーマテリアルをエクスポートします。 この関数は、TLS 擬似乱数関数を使用して、キーマテリアルのバイト バッファーを生成します。 マスター シークレットへの参照、明確な ASCII ラベル、クライアントとサーバーのランダムな値、および必要に応じてアプリケーション コンテキスト データへの参照を受け取ります。
構文
SECURITY_STATUS WINAPI SslExportKeyingMaterial(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hMasterKey,
_In_ PCHAR sLabel,
_In_ PBYTE pbRandoms,
_In_ DWORD cbRandoms,
_In_opt_ PBYTE pbContextValue,
_In_ WORD cbContextValue,
_Out_ PBYTE pbOutput,
_In_ DWORD cbOutput,
_In_ DWORD dwFlags
);
パラメーター
-
hSslProvider [in]
-
TLS プロトコル プロバイダー インスタンスのハンドル。
-
hMasterKey [in]
-
エクスポートするキーマテリアルの作成に使用されるマスター キー オブジェクトのハンドル。
-
sLabel [in]
-
NUL で終わる ASCII ラベル文字列。 Schannel は、擬似乱数関数に渡す前に、終了する NUL 文字を削除します。
-
pbRandoms [in]
-
TLS 接続のclient_randomとserver_random値の連結を含むバッファーへのポインター。
-
cbRandoms [in]
-
pbRandoms バッファーの長さ (バイト単位)。
-
pbContextValue [in, optional]
-
アプリケーション コンテキストを含むバッファーへのポインター。 pbContextValue が NULL の場合、cbContextValue は 0 である必要があります。
-
cbContextValue [in]
-
pbContextValue バッファーの長さ (バイト単位)。
-
pbOutput [out]
-
エクスポートされたキーマテリアルを受け取るバッファーのアドレス。 cbOutput パラメーターには、このバッファーのサイズが含まれています。 この値を NULL にすることはできません。
-
cbOutput [in]
-
pbOutput バッファーの長さ (バイト単位)。 0 より大きくなければなりません。
-
dwFlags [in]
-
使用されていません。 0 に設定する必要があります。
戻り値
関数が成功すると、0 が返されます。
関数が失敗すると、0 以外のエラー値が返されます。
可能なリターン コードには、次のものが含まれますが、これらに限定されません。
リターン コード/値 | 説明 |
---|---|
|
指定されたハンドルの 1 つが無効です。 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 10 [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2016 [デスクトップ アプリのみ] |
Header |
|
[DLL] |
|