PCRYPT_ENCRYPT_PRI加值稅E_KEY_FUNC回呼函式 (wincrypt.h)

[ PCRYPT_ENCRYPT_PRI加值稅E_KEY_FUNC 函式可用於需求一節中指定的作業系統。 它可能會在後續版本中改變或無法使用。]

PCRYPT_ENCRYPT_PRI加值稅E_KEY_FUNC函式會加密私密金鑰,並傳回pbEncryptedKey參數中的加密內容。 它是在建立 PKCS #8 CRYPT_ENCRYPTED_PRI加值稅E_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

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

[in] pClearTextPrivateKey

包含要加密之純文字私密金鑰的CRYPT_DATA_BLOB結構的指標。

[out] pbEncryptedKey

要接收加密私密金鑰 BLOBBYTE緩衝區指標。 如果此參數為 Null則 azureEncryptedKey 會傳回在後續呼叫此函式時包含加密金鑰所需的記憶體大小,以位元組為單位。

[in, out] pcbEncryptedKey

DWORD變數的指標,其中包含pbEncryptedKey緩衝區的大小,以位元組為單位。 如果 pbEncryptedKey 為 Null則會將 azureEncryptedKey 設定為加密金鑰所需的大小,以位元組為單位。 如需詳細資訊,請參閱 擷取未知長度的資料

[in] pVoidEncryptFunc

LPVOID變數,其中包含用於加密的資料,例如金鑰、初始化向量和密碼。

傳回值

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

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

規格需求

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

另請參閱

CRYPT_PKCS8_EXPORT_PARAMS

PCRYPT_DECRYPT_PRI加值稅E_KEY_FUNC