структура CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO (wincrypt.h)

Структура CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO содержит закодированные сведения о транспорте ключа для получателя сообщения.

Синтаксис

typedef struct _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO {
  DWORD                      cbSize;
  CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  void                       *pvKeyEncryptionAuxInfo;
  HCRYPTPROV_LEGACY          hCryptProv;
  CRYPT_BIT_BLOB             RecipientPublicKey;
  CERT_ID                    RecipientId;
} CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO, *PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO;

Члены

cbSize

Значение DWORD , указывающее размер структуры в байтах.

KeyEncryptionAlgorithm

Значение CRYPT_ALGORITHM_IDENTIFIER , определяющее алгоритм шифрования ключей и все связанные параметры, используемые для шифрования ключа шифрования содержимого.

Для RSA AES член pszObjId структуры CRYPT_ALGORITHM_IDENTIFIER должен иметь значение szOID_RSAES_OAEP. Элементу Parametersструктуры CRYPT_ALGORITHM_IDENTIFIER необходимо задать закодированное PKCS_RSAES_OAEP_PARAMETERS. Если элемент Parameters.cbData равен нулю, то используются и кодируются параметры по умолчанию.

pvKeyEncryptionAuxInfo

Пустой указатель на структуру, содержащую дополнительные сведения о шифровании. Формат структуры зависит от алгоритма, указанного в keyEncryptionAlgorithm.

hCryptProv

Этот элемент не используется и должен иметь значение NULL.

Windows Server 2003 и Windows XP: Значение HCRYPTPROV , используемое для шифрования и экспорта ключа получателя. Закрытые ключи поставщика не используются. Если параметр hCryptProv имеет значение NULL, используется HCRYPTPROV , указанный в CMSG_ENVELOPED_ENCODE_INFO . Обратите внимание, что этот HCRYPTPROV не освобождается, даже если CMSG_CRYPT_RELEASE_CONTEXT_FLAG задано в параметре dwFlags , переданном в CryptMsgOpenToEncode.

RecipientPublicKey

Переменная CRYPT_BIT_BLOB , содержащая открытый ключ получателя.

RecipientId

Значение CERT_ID , идентифицирующее получателя. CMS поддерживает KEY_IDENTIFIER и ISSUER_SERIAL_NUMBER CERT_ID. PKCS #7 версии 1.5 поддерживает только ISSUER_SERIAL_NUMBER CERT_ID.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть wincrypt.h