Angeben von Schannel-Verschlüsselungen und Verschlüsselungsstärken
Beim Austausch von Client-/Serverinformationen besteht das Standardverhalten von Schannel darin, die beste verfügbare Verschlüsselung basierend auf den in der Registrierung aktivierten Verschlüsselungen auszuhandeln. Anwendungen können die Verschlüsselungs- und Verschlüsselungsstärken, die für eine Verbindung zulässig sind, mithilfe von Membern der SCHANNEL _ CRED-Struktur wie folgt einschränken:
- Legen Sie den member palgSupportedAlgs auf ein Array der _ ALG-ID fest, das die zulässigen Verschlüsselungen enthält. Weitere Informationen finden Sie unter Verschlüsselungs-IDs.
- Legen Sie die Elemente dwMinimumCipherStrength und/oder dwMaximumCipherStrength auf die zulässigen mindesten und maximalen Stärken fest. Weitere Informationen finden Sie unter Verschlüsselungsstärkewerte.
- Übergeben Sie die SCHANNEL _ CRED-Struktur (mithilfe des pAuthData-Parameters) in einem Aufruf der AcquireCredentialsHandle-Funktion. Diese Funktion gibt ein Handle für Anmeldeinformationen zurück.
- Geben Sie das Handle für Anmeldeinformationen in einem Aufruf der clientseitigen InitializeSecurityContext(General)-Funktion oder der serverseitigen AcceptSecurityContext (General)-Funktion an.
Verschlüsselungs-IDs
Das Standardverhalten von Schannel besteht darin, die beste verfügbare Verschlüsselung basierend auf Schannel-Einträgen in der Systemregistrierung anzufordern. Ändern Sie die Systemregistrierung nicht. die Einstellungen, die es für Schannel enthält, werden global verwendet und wirken sich auf andere Anwendungen aus. Eine Liste der gültigen Konstanten finden Sie unter _ ALG-ID.
Verschlüsselungsstärkewerte
Dieses Schannel-Feature wird in der Regel verwendet, um eine Verbindung auf Chiffren mit Innen- oder Exportstärke zu beschränken. Nationale Stärken umfassen 56 und 128 Bit, während die Exportstärke auf 56 Bits beschränkt ist. Wenn Sie die Minimal- und Höchstwerte auf null festlegen, verwendet Schannel alle verfügbaren Verschlüsselungsstärken.
Legen Sie mit TLS oder SSL 3.0 den dwMinimumCipherStrength-Member auf -1 (negativ) fest, um die Verschlüsselungssammlungen "Null Cipher" zu aktivieren, die Signaturen, aber keine Verschlüsselung bereitstellen. Wenn dwMaximumCipherStrength ebenfalls auf -1 festgelegt ist, werden nur die "NULL Cipher"-Sammlungen aktiviert. Diese Einstellung ist nur für die Entwicklung vorgesehen und sollte nicht in Produktionssystemen verwendet werden.
Abfragen von Verschlüsselungsinformationen
Um die Verschlüsselungsstärkeeinstellungen für Anmeldeinformationen abzurufen, rufen Sie die QueryCredentialsAttributes-Funktion auf, und geben Sie SECPKG _ ATTR _ CIPHER _ STRENGTHS als ulAttribute-Parameter an.
Um die Liste der unterstützten Algorithmen für Anmeldeinformationen abzurufen, rufen Sie queryCredentialsAttributes mit SECPKG _ ATTR _ SUPPORTED _ ALGS als ulAttribute-Parameter auf.