SslComputeClientAuthHash-Funktion
Die SslComputeClientAuthHash-Funktion berechnet einen Hash für die Verwendung während der Zertifikatauthentifizierung.
Syntax
SECURITY_STATUS WINAPI SslComputeClientAuthHash(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hMasterKey,
_In_ NCRYPT_HASH_HANDLE hHandshakeHash,
_In_ LPCWSTR pszAlgId,
_Out_ PBYTE pbOutput,
_In_ DWORD cbOutput,
_Out_ DWORD *pcbResult,
_In_ DWORD dwFlags
);
Parameter
-
hSslProvider [ In]
-
Das Handle der SSL-Protokollanbieterinstanz (Secure Sockets Layer Protocol).
-
hMasterKey [ In]
-
Das Handle des Hauptschlüsselobjekts.
-
hHandshakeHash [ In]
-
Das Handle des hash des bisher berechneten Handshakes.
-
pszAlgId [ In]
-
Ein Zeiger auf eine auf NULL endende Unicode-Zeichenfolge, die den angeforderten kryptografischen Algorithmusidentifiziert. Dies kann einer der CNG-Standardalgorithmusbezeichner oder der Bezeichner für einen anderen registrierten Algorithmus sein.
-
pbOutput [ out]
-
Die Adresse eines Puffers, der den Schlüssel BLOBempfängt. Der cbOutput-Parameter enthält die Größe dieses Puffers. Wenn dieser Parameter NULL ist, wird von dieser Funktion die erforderliche Größe in Bytes in das DWORD-Objekt gesetzt, auf das der parameter "pwResult" zeigt.
-
cbOutput [ In]
-
Die Länge des pbOutput-Puffers in Bytes.
-
resultsResult [ out]
-
Ein Zeiger auf einen DWORD-Wert, der die Länge des in den pbOutput-Puffer geschriebenen Hashs in Bytes angibt.
-
Dwflags [ In]
-
Dieser Parameter ist für die zukünftige Verwendung reserviert.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie 0 (null) zurück.
Wenn die Funktion fehlschlägt, wird ein Fehlerwert ungleich 0 (null) zurückgegeben.
Mögliche Rückgabecodes sind u. a. folgende.
| Rückgabecode/-wert | BESCHREIBUNG |
|---|---|
|
Einer der angegebenen Handles ist ungültig. |
Hinweise
Die SslComputeClientAuthHash-Funktion berechnet den Hash, der in der Zertifikatüberprüfungsmeldung des SSL-Handshakes gesendet wird. Der Hashwert wird berechnet, indem ein Hash erstellt wird, der den geheimen Hauptschlüssel mit einem Hash aller vorherigen gesendeten oder empfangenen Handshakenachrichten enthält.
Die Art und Weise, in der der Hash berechnet wird, hängt vom verwendeten Protokoll und der verwendeten Verschlüsselungssammlung ab. Darüber hinaus hängt der Hash vom Typ des verwendeten Clientauthentifizierungsschlüssels ab. Der parameter pszAlgId gibt den Typ des Schlüssels an, der für die Clientauthentifizierung verwendet wird.
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
nur Windows [ Vista-Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
nur Windows Server [ 2008-Desktop-Apps] |
| Header |
|
| DLL |
|