Condividi tramite


Identificatori di algoritmo CNG

Gli identificatori seguenti vengono usati per identificare gli algoritmi di crittografia standard in varie funzioni e strutture CNG, ad esempio la struttura CRYPT_INTERFACE_REG . I provider di terze parti possono avere algoritmi aggiuntivi supportati.

Constant/value Description
BCRYPT_3DES_ALGORITHM
L"3DES"
Algoritmo di crittografia simmetrica standard per la crittografia dei dati triplo.
Standard: SP800-67, SP800-38A
BCRYPT_3DES_112_ALGORITHM
L"3DES_112"
Algoritmo di crittografia simmetrica standard di crittografia a 112 bit a 112 bit.
Standard: SP800-67, SP800-38A
BCRYPT_AES_ALGORITHM
L"AES"
Algoritmo di crittografia simmetrica AES (Advanced Encryption Standard).
Standard: FIPS 197
BCRYPT_AES_CMAC_ALGORITHM
L"AES-CMAC"
Algoritmo di crittografia simmetrica CMAC (Advanced Encryption Standard).
Standard: SP 800-38B
Nota: Questo algoritmo è supportato a partire da Windows 8.
BCRYPT_AES_GMAC_ALGORITHM
L"AES-GMAC"
Algoritmo di crittografia simmetrica GMAC (Advanced Encryption Standard) Galois.
Standard: SP800-38D
Nota: Questo algoritmo è supportato a partire da Windows Vista con SP1.
BCRYPT_CAPI_KDF_ALGORITHM
L"CAPI_KDF"
Algoritmo della funzione di derivazione della chiave CRYPTO API (CAPI). Usato dalle funzioni BCryptKeyDerivation e NCryptKeyDerivation .
BCRYPT_CHACHA20_POLY1305_ALGORITHM
L"CHACHA20_POLY1305"
Algoritmo ChaCha20-Poly1305 AEAD.
Standard: RFC 8439
Nota: Il supporto per questo algoritmo inizia con Windows 10.
BCRYPT_CSHAKE128_ALGORITHM
L"CSHAKE128"
Sha3 derivato XOF personalizzabile con forza a 128 bit.
Standard: SP800-185.
Nota: Il supporto per questo algoritmo inizia con Windows 11 versione 24H2.
BCRYPT_CSHAKE256_ALGORITHM
L"CSHAKE256"
Sha3 deriva XOF personalizzabile con forza a 256 bit.
Standard: SP800-185.
Nota: Il supporto per questo algoritmo inizia con Windows 11 versione 24H2.
BCRYPT_DES_ALGORITHM
L"DES"
Algoritmo di crittografia simmetrica standard di crittografia dei dati.
Standard: FIPS 46-3, FIPS 81
BCRYPT_DESX_ALGORITHM
L"DESX"
Algoritmo di crittografia simmetrica standard per la crittografia dei dati estesa.
Standard: Nessuno
BCRYPT_DH_ALGORITHM
L"DH"
Algoritmo di scambio di chiavi Diffie-Hellman.
Standard: PKCS #3
BCRYPT_DSA_ALGORITHM
L"DSA"
Algoritmo di firma digitale.
Standard: FIPS 186-2
Nota: A partire da Windows 8, questo algoritmo supporta FIPS 186-3. Le chiavi minori o uguali a 1024 bit rispettano FIPS 186-2 e le chiavi maggiori di 1024 a FIPS 186-3.
BCRYPT_ECDH_ALGORITHM
L"ECDH"
Curva ellittica generica Diffie-Hellman algoritmo di scambio delle chiavi (vedere la sezione Osservazioni per altre informazioni).
Norma: SP800-56A.
BCRYPT_ECDSA_ALGORITHM
L"ECDSA"
Algoritmo generico di firma digitale a curva primi ellittica (vedere la sezione Osservazioni per altre informazioni).
Standard: ANSI X9.62.
BCRYPT_ECDH_P256_ALGORITHM
L"ECDH_P256"
Curva ellittica a 256 bit a 256 bit Diffie-Hellman algoritmo di scambio di chiavi.
Standard: SP800-56A
BCRYPT_ECDH_P384_ALGORITHM
L"ECDH_P384"
Curva ellittica a 384 bit primo Diffie-Hellman algoritmo di scambio delle chiavi.
Standard: SP800-56A
BCRYPT_ECDH_P521_ALGORITHM
L"ECDH_P521"
Curva ellittica a 521 bit a 521 bit Diffie-Hellman algoritmo di scambio di chiavi.
Standard: SP800-56A
BCRYPT_ECDSA_P256_ALGORITHM
L"ECDSA_P256"
Algoritmo di firma digitale a curva digitale a 256 bit primo (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_ECDSA_P384_ALGORITHM
L"ECDSA_P384"
Algoritmo di firma digitale a curva digitale a 384 bit primo (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_ECDSA_P521_ALGORITHM
L"ECDSA_P521"
Algoritmo di firma digitale a curva digitale a 521 bit primo (FIPS 186-2).
Standard: FIPS 186-2, X9.62
BCRYPT_HKDF_ALGORITHM
L"HKDF"
Funzione di derivazione della chiave Extract-and-Expand basata su HMAC.
Standard: RFC 5869
Nota: Il supporto per questo algoritmo inizia con Windows 10.
BCRYPT_KMAC128_ALGORITHM
L"KMAC128"
Codice di autenticazione del messaggio keccak derivato da SHA3 basato su CSHAKE128.
Standard: SP800-185.
Nota: Il supporto per questo algoritmo inizia con Windows 11 versione 24H2.
BCRYPT_KMAC256_ALGORITHM
L"KMAC256"
Codice di autenticazione del messaggio keccak derivato da SHA3 basato su CSHAKE256.
Standard: SP800-185.
Nota: Il supporto per questo algoritmo inizia con Windows 11 versione 24H2.
BCRYPT_LMS_ALGORITHM
L"LMS"
Algoritmo Leighton-Micali Hash-Based Signature. Standard: RFC 8554.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_MD2_ALGORITHM
L"MD2"
Algoritmo hash MD2.
Standard: RFC 1319
BCRYPT_MD4_ALGORITHM
L"MD4"
Algoritmo hash MD4.
Standard: RFC 1320
BCRYPT_MD5_ALGORITHM
L"MD5"
Algoritmo hash MD5.
Standard: RFC 1321
BCRYPT_MLDSA_ALGORITHM
L"ML-DSA"
Module-Lattice-Based Digital Signature Algorithm (ML-DSA).
Standard: FIPS 204.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_MLKEM_ALGORITHM
L"ML-KEM"
Algoritmo Module-Lattice-Based Key Encapsulation Mechanism (ML-KEM).
Standard: FIPS 203.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_RC2_ALGORITHM
L"RC2"
Algoritmo di crittografia simmetrica RC2.
Standard: RFC 2268
BCRYPT_RC4_ALGORITHM
L"RC4"
Algoritmo di crittografia simmetrica RC4.
Standard: vari
BCRYPT_RNG_ALGORITHM
L"RNG"
Algoritmo generatore di numeri casuali.
Standard: FIPS 186-2, FIPS 140-2, NIST SP 800-90
Nota: A partire da Windows Vista con SP1 e Windows Server 2008, il generatore di numeri casuali si basa sulla modalità contatore AES specificata nello standard NIST SP 800-90.
Windows Vista: Il generatore di numeri casuali è basato sul generatore di numeri casuali basato su hash specificato nello standard FIPS 186-2.
Nota: A partire da Windows 8, l'algoritmo RNG supporta FIPS 186-3. Le chiavi minori o uguali a 1024 bit rispettano FIPS 186-2 e le chiavi maggiori di 1024 a FIPS 186-3.
BCRYPT_RNG_DUAL_EC_ALGORITHM
L"DUALECRNG"
Algoritmo generatore a numeri casuali a curva ellittica doppia.
Standard: SP800-90.
Windows 8: A partire da Windows 8, l'algoritmo EC RNG supporta FIPS 186-3. Le chiavi minori o uguali a 1024 bit rispettano FIPS 186-2 e le chiavi maggiori di 1024 a FIPS 186-3.
Windows 10: A partire da Windows 10, l'algoritmo generatore di numeri casuali a curva ellittica doppia è stato rimosso. Gli usi esistenti di questo algoritmo continueranno a funzionare; Tuttavia, il generatore di numeri casuali si basa sulla modalità contatore AES specificata nello standard NIST SP 800-90. Il nuovo codice deve usare BCRYPT_RNG_ALGORITHM ed è consigliabile modificare il codice esistente per usare BCRYPT_RNG_ALGORITHM.
BCRYPT_RNG_FIPS186_DSA_ALGORITHM
L"FIPS186DSARNG"
Algoritmo generatore di numeri casuali adatto per DSA (Digital Signature Algorithm).
Norma: FIPS 186-2.
Windows 8: Inizia il supporto per FIPS 186-3.
BCRYPT_RSA_ALGORITHM
L"RSA"
Algoritmo di chiave pubblica RSA.
Standard: PKCS #1 v1.5 e v2.0.
BCRYPT_RSA_SIGN_ALGORITHM
L"RSA_SIGN"
Algoritmo di firma RSA. Questo algoritmo non è attualmente supportato. È possibile usare l'algoritmo BCRYPT_RSA_ALGORITHM per eseguire operazioni di firma RSA.
Standard: PKCS #1 v1.5 e v2.0.
BCRYPT_SHA1_ALGORITHM
L"SHA1"
Algoritmo hash sicuro a 160 bit.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA256_ALGORITHM
L"SHA256"
Algoritmo hash sicuro a 256 bit.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA384_ALGORITHM
L"SHA384"
Algoritmo hash sicuro a 384 bit.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA512_ALGORITHM
L"SHA512"
Algoritmo hash sicuro a 512 bit.
Standard: FIPS 180-2, FIPS 198.
BCRYPT_SHA3_256_ALGORITHM
L"SHA3-256"
Algoritmo hash sicuro SHA3 a 256 bit.
Standard: FIPS 202.
Windows 11, versione 24H2: Viene avviato il supporto per questo algoritmo.
BCRYPT_SHA3_384_ALGORITHM
L"SHA3-384"
Algoritmo hash sicuro SHA3 a 384 bit.
Standard: FIPS 202.
Windows 11, versione 24H2: Viene avviato il supporto per questo algoritmo.
BCRYPT_SHA3_512_ALGORITHM
L"SHA3-512"
Algoritmo hash sicuro SHA3 a 512 bit.
Standard: FIPS 202.
Windows 11, versione 24H2: Viene avviato il supporto per questo algoritmo.
BCRYPT_SHAKE128_ALGORITHM
L"SHAKE128"
Sha3 XOF con forza a 128 bit.
Standard: FIPS 202.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_SHAKE256_ALGORITHM
L"SHAKE256"
Sha3 XOF con potenza a 256 bit.
Standard: FIPS 202.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_SLHDSA_ALGORITHM
L"SLH-DSA"
Algoritmo di firma digitale basato su hash senza stato (SLH-DSA).
Standard: FIPS 205.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_SP800108_CTR_HMAC_ALGORITHM
L"SP800_108_CTR_HMAC"
Modalità contatore, algoritmo della funzione di derivazione della chiave HMAC (Hash-Based Message Authentication Code). Usato dalle funzioni BCryptKeyDerivation e NCryptKeyDerivation .
BCRYPT_SP80056A_CONCAT_ALGORITHM
L"SP800_56A_CONCAT"
Algoritmo della funzione di derivazione della chiave SP800-56A. Usato dalle funzioni BCryptKeyDerivation e NCryptKeyDerivation .
BCRYPT_PBKDF2_ALGORITHM
L"PBKDF2"
Algoritmo di derivazione della chiave basata su password 2 (PBKDF2). Usato dalle funzioni BCryptKeyDerivation e NCryptKeyDerivation .
BCRYPT_XMSS_ALGORITHM
L"XMSS"
Algoritmo di firma con stato XMSS (eXtended Merkle Signature Scheme). XMSS Standard: RFC 8391.

Nota: Questo identificatore fa parte di un prodotto in versione preliminare che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui. L'identificatore è disponibile nelle versioni non definitive di Windows Insider Preview.
BCRYPT_XTS_AES_ALGORITHM
L"XTS-AES"
Algoritmo di crittografia simmetrica AES (Advanced Encryption Standard) in modalità XTS.
Standard: SP-800-38E, IEEE Std 1619-2007.
Windows 10: Viene avviato il supporto per questo algoritmo.

Remarks

Per usare BCRYPT_ECDSA_ALGORITHM o BCRYPT_ECDH_ALGORITHM, chiamare BCryptOpenAlgorithmProvider con BCRYPT_ECDSA_ALGORITHM o BCRYPT_ECDH_ALGORITHM come pszAlgId. Usare quindi BCryptSetProperty per impostare la proprietà BCRYPT_ECC_CURVE_NAME su un algoritmo denominato elencato in Curve denominate CNG.

Per fornire direttamente parametri di curva ellittica definiti dall'utente, usare BCryptSetProperty per impostare la proprietà BCRYPT_ECC_PARAMETERS . Scaricare Windows 10 Cryptographic Provider Developer Kit (CPDK) per altre informazioni.

Requirements

Requirement Value
Client minimo supportato
Windows Vista [solo app desktop]
Server minimo supportato
Windows Server 2008 [solo app desktop]
Header
Bcrypt.h

BCryptOpenAlgorithmProvider

NCryptCreatePersistedKey

Identificatori di proprietà CNG

BCryptSetProperty