SignerSignEx-Funktion

Die SignerSignEx-Funktion signiert die angegebene Datei und gibt einen Zeiger auf die signierten Daten zurück.

Hinweis

Diese Funktion verfügt über keine zugeordnete Headerdatei oder Importbibliothek. Um diese Funktion aufzurufen, müssen Sie eine benutzerdefinierte Headerdatei erstellen und die Funktionen LoadLibrary und GetProcAddress zum dynamischen Verknüpfen mit Mssign32.dll verwenden.

 

Syntax

HRESULT WINAPI SignerSignEx(
  _In_     DWORD                 dwFlags,
  _In_     SIGNER_SUBJECT_INFO   *pSubjectInfo,
  _In_     SIGNER_CERT           *pSignerCert,
  _In_     SIGNER_SIGNATURE_INFO *pSignatureInfo,
  _In_opt_ SIGNER_PROVIDER_INFO  *pProviderInfo,
  _In_opt_ LPCWSTR               pwszHttpTimeStamp,
  _In_opt_ PCRYPT_ATTRIBUTES     psRequest,
  _In_opt_ LPVOID                pSipData,
  _Out_    SIGNER_CONTEXT        **ppSignerContext
);

Parameter

dwFlags [in]

Ändert das Verhalten dieser Funktion.

Wenn es sich bei der zu signierten Datei um eine portable ausführbare Datei (PE) handelt, kann dies null oder eine Kombination aus einem oder mehreren der folgenden Werte sein. Diese Bezeichner werden in Mssip.h definiert.

Wert Bedeutung
SPC_EXC_PE_PAGE_HASHES_FLAG
0x10
Schließen Sie Seitenhashes beim Erstellen indirekter SIP-Daten für die PE-Datei aus. Dieses Flag hat Vorrang vor dem SPC_INC_PE_PAGE_HASHES_FLAG-Flag .
Wenn weder das SPC_EXC_PE_PAGE_HASHES_FLAG - noch das SPC_INC_PE_PAGE_HASHES_FLAG-Flag angegeben wird, wird für diese Einstellung der Wert verwendet, der mit der WintrustSetDefaultIncludePEPageHashes-Funktion festgelegt wurde. Die Standardeinstellung für diese Einstellung besteht darin, Seitenhashes auszuschließen, wenn indirekte SIP-Daten für PE-Dateien erstellt werden.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SPC_INC_PE_IMPORT_ADDR_TABLE_FLAG
0x20
Dieser Wert wird nicht unterstützt.
SPC_INC_PE_DEBUG_INFO_FLAG
0x40
Dieser Wert wird nicht unterstützt.
SPC_INC_PE_RESOURCES_FLAG
0x80
Dieser Wert wird nicht unterstützt.
SPC_INC_PE_PAGE_HASHES_FLAG
0x100
Schließen Sie Seitenhashes ein, wenn Sie indirekte SIP-Daten für die PE-Datei erstellen.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.

 

pSubjectInfo [in]

Ein Zeiger auf eine SIGNER_SUBJECT_INFO-Struktur , die den zu signierenden Betreff angibt.

pSignerCert [in]

Ein Zeiger auf eine SIGNER_CERT-Struktur , die das Zertifikat angibt, das zum Erstellen der digitalen Signatur verwendet werden soll.

pSignatureInfo [in]

Ein Zeiger auf eine SIGNER_SIGNATURE_INFO Struktur, die Informationen zur digitalen Signatur enthält.

pProviderInfo [in, optional]

Ein Zeiger auf eine SIGNER_PROVIDER_INFO-Struktur , die die Informationen des Kryptografiedienstanbieters (CSP ) und des privaten Schlüssels angibt, die zum Erstellen der digitalen Signatur verwendet werden.

Wenn der Wert dieses Parameters NULL ist, muss der Wert des pSignerCert-Parameters ein Zertifikat angeben, das einem CSP zugeordnet ist.

pwszHttpTimeStamp [in, optional]

Die URL eines Zeitstempelservers.

psRequest [in, optional]

Ein Zeiger auf ein Array von CRYPT_ATTRIBUTE Strukturen, die einer Signieranforderung hinzugefügt werden. Dieser Parameter wird ignoriert, wenn der pwszHttpTimeStamp-Parameter keinen gültigen Wert enthält, der nicht NULL ist.

pSipData [in, optional]

Ein 32-Bit-Wert, der als zusätzliche Daten an SIP-Funktionen übergeben wird. Format und Inhalt werden vom SIP-Anbieter definiert.

ppSignerContext [out]

Die Adresse eines Zeigers auf die SIGNER_CONTEXT Struktur, die das signierte BLOB enthält. Wenn Sie die Verwendung der SIGNER_CONTEXT-Struktur abgeschlossen haben, geben Sie die SIGNER_CONTEXT-Struktur frei, indem Sie die SignerFreeSignerContext-Funktion aufrufen.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.

Wenn die Funktion fehlschlägt, wird ein HRESULT-Wert zurückgegeben, der den Fehler angibt. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
DLL
Mssign32.dll

Siehe auch

SignerSign

SignerFreeSignerContext