CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO結構 (wincrypt.h)
CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO結構包含使用金鑰合約金鑰管理之郵件收件者的相關資訊。這個結構會與CMSG_RECIPIENT_ENCODE_INFO結構搭配使用。
語法
typedef struct _CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
void *pvKeyEncryptionAuxInfo;
CRYPT_ALGORITHM_IDENTIFIER KeyWrapAlgorithm;
void *pvKeyWrapAuxInfo;
HCRYPTPROV_LEGACY hCryptProv;
DWORD dwKeySpec;
DWORD dwKeyChoice;
union {
PCRYPT_ALGORITHM_IDENTIFIER pEphemeralAlgorithm;
PCERT_ID pSenderId;
} DUMMYUNIONNAME;
CRYPT_DATA_BLOB UserKeyingMaterial;
DWORD cRecipientEncryptedKeys;
PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO *rgpRecipientEncryptedKeys;
} CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO, *PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO;
成員
cbSize
這個 結構的大小,以位元組為單位。
KeyEncryptionAlgorithm
CRYPT_ALGORITHM_IDENTIFIER結構,指定用於加密的演算法。
對於 ECC 收件者,CRYPT_ALGORITHM_IDENTIFIER結構的pszObjId成員應該設定為 szOID_DH_SINGLE_PASS_STDDH_SHA1_KDF,並將這個CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO結構的dwKeyChoice成員設定為 CMSG_KEY_AGREE_EPHEMERAL_KEY_CHOICE。
pvKeyEncryptionAuxInfo
目前未使用此成員。 它必須設定為 Null。
KeyWrapAlgorithm
CRYPT_ALGORITHM_IDENTIFIER結構,指定用於金鑰包裝的演算法。
pvKeyWrapAuxInfo
指定索引鍵換行位長度 之CMSG_RC2_AUX_INFO 結構的指標。 只有當 KeyWrapAlgorithm 成員指定 RC2 演算法時,才會使用此成員。 如果 KeyWrapAlgorithm 指定 RC2 演算法以外的演算法,則不會使用這個成員,而且必須是 Null。
hCryptProv
未使用這個成員,而且應該設定為 Null。
Windows Server 2003 和 Windows XP:使用CryptAcquireCoNtext函式取得的密碼編譯服務提供者控制碼 (CSP) 。 這個成員是選擇性的,而且可以是 Null。此成員的資料類型為 HCRYPTPROV。
dwKeySpec
目前未使用此成員。
dwKeyChoice
指出金鑰合約的類型。 這個成員可以是下列其中一個值。
值 | 意義 |
---|---|
|
建立暫時 的公開/私密金鑰組 來加密內容加密金鑰。 |
|
目前不使用此值。 |
DUMMYUNIONNAME
DUMMYUNIONNAME.pEphemeralAlgorithm
包含暫時公開金鑰演算法和參數 之CRYPT_ALGORITHM_IDENTIFIER 結構的指標。 當 dwKeyChoice成員包含CMSG_KEY_AGREE_EPHEMERAL_KEY_CHOICE時,會使用此成員。
DUMMYUNIONNAME.pSenderId
CERT_ID結構的指標。 當 dwKeyChoice成員包含CMSG_KEY_AGREE_STATIC_KEY_CHOICE時,會使用此成員。 目前未使用此成員。
UserKeyingMaterial
CRYPT_DATA_BLOB結構,其中包含傳送者所提供的使用者金鑰資料 (UKM) ,以確保每次相同的兩方產生配對金鑰時,都會產生不同的金鑰。 這個成員是選擇性的,如果未使用,則所有成員都應該設定為零。
cRecipientEncryptedKeys
rgpRecipientEncryptedKeys陣列中的專案數目。
rgpRecipientEncryptedKeys
CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO結構的陣列,每個收件者都會收到此金鑰合約金鑰。 cRecipientEncryptedKeys成員包含這個 結構中的元素數目。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
標頭 | wincrypt.h |