鍵 BLOB から暗号化サービスプロバイダ (CSP) に暗号鍵を転送する。
CryptImportKey hProv, pbData, dwDataLen, hPubKey, dwFlags, phKey
hProv : [int] CryptAcquireContext 関数で取得した CSP のハンドル。 pbData : [var] PUBLICKEYSTRUC BLOB ヘッダーに続いて暗号化された鍵を含む BYTE 配列。この鍵 BLOB は、このアプリケーションまたは別のコンピュータで実行されている可能性のある別のアプリケーションで、CryptExportKey 関数によって作成される。 dwDataLen : [int] 鍵 BLOB の長さ (バイト単位)。 hPubKey : [int] pbData に格納された鍵を復号する暗号鍵へのハンドル。この鍵は hProv が参照するものと同じ CSP から取得しなければならない。このパラメータの意味は、CSP の種類とインポートする鍵 BLOB の種類によって異なる。 dwFlags : [int] 現在、PRIVATEKEYBLOB 形式の公開/秘密鍵ペアを CSP にインポートする場合にのみ使用される。 phKey : [var] インポートされた鍵のハンドルを受け取る HCRYPTKEY 値へのポインタ。鍵の使用が終わったら、CryptDestroyKey 関数を呼び出してハンドルを解放する。
(プラグイン / モジュール : advapi32.dll)
鍵 BLOB から暗号化サービスプロバイダ (CSP) に暗号鍵を転送する。 [戻り値] 関数が成功した場合はゼロ以外を返す。失敗した場合はゼロを返す。拡張エラー情報を取得するには GetLastError を呼び出す。「NTE」で始まるエラーコードは使用中の特定の CSP が生成する。以下のエラーコードが返される可能性がある。 (以下省略) [備考] Hash-Based Message Authentication Code (HMAC) 鍵をインポートするとき、呼び出し側はインポートされる鍵を PLAINTEXTKEYBLOB 型と識別し、PUBLICKEYSTRUC BLOB ヘッダーの aiKeyAlg フィールドに適切なアルゴリズム識別子を設定しなければならない。CryptImportKey 関数は対称アルゴリズム用の平文鍵をインポートするために使用できる。ただし、使いやすさのため、代わりに CryptGenKey 関数を使用することを推奨する。平文鍵をインポートする際、pbData パラメータで渡される鍵 BLOB の構造は PLAINTEXTKEYBLOB となる。PLAINTEXTKEYBLOB 型は、使用中の CSP がサポートする任意のアルゴリズムや鍵種別の組み合わせで使用できる。平文鍵のインポート例については、Example C Program: Importing a Plaintext Key を参照。次の例は、ヘッダーフィールドの設定方法を示す。 (以下省略)
| プラグイン / モジュール | advapi32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_advapi32_gen2.hs |