Freigeben über


CNG-Algorithmus-Pseudohandles

Ab Windows 10 stellt CNG vordefinierte Algorithmushandles für viele Algorithmen bereit. Sie können diese Handles in jeder Situation verwenden, in der ein Algorithmushandle erforderlich ist.

Algorithmen für Hash- und Nachrichtenauthentifizierungscode (MAC)

Konstante Beschreibung
BCRYPT_MD2_ALG_HANDLE Ein Handle für den MD2-Hashalgorithmus. Norm: RFC 1319.
BCRYPT_MD4_ALG_HANDLE Ein Handle für den MD4-Hashalgorithmus. Norm: RFC 1320.
BCRYPT_MD5_ALG_HANDLE Ein Handle für den MD5-Hashalgorithmus. Norm: RFC 1321.
BCRYPT_SHA1_ALG_HANDLE Ein Handle für den 160-Bit-Algorithmus für sicheres Hashing. Norm: FIPS 180-2, FIPS 198.
BCRYPT_SHA256_ALG_HANDLE Ein Handle für den 256-Bit-Algorithmus für sicheres Hashing. Norm: FIPS 180-2, FIPS 198.
BCRYPT_SHA384_ALG_HANDLE Ein Handle für den 384-Bit-Algorithmus für sicheres Hashing. Norm: FIPS 180-2, FIPS 198.
BCRYPT_SHA512_ALG_HANDLE Ein Handle für den 512-Bit-Algorithmus für sicheren Hash. Norm: FIPS 180-2, FIPS 198.
BCRYPT_SHA3_256_ALG_HANDLE Ein Handle für den SHA3 256-Bit-Algorithmus für sicheren Hash. Standard: FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_SHA3_384_ALG_HANDLE Ein Handle für den SHA3 384-Bit-Algorithmus für sicheren Hash. Standard: FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_SHA3_512_ALG_HANDLE Ein Handle für den SHA3 512-Bit-Algorithmus für sichere Hashalgorithmus. Standard: FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_HMAC_MD2_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des MD2-Hashalgorithmus. Norm: RFC 2104, RFC 1319.
BCRYPT_HMAC_MD4_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des MD4-Hashalgorithmus. Norm: RFC 2104, RFC 1320.
BCRYPT_HMAC_MD5_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des MD4-Hashalgorithmus. Norm: RFC 2104, RFC 1321.
BCRYPT_HMAC_SHA1_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des 160-Bit-Algorithmus für sicheres Hashen. Norm: RFC 2014, FIPS 180-2, FIPS 198.
BCRYPT_HMAC_SHA256_ALG_HANDLE Ein Handle für den hashbasierten Nachrichtenauthentifizierungscode mithilfe des 256-Bit-Algorithmus für sicheres Hashen. Norm: RFC 2014, FIPS 180-2, FIPS 198.
BCRYPT_HMAC_SHA384_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des 384-Bit-Algorithmus für sicheres Hashen. Norm: RFC 2014, FIPS 180-2, FIPS 198.
BCRYPT_HMAC_SHA512_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des 512-Bit-Algorithmus für sicheres Hashen. Norm: RFC 2014, FIPS 180-2, FIPS 198.
BCRYPT_HMAC_SHA3_256_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des SHA3 256-Bit-Algorithmus für sicheres Hashing. Standard: RFC 2014, FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_HMAC_SHA3_384_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des SHA3 384-Bit-Algorithmus für sicheres Hashing. Standard: RFC 2014, FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_HMAC_SHA3_512_ALG_HANDLE Ein Handle für den Hash-basierten Nachrichtenauthentifizierungscode mithilfe des SHA3 512-Bit-Algorithmus für sicheres Hashen. Standard: RFC 2014, FIPS 202.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_KMAC128_ALG_HANDLE Ein Handle für den sha3 abgeleiteten Keccak-Nachrichtenauthentifizierungscode (KMAC), der auf CSHAKE128 basiert. Standard: SP800-185.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_KMAC256_ALG_HANDLE Ein Handle für den sha3 abgeleiteten Keccak-Nachrichtenauthentifizierungscode (KMAC), der auf CSHAKE256 basiert. Standard: SP800-185.
Windows 11, Version 24H2: Die Unterstützung für diesen Algorithmus beginnt.

Algorithmen für digitale PQ-Signaturen

Hinweis

Die PQDSA-Handles in diesem Abschnitt beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Veröffentlichung erheblich geändert werden kann. Microsoft gibt keine Garantie, weder ausdrücklich noch impliziert, hinsichtlich der hier bereitgestellten Informationen. Das in diesem Abschnitt beschriebene Feature ist in Vorabversionen der Windows Insider Preview verfügbar.

Konstante Beschreibung
BCRYPT_LMS_ALG_HANDLE Ein Handle zum Leighton-Micali Hash-Based Signaturalgorithmus (LMS). Standard: RFC 8554.
BCRYPT_MLDSA_ALG_HANDLE Ein Handle für den Modul-Lattice-Based Digitalen Signaturalgorithmus (ML-DSA). Standard: FIPS 204.
BCRYPT_SLHDSA_ALG_HANDLE Ein Handle für den stateless Hash-basierten Digitalen Signaturalgorithmus (SLH-DSA). Standard: FIPS 205.
BCRYPT_XMSS_ALG_HANDLE Ein Handle zum eXtended Merkle Signature Scheme (XMSS)-zustandsbasierten Algorithmus. Standard: RFC 8391.

Streamchiffrealgorithmen

Konstante Beschreibung
BCRYPT_RC4_ALG_HANDLE Ein Handle für den RC4-Datenstromchiffrealgorithmus. Standard: Verschiedene.

Algorithmen des Zufallszahlengenerators

Konstante Beschreibung
BCRYPT_RNG_ALG_HANDLE Ein Handle für den Zufallszahlengeneratoralgorithmus.Hinweis Ab Windows Vista mit SP1 und Windows Server 2008 basiert der Zufallszahlengenerator auf dem im NIST SP 800-90-Standard angegebenen AES-Leistungsmodus.
Windows Vista: Der Zufallszahlengenerator basiert auf dem hashbasierten Zufallszahlengenerator, der im FIPS 186-2-Standard angegeben ist.
Windows 8: Der RNG-Algorithmus unterstützt FIPS 186-3. Tasten kleiner oder gleich 1024 Bit entsprechen FIPS 186-2 und Schlüsseln größer als 1024 bis FIPS 186-3.
BCRYPT_RNG_FIPS186_DSA_ALG_HANDLE Ein Handle für den Zufallszahlengeneratoralgorithmus, der für DSA (Digital Signature Algorithm) geeignet ist. Norm: FIPS 186-2.

Key-Ableitungsfunktion (KDF)-Algorithmen

Konstante Beschreibung
BCRYPT_CAPI_KDF_ALG_HANDLE Ein Handle zum Krypto-API(CAPI)-Schlüsselableitungsfunktionsalgorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_HKDF_ALG_HANDLE Ein Handle zur HMAC-basierten Extract-and-Expand-Schlüsselableitungsfunktion. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
Windows 10: Die Unterstützung für diesen Algorithmus beginnt.
BCRYPT_PBKDF2_ALG_HANDLE Ein Handle zum Kennwortbasierten Schlüsselableitungsfunktion 2 (PBKDF2)-Algorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_SP800108_CTR_HMAC_ALG_HANDLE Ein Handle für den Leistungsmodus, Hash-basierte Nachrichtenauthentifizierungscode (HMAC)-Schlüsselableitungsfunktionsalgorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.
BCRYPT_SP80056A_CONCAT_ALG_HANDLE Ein Handle zum SP800-56A-Schlüsselableitungsfunktionsalgorithmus. Wird von den Funktionen BCryptKeyDerivation und NCryptKeyDerivation verwendet.

Schlüsselkapselungsmechanismus (KEM)-Algorithmen

Hinweis

Die ML-KEM Handles in diesem Abschnitt beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Veröffentlichung erheblich geändert werden kann. Microsoft gibt keine Garantie, weder ausdrücklich noch impliziert, hinsichtlich der hier bereitgestellten Informationen. Das in diesem Abschnitt beschriebene Feature ist in Vorabversionen der Windows Insider Preview verfügbar.

Konstante Beschreibung
BCRYPT_MLKEM_ALG_HANDLE Ein Handle für den Modul-Lattice-Based Key-Kapselungsmechanismus (ML-KEM) Algorithmus. Standard: FIPS 203.

Asymmetrische Algorithmen

Konstante Beschreibung
BCRYPT_DH_ALG_HANDLE Ein Handle für den Diffie-Hellman Schlüsselaustauschalgorithmus. Norm: PKCS #3.
BCRYPT_DSA_ALG_HANDLE Ein Handle für den Digitalen Signaturalgorithmus (Digital Signature Algorithm, DSA). Norm: FIPS 186-2.
Hinweis: Ab Windows 8 unterstützt dieser Algorithmus FIPS 186-3. Tasten kleiner oder gleich 1024 Bit entsprechen FIPS 186-2 und Schlüsseln größer als 1024 bis FIPS 186-3.
BCRYPT_ECDH_ALG_HANDLE Ein Handle zur generischen elliptischen Kurve Diffie-Hellman Schlüsselaustauschalgorithmus. Norm: SP800-56A.
BCRYPT_ECDSA_ALG_HANDLE Ein Handle zum generischen Algorithmus für die digitale Kurve der prime elliptischen Kurve. Standard: ANSI X9.62.
BCRYPT_ECDH_P256_ALG_HANDLE Ein Handle zur 256-Bit-Prime elliptischen Kurve Diffie-Hellman Schlüsselaustauschalgorithmus. Norm: SP800-56A.
BCRYPT_ECDH_P384_ALG_HANDLE Ein Handle zur 384-Bit-Elliliptikkurve Diffie-Hellman Schlüsselaustauschalgorithmus. Norm: SP800-56A.
BCRYPT_ECDH_P521_ALG_HANDLE Ein Handle zur 521-Bit-Elliliptikkurve Diffie-Hellman Schlüsselaustauschalgorithmus. Norm: SP800-56A.
BCRYPT_ECDSA_P256_ALG_HANDLE Ein Handle für den Digitalen Signaturalgorithmus der 256-Bit-Kurve (FIPS 186-2). Norm: FIPS 186-2, X9.62.
BCRYPT_ECDSA_P384_ALG_HANDLE Ein Handle zum 384-Bit-Prime elliptic Curve Digital Signature Algorithmus (FIPS 186-2). Norm: FIPS 186-2, X9.62.
BCRYPT_ECDSA_P521_ALG_HANDLE Ein Handle für den Digitalen Signaturalgorithmus der 521-Bit-Kurve (FIPS 186-2). Norm: FIPS 186-2, X9.62.
BCRYPT_RSA_ALG_HANDLE Ein Handle für den RSA Public Key-Algorithmus. Standard: PKCS #1 v1.5 und v2.0.
BCRYPT_RSA_SIGN_ALG_HANDLE Ein Handle für den RSA-Signaturalgorithmus. Dieser Algorithmus wird derzeit nicht unterstützt. Sie können den BCRYPT_RSA_ALG_HANDLE Algorithmus verwenden, um RSA-Signaturvorgänge auszuführen. Standard: PKCS #1 v1.5 und v2.0.

Blockchiffre- und Verschlüsselungsbasierte Nachrichtenauthentifizierungscodealgorithmen

Konstante Beschreibung
BCRYPT_3DES_CBC_ALG_HANDLE Ein Handle für den dreifachen Datenverschlüsselungsstandardalgorithmus mithilfe des Verschlüsselungsblockkettenmodus (CBC). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_ECB_ALG_HANDLE Ein Handle für den dreifachen Datenverschlüsselungsstandardalgorithmus mit dem elektronischen Cookbook-Modus (ECB). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_CFB_ALG_HANDLE Ein Handle für den dreifachen Datenverschlüsselungsstandardalgorithmus mithilfe des Cipher Feedback Mode (CFB). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_112_CBC_ALG_HANDLE Ein Handle für den 112-Bit-Dreifachdatenverschlüsselungsstandardalgorithmus mithilfe des Verschlüsselungsblockverkettungsmodus (CBC). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_112_CBC_ALG_HANDLE Ein Handle für den 112-Bit-Dreifachdatenverschlüsselungsstandardalgorithmus mithilfe des Verschlüsselungsblockverkettungsmodus (CBC). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_112_ECB_ALG_HANDLE Ein Handle für den 112-Bit-Dreifachdatenverschlüsselungsstandardalgorithmus mit dem Elektronischen Cookbook-Modus (ECB). Norm: SP800-67, SP800-38A.
BCRYPT_3DES_112_CFB_ALG_HANDLE Ein Handle für den 112-Bit-Dreifachdatenverschlüsselungsstandardalgorithmus mit Chiffrefeedbackmodus (CFB). Norm: SP800-67, SP800-38A.
BCRYPT_AES_CMAC_ALG_HANDLE Ein Handle für den AES-Algorithmus (Advanced Encryption Standard) mit verschlüsselungsbasiertem Nachrichtenauthentifizierungscode (CMAC). Norm: SP800-38B.
BCRYPT_AES_CBC_ALG_HANDLE Ein Handle für den AES-Algorithmus (Advanced Encryption Standard) mithilfe des Verschlüsselungsblockkettenmodus (CBC). Norm: FIPS 197.
BCRYPT_AES_ECB_ALG_HANDLE Ein Handle für den AES-Algorithmus (Advanced Encryption Standard) mit dem Electronic Cookbook Mode (ECB). Norm: FIPS 197.
BCRYPT_AES_CFB_ALG_HANDLE Ein Handle für den Advanced Encryption Standard (AES)-Algorithmus mithilfe des Cipher Feedback Mode (CFB). Norm: FIPS 197.
BCRYPT_AES_CCM_ALG_HANDLE Ein Handle für den AES-Algorithmus (Advanced Encryption Standard) mit Counter mit CBC-MAC Modus (CCM). Norm: FIPS 197.
BCRYPT_AES_GCM_ALG_HANDLE Ein Handle für den AES-Algorithmus (Advanced Encryption Standard) mit galois Counter Mode (GCM). Norm: FIPS 197.
BCRYPT_DES_CBC_ALG_HANDLE Ein Handle für den Data Encryption Standard (DES)-Algorithmus mithilfe des Verschlüsselungsblockkettenmodus (GCM). Standard: FIPS 46-3, FIPS 81.
BCRYPT_DES_ECB_ALG_HANDLE Ein Handle für den Data Encryption Standard (DES)-Algorithmus mithilfe des electronic Cookbook Mode (ECB). Standard: FIPS 46-3, FIPS 81.
BCRYPT_DES_CFB_ALG_HANDLE Ein Handle für den Datenverschlüsselungsstandardalgorithmus (DATA Encryption Standard, DES) mithilfe des Cipher Feedback Mode (CFB). Standard: FIPS 46-3, FIPS 81.
BCRYPT_AES_CMAC_ALG_HANDLE Ein Handle für den symmetrischen Verschlüsselungsalgorithmus (Advanced Encryption Standard, AES)-basierte Nachrichtenauthentifizierungscode (CMAC). Norm: SP 800-38B.
BCRYPT_AES_GMAC_ALG_HANDLE Ein Handle für den symmetrischen Verschlüsselungsalgorithmus (Advanced Encryption Standard, AES) galois-Nachrichtenauthentifizierungscode (GMAC). Norm: SP800-38D.
BCRYPT_RC4_ALG_HANDLE Ein Handle für den RC4 symmetrischen Verschlüsselungsalgorithmus. Standard: Verschiedene.

Bemerkungen

Ab Windows 10 stellt CNG vordefinierte Algorithmushandles für viele Algorithmen bereit. Sie können diese Handles in jeder Situation verwenden, in der ein Algorithmushandle erforderlich ist. Allerdings schlägt jeder Aufruf von BCryptSetProperty fehl, da der Algorithmushandle freigegeben wird und nicht geändert werden kann. Darüber hinaus können diese Handles nicht im IRQL=DISPATCH Kernelmodus verwendet werden.

BCryptOpenAlgorithmProvider

NCryptCreatePersistedKey