SslImportKey 関数

SslImportKey 関数は、Secure Sockets Layer プロトコル (SSL) プロトコル プロバイダーにキーをインポートします。

構文

SECURITY_STATUS WINAPI SslImportKey(
  _In_  NCRYPT_PROV_HANDLE hSslProvider,
  _Out_ NCRYPT_KEY_HANDLE  *phKey,
  _In_  LPCWSTR            pszBlobType,
  _In_  PBYTE              pbKeyBlob,
  _In_  DWORD              cbKeyBlob,
  _In_  DWORD              dwFlags
);

パラメーター

hSslProvider [in]

SSL プロトコル プロバイダー インスタンスへのハンドル。

phKey [out]

インポートされたキーを受け取る 暗号化キー のハンドルへのポインター。

pszBlobType [in]

pbInput バッファーに含まれる BLOB の種類を指定する識別子を含む null で終わる Unicode 文字列。 これには、次のいずれかの値を指定できます。

説明
BCRYPT_DH_PUBLIC_BLOB
Diffie-Hellman 公開キーをエクスポートします。 pbOutput バッファーは、キー データの直後にBCRYPT_DH_KEY_BLOB構造体を受け取ります。
BCRYPT_ECCPUBLIC_BLOB
楕円曲線暗号化 (ECC) 公開キーをエクスポートします。 pbOutput バッファーは、キー データの直後にBCRYPT_ECCKEY_BLOB構造を受け取ります。
BCRYPT_OPAQUE_KEY_BLOB
1 つの暗号化サービス プロバイダー (CSP) に固有の形式で対称キーをエクスポートします。 不透明 BLOB は転送できないため、BLOB を生成したのと同じ CSP を使用してインポートする必要があります。
BCRYPT_RSAPUBLIC_BLOB
RSA 公開キーをエクスポートします。 pbOutput バッファーは、キー データの直後にBCRYPT_RSAKEY_BLOB構造を受け取ります。

pbKeyBlob [in]

キー BLOB を含むバッファーへのポインター。

cbKeyBlob [in]

pbKeyBlob バッファーのサイズ (バイト単位)。

dwFlags [in]

このパラメーターは将来使用するために予約されています。

戻り値

関数が成功すると、0 が返されます。

関数が失敗すると、0 以外のエラー値が返されます。

可能なリターン コードには、次のものが含まれますが、これらに限定されません。

リターン コード/値 説明
NTE_NO_MEMORY
0x8009000EL
必要なバッファーを割り当てるのに十分なメモリがありません。
NTE_INVALID_HANDLE
0x80090026L
hSslProvider ハンドルが無効です。
NTE_INVALID_PARAMETER
0x80090027L
phKey パラメーターは NULL です

注釈

SslImportKey 関数を使用すると、セッション キーをあるプロセスから別のプロセスに転送するプロセスの一部としてセッション キーをインポートできます。

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
Header
Sslprovider.h
[DLL]
Ncrypt.dll