CNG-Algorithmusbezeichner

Die folgenden Bezeichner werden verwendet, um Standardverschlüsselungsalgorithmen in verschiedenen CNG-Funktionen und -Strukturen zu identifizieren, z. B. der CRYPT_INTERFACE_REG-Struktur . Drittanbieter verfügen möglicherweise über zusätzliche Algorithmen, die sie unterstützen.

Konstante/Wert BESCHREIBUNG
BCRYPT_3DES_ALGORITHM
"3DES"
Der standardsymmetrische Verschlüsselungsalgorithmus für dreifache Datenverschlüsselung.
Standard: SP800-67, SP800-38A
BCRYPT_3DES_112_ALGORITHM
"3DES_112"
Der symmetrische Verschlüsselungsalgorithmus mit dreifacher 112-Bit-Datenverschlüsselung.
Standard: SP800-67, SP800-38A
BCRYPT_AES_ALGORITHM
"AES"
Der symmetrische Verschlüsselungsalgorithmus mit erweitertem Verschlüsselungsstandard.
Standard: FIPS 197
BCRYPT_AES_CMAC_ALGORITHM
"AES-CMAC"
Der symmetrische Verschlüsselungsalgorithmus für den verschlüsselungsbasierten Nachrichtenauthentifizierungscode (CMAC).
Standard: SP 800-38B
Windows 8: Die Unterstützung für diesen Algorithmus beginnt.

BCRYPT_AES_GMAC_ALGORITHM
"AES-GMAC"
Der symmetrische Verschlüsselungsalgorithmus galois message authentication code (GMAC).
Standard: SP800-38D
Windows Vista: Dieser Algorithmus wird ab Windows Vista mit SP1 unterstützt.
BCRYPT_CAPI_KDF_ALGORITHM
L"CAPI_KDF"
Krypto-API (CAPI)-Schlüsselableitungsfunktionalgorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_DES_ALGORITHM
"DES"
Der standardsymmetrische Verschlüsselungsalgorithmus der Datenverschlüsselung.
Standard: FIPS 46-3, FIPS 81
BCRYPT_DESX_ALGORITHM
"DESX"
Der symmetrische Verschlüsselungsalgorithmus für erweiterte Datenverschlüsselung.
Standard: Keine
BCRYPT_DH_ALGORITHM
"DH"
Der Diffie-Hellman Schlüsselaustauschalgorithmus.
Standard: PKCS #3
BCRYPT_DSA_ALGORITHM
"DSA"
Der Algorithmus für die digitale Signatur.
Standard: FIPS 186-2
Windows 8: Ab Windows 8 unterstützt dieser Algorithmus FIPS 186-3. Schlüssel kleiner oder gleich 1024 Bit entsprechen FIPS 186-2 und Schlüssel größer als 1024 bis FIPS 186-3.
BCRYPT_ECDH_P256_ALGORITHM
"ECDH_P256"
Die 256-Bit-Primelliliptikkurve Diffie-Hellman Schlüsselaustauschalgorithmus.
Standard: SP800-56A
BCRYPT_ECDH_P384_ALGORITHM
"ECDH_P384"
Die 384-Bit-Primelliliptikkurve Diffie-Hellman Schlüsselaustauschalgorithmus.
Standard: SP800-56A
BCRYPT_ECDH_P521_ALGORITHM
"ECDH_P521"
Die 521-Bit-Primelliliptikkurve Diffie-Hellman Schlüsselaustauschalgorithmus.
Standard: SP800-56A
BCRYPT_ECDSA_P256_ALGORITHM
"ECDSA_P256"
Der digitale Signaturalgorithmus der 256-Bit-Primelliliptikkurve (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_ECDSA_P384_ALGORITHM
"ECDSA_P384"
Der digitale Signaturalgorithmus der 384-Bit-Primelliliptikkurve (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_ECDSA_P521_ALGORITHM
"ECDSA_P521"
Der digitale Signaturalgorithmus der 521-Bit-Primelliliptikkurve (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_MD2_ALGORITHM
"MD2"
Der MD2-Hashalgorithmus.
Standard: RFC 1319
BCRYPT_MD4_ALGORITHM
"MD4"
Der MD4-Hashalgorithmus.
Standard: RFC 1320
BCRYPT_MD5_ALGORITHM
"MD5"
Der MD5-Hashalgorithmus.
Standard: RFC 1321
BCRYPT_RC2_ALGORITHM
"RC2"
Der symmetrische RC2-Verschlüsselungsalgorithmus.
Standard: RFC 2268
BCRYPT_RC4_ALGORITHM
"RC4"
Der symmetrische RC4-Verschlüsselungsalgorithmus.
Standard: Verschiedene
BCRYPT_RNG_ALGORITHM
"RNG"
Der Algorithmus des Zufallszahlengenerators.
Standard: FIPS 186-2, FIPS 140-2, NIST SP 800-90
Hinweis: Ab Windows Vista mit SP1 und Windows Server 2008 basiert der Zufallszahlengenerator auf dem AES-Zählermodus, der im NIST SP 800-90-Standard angegeben ist.
Windows Vista: Der Zufallszahlengenerator basiert auf dem hashbasierten Zufallszahlengenerator, der im FIPS 186-2-Standard angegeben ist.
Windows 8: Ab Windows 8 unterstützt der RNG-Algorithmus FIPS 186-3. Schlüssel, die kleiner oder gleich 1024 Bit sind, entsprechen FIPS 186-2 und Schlüssel größer als 1024 zu FIPS 186-3.
BCRYPT_RNG_DUAL_EC_ALGORITHM
"DUALECRNG"
Der Algorithmus für den Zufallszahlengenerator mit dualer elliptischer Kurve.
Standard: SP800-90.
Windows 8: Ab Windows 8 unterstützt der EC RNG-Algorithmus FIPS 186-3. Schlüssel, die kleiner oder gleich 1024 Bit sind, entsprechen FIPS 186-2 und Schlüssel größer als 1024 zu FIPS 186-3.
Windows 10: Ab Windows 10 wurde der Algorithmus für den Zufallszahlengenerator für die doppelte elliptische Kurve entfernt. Bestehende Verwendungen dieses Algorithmus werden weiterhin funktionieren; Der Zufallszahlengenerator basiert jedoch auf dem AES-Zählermodus, der im NIST SP 800-90-Standard angegeben ist. Neuer Code sollte BCRYPT_RNG_ALGORITHM verwenden, und es wird empfohlen, vorhandenen Code zu ändern, um BCRYPT_RNG_ALGORITHM zu verwenden.
BCRYPT_RNG_FIPS186_DSA_ALGORITHM
"FIPS186DSARNG"
Der Algorithmus für den Zufallszahlengenerator, der für DSA (Digital Signature Algorithm) geeignet ist.
Standard: FIPS 186-2.
Windows 8: Die Unterstützung für FIPS 186-3 beginnt.
BCRYPT_RSA_ALGORITHM
"RSA"
Der RSA-Algorithmus für öffentliche Schlüssel.
Standard: PKCS #1 v1.5 und v2.0.
BCRYPT_RSA_SIGN_ALGORITHM
"RSA_SIGN"
Der RSA-Signaturalgorithmus. Dieser Algorithmus wird derzeit nicht unterstützt. Sie können den BCRYPT_RSA_ALGORITHM-Algorithmus verwenden, um RSA-Signaturvorgänge auszuführen.
Standard: PKCS #1 v1.5 und v2.0.
BCRYPT_SHA1_ALGORITHM
"SHA1"
Der 160-Bit-Sichere Hashalgorithmus.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA256_ALGORITHM
"SHA256"
Der 256-Bit-Sichere Hashalgorithmus.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA384_ALGORITHM
"SHA384"
Der 384-Bit-Sichere Hashalgorithmus.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA512_ALGORITHM
"SHA512"
Der sichere 512-Bit-Hashalgorithmus.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SP800108_CTR_HMAC_ALGORITHM
L"SP800_108_CTR_HMAC"
Zählermodus, HMAC-Schlüsselableitungsfunktionsalgorithmus Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_SP80056A_CONCAT_ALGORITHM
L"SP800_56A_CONCAT"
Schlüsselableitungsfunktionsalgorithmus SP800-56A. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_PBKDF2_ALGORITHM
L"PBKDF2"
Kennwortbasierte Schlüsselableitungsfunktion 2 (PBKDF2)-Algorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_ECDSA_ALGORITHM
"ECDSA"
Generischer Digitaler Signaturalgorithmus für die Primelliliptikkurve (weitere Informationen finden Sie unter Hinweise ).
Standard: ANSI X9.62.
BCRYPT_ECDH_ALGORITHM
"ECDH"
Generische primär elliptische Kurve Diffie-Hellman Schlüsselaustauschalgorithmus (weitere Informationen finden Sie unter Hinweise ).
Standard: SP800-56A.
BCRYPT_XTS_AES_ALGORITHM
"XTS-AES"
Der erweiterte Verschlüsselungsstandard für symmetrische Verschlüsselungsalgorithmus im XTS-Modus.
Standard: SP-800-38E, IEEE Std 1619-2007.
Windows 10: Die Unterstützung für diesen Algorithmus beginnt.

Bemerkungen

Um BCRYPT_ECDSA_ALGORITM oder BCRYPT_ECDH_ALGORITHM zu verwenden, rufen Sie BCryptOpenAlgorithmProvider mit BCRYPT_ECDSA_ALGORITHM oder BCRYPT_ECDH_ALGORITHM als pszAlgId auf. Verwenden Sie dann BCryptSetProperty , um die BCRYPT_ECC_CURVE_NAME-Eigenschaft auf einen benannten Algorithmus festzulegen, der in CNG Named Curves aufgeführt ist.

Um benutzerdefinierte elliptische Kurvenparameter direkt bereitzustellen, verwenden Sie BCryptSetProperty , um die eigenschaft BCRYPT_ECC_PARAMETERS festzulegen. Laden Sie das Windows 10 Cryptographic Provider Developer Kit (CPDK) herunter, um weitere Informationen zu erhalten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 [nur Desktop-Apps]
Header
Bcrypt.h

Weitere Informationen

BCryptOpenAlgorithmProvider

NCryptCreatePersistedKey