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 FuncVerifyImage-Rückruffunktion wird von einem Kryptografiedienstanbieter (CSP) verwendet, um die Signatur einer DLL zu überprüfen.
Alle Hilfs-DLLs, in die ein CSP Funktionsaufrufe durchführt, müssen auf die gleiche Weise (und mit demselben Schlüssel) wie die primäre CSP-DLL signiert werden. Um diese Signatur sicherzustellen, müssen die Hilfs-DLLs mithilfe der LoadLibrary-Funktion dynamisch geladen werden. Bevor die DLL jedoch geladen wird, muss die Signatur der DLL überprüft werden. Der CSP führt diese Überprüfung durch Aufrufen der FuncVerifyImage-Funktion aus, wie im folgenden Beispiel gezeigt.
Syntax
typedef BOOL ( WINAPI *CRYPT_VERIFY_IMAGE)(
_In_ LPCTSTR lpszImage,
_In_ const BYTE *pbSigData
);
Parameter
-
lpszImage [in]
-
Die Adresse einer NULL-beendeten Zeichenfolge, die den Pfad und dateinamen der DLL enthält, für die die Signatur überprüft werden soll.
-
pbSigData [in]
-
Die Adresse eines Puffers, der die Signatur enthält.
Rückgabewert
Gibt TRUE zurück, wenn die Funktion erfolgreich ist, FALSE , wenn sie fehlschlägt.
Beispiele
Das folgende Beispiel zeigt, wie Sie die Rückruffunktion FuncVerifyImage verwenden, um die Signatur einer DLL zu überprüfen, bevor sie von einem CSP geladen wird.
BOOL (FARPROC *ProvVerifyImage)(LPCSTR lpszImage, BYTE *pSigData);
// "ProvVerifyImage" has been set to "pVTable->FuncVerifyImage"
// within the CPAcquireContext function.
// bSignature is a previously assigned BYTE array that contains the
// signature that is stored in the C:\Winnt40\System32\signature.sig
// file. During development, this file is created with the
// Sign.exe tool.
...
// Verify the signature in the
// C:\Winnt40\System32\Signature.dll file.
if(RCRYPT_FAILED(ProvVerifyImage
("c:\\winnt40\\system32\\signature.dll",
bSignature)) {
SetLastError(NTE_BAD_SIGNATURE);
return CRYPT_FAILED;
}
// Load the DLL with the LoadLibrary function, then acquire pointers
// to the functions with the GetProcAddress function.
//...
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows Server 2003 [nur Desktop-Apps] |
Header |
|
Weitere Informationen