Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die PFN_CMSG_EXPORT_KEY_TRANS Rückruffunktion verschlüsselt und exportiert den Inhaltsverschlüsselungsschlüssel für einen Schlüsseltransportempfänger einer umschlagierten Nachricht. PFN_CMSG_EXPORT_KEY_TRANS können mithilfe einer CryptoAPIObjektbezeichner (OID) installiert werden. Diese Funktion wird von der funktion CryptMsgOpenToEncode Funktion aufgerufen, wenn der dwMsgType Parameter auf CMSG_ENVELOPEDfestgelegt 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 Empfängerschlüssel 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üsselten Inhaltsverschlüsselungsschlüssel enthält.
[in] dwFlags
Dieser Wert wird nicht verwendet. Legen Sie sie auf 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 null (FALSE). Rufen Sie für erweiterte Fehlerinformationen GetLastError-auf.
Bemerkungen
Die PFN_CMSG_EXPORT_KEY_TRANS-Funktion muss das EncryptedKey Member der CMSG_KEY_TRANS_ENCRYPT_INFO Struktur aktualisieren, auf das der pKeyTransEncryptInfo-Parameter verweist. Diese Funktion muss die pfnAlloc und pfnFree Member der CMSG_CONTENT_ENCRYPT_INFO-Struktur verwenden, auf die vom pContentEncryptInfo Parameter verwiesen wird, um die Speicherzuordnung für den verschlüsselten Schlüssel zu verwalten.
Sie können OID-Unterstützungsfunktionen verwenden, um diese Rückruffunktion bereitzustellen. Wincrypt.h definiert die folgenden Konstanten für diesen Zweck.
Sie müssen unterschiedliche Rückruffunktionen für CAPI1-Schlüssel und Kryptografie-API definieren: CNG-Schlüssel (Next Generation). Beide Funktionen weisen dieselbe Signatur auf, verwenden jedoch unterschiedliche OIDs. Welche Funktion aufgerufen wird, hängt vom Wert des fCNG- Mitglieds der CMSG_CONTENT_ENCRYPT_INFO Struktur ab, auf das der pContentEncryptInfo-Parameter verweist. Die folgende Tabelle zeigt die Beziehung zwischen der Rückruffunktion und dem Wert des fCNG Members.
| fCNG-Wert | Konstante | Definition |
|---|---|---|
| FALSCH | CMSG_OID_EXPORT_KEY_TRANS_FUNC oder CMSG_OID_CAPI1_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllExportKeyTrans" |
| STIMMT | CMSG_OID_CNG_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllCNGExportKeyTrans" |
Anforderungen
| Anforderung | Wert |
|---|---|
| mindestens unterstützte Client- | Windows XP [nur Desktop-Apps] |
| mindestens unterstützte Server- | Windows Server 2003 [Nur Desktop-Apps] |
| Zielplattform- | Fenster |
| Header- | wincrypt.h |