CMSG_CTRL_DECRYPT_PARA 結構 (wincrypt.h)

CMSG_CTRL_DECRYPT_PARA結構包含用來解密金鑰傳輸收件者之信封郵件的資訊。 如果dwCtrlType參數CMSG_CTRL_DECRYPT,這個結構會傳遞至CryptMsgControl。

如需 CryptoAPI 如何支援 Secure/Multipurpose Internet Mail Extensions (S/MIME) 電子郵件互通性的相關資訊,請參閱 CryptMsgOpenToEncode的一節。

語法

typedef struct _CMSG_CTRL_DECRYPT_PARA {
  DWORD cbSize;
  union {
    HCRYPTPROV        hCryptProv;
    NCRYPT_KEY_HANDLE hNCryptKey;
  } DUMMYUNIONNAME;
  DWORD dwKeySpec;
  DWORD dwRecipientIndex;
} CMSG_CTRL_DECRYPT_PARA, *PCMSG_CTRL_DECRYPT_PARA;

成員

cbSize

這個結構的大小,以位元組為單位。

DUMMYUNIONNAME

DUMMYUNIONNAME.hCryptProv

密碼編譯服務提供者 (CSP) 控制碼。 會呼叫 CNG 函式 NCryptIsKeyHandle 來判斷聯集選擇。

DUMMYUNIONNAME.hNCryptKey

CNG 密碼編譯服務提供者 的控制碼 (CSP) 。 會呼叫 CNG 函式 NCryptIsKeyHandle來判斷聯集選擇。 CNG 函式僅支援新的加密演算法。 系統會呼叫 CNG 函式 NCryptTranslateHandle,視需要轉換 CryptoAPI hCryptProv 選擇。 我們建議應用程式傳遞至 hNCryptKey 成員,這是從 NCryptOpenKey 函式傳回的 CNG CSP 控制碼。

dwKeySpec

要使用的私密金鑰。 使用 hNCryptKey 成員時,不會使用此成員。

預設提供者定義了下列 dwKeySpec 值。

值 意義
AT_KEYEXCHANGE
用來加密和解密工作階段金鑰的金鑰。
AT_SIGNATURE
用來建立和驗證數位簽章的金鑰。
 

如果 dwKeySpec 為零,則會使用預設AT_KEYEXCHANGE。

dwRecipientIndex

與 hCryptProv 私密金鑰相關聯的郵件中收件者的索引。

規格需求

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

另請參閱

CryptMsgControl