PCRYPT_DECRYPT_PRIVATE_KEY_FUNC回呼函式 (wincrypt.h)

[ PCRYPT_DECRYPT_PRIVATE_KEY_FUNC 函式可用於需求一節中指定的作業系統。 後續版本可能會變更或無法使用。]

PCRYPT_DECRYPT_PRIVATE_KEY_FUNC函式會解密私鑰,並傳回 pbClearTextKey 參數中的解密密鑰。 PCRYPT_DECRYPT_PRIVATE_KEY_FUNC 是CRYPT_PKCS8_IMPORT_PARAMS結構中指定的 呼函式。 當 CRYPT_ENCRYPTED_PRIVATE_KEY_INFO 結構包含需要解密的私鑰時,就會使用它。 CryptImportPKCS8 函式會使用此函式。 此函式必須由開發人員實作,以符合每個應用程式。

語法

PCRYPT_DECRYPT_PRIVATE_KEY_FUNC PcryptDecryptPrivateKeyFunc;

BOOL PcryptDecryptPrivateKeyFunc(
  [in]      CRYPT_ALGORITHM_IDENTIFIER Algorithm,
  [in]      CRYPT_DATA_BLOB EncryptedPrivateKey,
  [out]     BYTE *pbClearTextKey,
  [in, out] DWORD *pcbClearTextKey,
  [in]      LPVOID pVoidDecryptFunc
)
{...}

參數

[in] Algorithm

CRYPT_ALGORITHM_IDENTIFIER結構,識別用來加密 PKCS #8 標準中找到的 PrivateKeyInfo ASN.1 類型的演算法。

[in] EncryptedPrivateKey

識別加密私鑰 BLOB的CRYPT_DATA_BLOB值。

[out] pbClearTextKey

要接收純文本BYTE 緩衝區的指標。 此參數可以是 Null。 如需詳細資訊,請參閱 擷取未知長度的數據

[in, out] pcbClearTextKey

DWORD 值的指標,識別 pbClearTextKey 緩衝區的大小,以位元組為單位。 如果大小為零,則 應該 填入大小,以位元組為單位填入解密密鑰所需的大小,並忽略 pbClearTextKey

[in] pVoidDecryptFunc

LPVOID 值,提供用於解密的數據,例如金鑰、初始化向量和密碼。

傳回值

如果函式成功,函式會傳回非零 (TRUE) 。

如果函式失敗,它會傳回零 (FALSE) 。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 wincrypt.h

另請參閱

CRYPT_ENCRYPTED_PRIVATE_KEY_INFO

CRYPT_PKCS8_IMPORT_PARAMS

CryptImportPKCS8