CMSG_KEY_TRANS_ENCRYPT_INFO 구조체(wincrypt.h)
CMSG_KEY_TRANS_ENCRYPT_INFO 구조에는 봉투형 데이터의 키 전송 수신자에 대한 암호화 정보가 포함됩니다. PFN_CMSG_EXPORT_KEY_TRANS 함수는 이 구조를 업데이트합니다.
구문
typedef struct _CMSG_KEY_TRANS_ENCRYPT_INFO {
DWORD cbSize;
DWORD dwRecipientIndex;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedKey;
DWORD dwFlags;
} CMSG_KEY_TRANS_ENCRYPT_INFO, *PCMSG_KEY_TRANS_ENCRYPT_INFO;
멤버
cbSize
이 구조체의 크기(바이트)입니다.
dwRecipientIndex
PFN_CMSG_EXPORT_KEY_TRANS 함수의 pContentEncryptInfo 매개 변수로 지정된 받는 사람 목록에서 받는 사람의 서수 수를 지정하는 값입니다.
KeyEncryptionAlgorithm
받는 사람 공개 키의 알고리즘을 지정하는 CRYPT_ALGORITHM_IDENTIFIER 구조체입니다. CryptMsgOpenToEncode 함수는 CRYPT_ALGORITHM_IDENTIFIER 구조체의 pszObjId 멤버를 사용하여 키를 내보내는 데 사용되는 함수의 주소를 가져옵니다. 이 함수는 Cryptography API: Next Generation(CNG) 개체 식별자 (OID)를 사용하여 설치할 수 있습니다.
EncryptedKey
받는 사람의 공개 키로 암호화된 세션 키를 포함하는 CRYPT_DATA_BLOB 구조체입니다.
dwFlags
CryptMsgOpenToEncode 함수를 사용하여 업데이트된 멤버와 메모리 할당을 해제해야 하는 멤버를 지정하는 값입니다.
값 | 의미 |
---|---|
|
KeyEncryptionAlgorithm 멤버가 참조하는 CRYPT_ALGORITHM_IDENTIFIER 구조체의 pszObjId 멤버가 업데이트되었습니다. |
|
KeyEncryptionAlgorithm 멤버가 참조하는 CRYPT_ALGORITHM_IDENTIFIER 구조체의 ParameterspbData 멤버가 업데이트되었습니다. |
설명
dwMsgType 매개 변수를 CMSG_ENVELOPED 설정하여 호출하면 CryptMsgOpenToEncode 함수는CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO 구조체에서 CMSG_KEY_TRANS_ENCRYPT_INFO 구조를 초기화합니다. CryptMsgOpenToEncode 함수는 PFN_CMSG_EXPORT_KEY_TRANS 함수를 호출하여 CMSG_KEY_TRANS_ENCRYPT_INFO 구조를 업데이트합니다. 콜백 함수를 찾을 수 없는 경우 CryptMsgOpenToEncode 함수는 이 구조를 CMSG_CONTENT_ENCRYPT_INFO 구조체의 기본 키 정보로 채웁니다.
콜백 함수에서 CMSG_KEY_TRANS_ENCRYPT_INFO 구조체의 다음 멤버를 업데이트할 수 있습니다.
- EncryptedKey
- KeyEncryptionAlgorithm.pszObjId
- KeyEncryptionAlgorithm.Parameters
- dwFlags
다른 멤버는 읽기 전용입니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | wincrypt.h |