Freigeben über


CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO Struktur (wincrypt.h)

Die CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO-Struktur enthält codierte Schlüsseltransportinformationen für einen Nachrichtenempfänger.

Syntax

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;

Member

cbSize

Ein DWORD-Wert , der die Größe der Struktur in Bytes angibt.

KeyEncryptionAlgorithm

Ein CRYPT_ALGORITHM_IDENTIFIER Wert, der den Schlüsselverschlüsselungsalgorithmus und alle zugehörigen Parameter identifiziert, die zum Verschlüsseln des Inhaltsverschlüsselungsschlüssels verwendet werden.

Für RSA AES sollte das pszObjId-Element der CRYPT_ALGORITHM_IDENTIFIER-Struktur auf szOID_RSAES_OAEP festgelegt werden. Das Parameterelement der CRYPT_ALGORITHM_IDENTIFIER-Struktur sollte auf die codierte PKCS_RSAES_OAEP_PARAMETERS festgelegt werden. Wenn der Parameter.cbData-Member gleich 0 ist, werden die Standardparameter verwendet und codiert.

pvKeyEncryptionAuxInfo

Ein Void-Zeiger auf eine Struktur, die zusätzliche Informationen zur Verschlüsselung enthält. Das Format der Struktur hängt von dem algorithmus ab, der von KeyEncryptionAlgorithm angegeben wird.

hCryptProv

Dieser Member wird nicht verwendet und sollte auf NULL festgelegt werden.

Windows Server 2003 und Windows XP: Ein HCRYPTPROV-Wert , der zum Verschlüsseln und Exportieren des Empfängerschlüssels verwendet wird. Die privaten Schlüssel des Anbieters werden nicht verwendet. Wenn hCryptProvNULL ist, wird der im CMSG_ENVELOPED_ENCODE_INFO angegebene HCRYPTPROV verwendet. Beachten Sie, dass diese HCRYPTPROV nicht freigegeben wird, auch wenn CMSG_CRYPT_RELEASE_CONTEXT_FLAG im dwFlags-Parameter festgelegt ist, der an CryptMsgOpenToEncode übergeben wird.

RecipientPublicKey

Eine CRYPT_BIT_BLOB Variable, die den öffentlichen Schlüssel des Empfängers enthält.

RecipientId

Ein CERT_ID Wert, der den Empfänger identifiziert. CMS unterstützt die KEY_IDENTIFIER und ISSUER_SERIAL_NUMBER CERT_ID. PKCS #7 Version 1.5 unterstützt nur die ISSUER_SERIAL_NUMBER CERT_IDs.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile wincrypt.h