PFN_CMSG_EXPORT_KEY_TRANS Rückruffunktion (wincrypt.h)
Die PFN_CMSG_EXPORT_KEY_TRANS Rückruffunktion verschlüsselt und exportiert den Inhaltsverschlüsselungsschlüssel für einen Schlüsseltransportempfänger einer umhüllten Nachricht. PFN_CMSG_EXPORT_KEY_TRANS können mithilfe eines CryptoAPI-Objektbezeichners (OID) installiert werden. Diese Funktion wird von der CryptMsgOpenToEncode-Funktion aufgerufen, wenn ihr dwMsgType-Parameter auf CMSG_ENVELOPED festgelegt ist.
Syntax
PFN_CMSG_EXPORT_KEY_TRANS PfnCmsgExportKeyTrans;
BOOL PfnCmsgExportKeyTrans(
[in] PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
[in] PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo,
[in, out] PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo,
[in] DWORD dwFlags,
void *pvReserved
)
{...}
Parameter
[in] pContentEncryptInfo
Ein Zeiger auf eine CMSG_CONTENT_ENCRYPT_INFO-Struktur , die den Inhaltsverschlüsselungsschlüssel enthält.
[in] pKeyTransEncodeInfo
Ein Zeiger auf eine CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO-Struktur , die den öffentlichen Schlüssel des Empfängers angibt, der zum Verschlüsseln des Inhaltsverschlüsselungsschlüssels verwendet wird.
[in, out] pKeyTransEncryptInfo
Ein Zeiger auf eine CMSG_KEY_TRANS_ENCRYPT_INFO-Struktur , die den Verschlüsselungsschlüssel für verschlüsselten Inhalt enthält.
[in] dwFlags
Dieser Wert wird nicht verwendet. Legen Sie ihn auf 0 (null) fest.
pvReserved
Dieser Wert ist reserviert. Legen Sie sie auf NULL fest.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich null (TRUE).
Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (FALSE). Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.
Hinweise
Die funktion PFN_CMSG_EXPORT_KEY_TRANS muss den EncryptedKey-Member der CMSG_KEY_TRANS_ENCRYPT_INFO Struktur aktualisieren, auf die der pKeyTransEncryptInfo-Parameter verweist. Diese Funktion muss die Member pfnAlloc und pfnFree der CMSG_CONTENT_ENCRYPT_INFO Struktur verwenden, auf die der pContentEncryptInfo-Parameter verweist, um die Speicherbelegung für den verschlüsselten Schlüssel zu verwalten.
Sie können OID-Unterstützungsfunktionen verwenden, um diese Rückruffunktion bereitzustellen. Wincrypt.h definiert zu diesem Zweck die folgenden Konstanten.
Sie müssen verschiedene Rückruffunktionen für CAPI1-Schlüssel und Kryptografie-API definieren: CNG-Schlüssel (Next Generation). Beide Funktionen verfügen über die gleiche Signatur, verwenden jedoch unterschiedliche OIDs. Welche Funktion aufgerufen wird, hängt vom Wert des fCNG-Elements der CMSG_CONTENT_ENCRYPT_INFO Struktur ab, auf die der pContentEncryptInfo-Parameter verweist. Die folgende Tabelle zeigt die Beziehung zwischen der Rückruffunktion und dem Wert des fCNG-Elements .
fCNG-Wert | Dauerhaft | Definition |
---|---|---|
false | CMSG_OID_EXPORT_KEY_TRANS_FUNC oder CMSG_OID_CAPI1_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllExportKeyTrans" |
true | CMSG_OID_CNG_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllCNGExportKeyTrans" |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wincrypt.h |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für