CryptImportPublicKeyInfoEx2 函式 (wincrypt.h)

CryptImportPublicKeyInfoEx2 函式會將公鑰匯入 CNG 非對稱提供者,其對應至 公鑰物件標識符 (OID),並將 CNG 句柄傳回給密鑰。

語法

BOOL CryptImportPublicKeyInfoEx2(
  [in]  DWORD                 dwCertEncodingType,
  [in]  PCERT_PUBLIC_KEY_INFO pInfo,
  [in]  DWORD                 dwFlags,
  [in]  void                  *pvAuxInfo,
  [out] BCRYPT_KEY_HANDLE     *phKey
);

參數

[in] dwCertEncodingType

用來加密主體的憑證編碼類型 。 此函式會忽略 訊息編碼類型 標識碼,包含在此值的高 WORD 中。

此參數可以是下列目前定義的憑證編碼類型。

價值 意義
X509_ASN_ENCODING
1 (0x1)
指定 X.509 憑證編碼。

[in] pInfo

CERT_PUBLIC_KEY_INFO 結構的位址,其中包含要匯入提供者的公鑰資訊。

[in] dwFlags

一組旗標,可修改此函式的行為。 這可以是零或下列一或多個值的組合。

價值 意義
CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
略過CRYPT_PUBKEY_ALG_OID_GROUP_ID群組中明確標幟為 CRYPT_OID_PUBKEY_ENCRYPT_ONLY_FLAG 旗標的公鑰。
CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
略過CRYPT_PUBKEY_ALG_OID_GROUP_ID群組中明確標幟為 CRYPT_OID_PUBKEY_SIGN_ONLY_FLAG 旗標的公鑰。
 

當將公鑰物件標識碼對應至對應的 CNG 公鑰演算法識別碼時,這些旗標會傳遞至 CryptFindOIDInfo 函式的 dwKeyType 參數。

[in] pvAuxInfo

此參數保留供日後使用,且必須設定為 NULL

[out] phKey

接收匯入金鑰句柄之 BCRYPT_KEY_HANDLE 變數的位址。

不再需要此句柄時,您必須呼叫 BCryptDestroyKey 函式來釋放它。

傳回值

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

如果函式失敗,則會傳回零 (FALSE)。 如需擴充錯誤資訊,請呼叫 getLastError。 可能的錯誤碼包括,但不限於下列專案。

傳回碼 描述
ERROR_FILE_NOT_FOUND
針對指定的 dwCertEncodingTypepInfo 參數,找不到可安裝或註冊的匯入函式。
E_INVALIDARG
一或多個參數無效。

要求

要求 價值
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
支援的最低伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平臺 窗戶
標頭 wincrypt.h
連結庫 Crypt32.lib
DLL Crypt32.dll

另請參閱

CERT_PUBLIC_KEY_INFO