PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC コールバック関数 (wincrypt.h)
[ PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC 関数は、[要件] セクションで指定したオペレーティング システムで使用できます。 以降のバージョンでは変更または使用できない場合があります。]
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC関数は秘密キーを暗号化し、pbEncryptedKey パラメーターで暗号化された内容を返します。 PKCS #8 CRYPT_ENCRYPTED_PRIVATE_KEY_INFO構造体を作成するCRYPT_PKCS8_EXPORT_PARAMS構造体で識別されるコールバック関数です。 関数は、各アプリケーションに合わせて開発者が実装する必要があります。
構文
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC PcryptEncryptPrivateKeyFunc;
BOOL PcryptEncryptPrivateKeyFunc(
[out] CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm,
[in] CRYPT_DATA_BLOB *pClearTextPrivateKey,
[out] BYTE *pbEncryptedKey,
[in, out] DWORD *pcbEncryptedKey,
[in] LPVOID pVoidEncryptFunc
)
{...}
パラメーター
[out] pAlgorithm
PKCS #8 標準で見つかった PrivateKeyInfo ASN.1 型の暗号化に使用されるアルゴリズムを受け取る CRYPT_ALGORITHM_IDENTIFIER構造体への ポインター。
[in] pClearTextPrivateKey
暗号化するプレーンテキスト秘密キーを含むCRYPT_DATA_BLOB構造体へのポインター。
[out] pbEncryptedKey
暗号化された秘密キー BLOB を受け取る BYTE バッファーへのポインター。 このパラメーターが NULL の場合、 pcbEncryptedKey は、この関数の後続の呼び出しで暗号化されたキーを格納するために必要なメモリのサイズをバイト単位で返します。
[in, out] pcbEncryptedKey
pbEncryptedKey バッファーのサイズ (バイト単位) を含む DWORD 変数へのポインター。 pbEncryptedKey が NULL の場合、 pcbEncryptedKey はキーの暗号化に必要なサイズ (バイト単位) に設定されます。 詳細については、「 不明な長さのデータの取得」を参照してください。
[in] pVoidEncryptFunc
キー、初期化ベクトル、パスワードなど、暗号化に使用されるデータを含む LPVOID 変数。
戻り値
関数が成功した場合、関数は 0 以外 (TRUE) を返します。
関数が失敗した場合は、0 (FALSE) を返します。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | wincrypt.h |