ALG_ID

Il tipo di dati ALG_ID specifica un identificatore dell'algoritmo. I parametri di questo tipo di dati vengono passati alla maggior parte delle funzioni in CryptoAPI.

typedef unsigned int ALG_ID;

Nella tabella seguente sono elencati gli identificatori dell'algoritmo attualmente definiti. Gli autori di provider di servizi di crittografia personalizzati possono definire nuovi valori. Inoltre, le ALG_ID usate dai provider di servizi di rete personalizzati per le specifiche chiave AT_KEYEXCHANGE e AT_SIGNATURE dipendono dal provider. I mapping correnti seguono la tabella.

Identificatore Valore Descrizione
CALG_3DES 0x00006603 Algoritmo di crittografia Triple DES .
CALG_3DES_112 0x00006609 Crittografia DES a due chiavi con lunghezza effettiva della chiave pari a 112 bit.
CALG_AES 0x00006611 Advanced Encryption Standard (AES). Questo algoritmo è supportato dal provider di crittografia Microsoft AES.
CALG_AES_128 0x0000660e AES a 128 bit. Questo algoritmo è supportato dal provider di crittografia Microsoft AES.
CALG_AES_192 0x0000660f AES a 192 bit. Questo algoritmo è supportato dal provider di crittografia Microsoft AES.
CALG_AES_256 0x00006610 AES a 256 bit. Questo algoritmo è supportato dal provider di crittografia Microsoft AES.
CALG_AGREEDKEY_ANY 0x0000aa03 Identificatore temporaneo dell'algoritmo per gli handle delle chiavi Diffie-Hellman-concordate.
CALG_CYLINK_MEK 0x0000660c Algoritmo per creare una chiave DES a 40 bit con bit di parità e bit di chiave zero per rendere la lunghezza della chiave 64 bit. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_DES 0x00006601 Algoritmo di crittografia DES.
CALG_DESX 0x00006604 Algoritmo di crittografia DESX.
CALG_DH_EPHEM 0x0000aa02 Diffie-Hellman algoritmo di scambio delle chiavi temporaneo.
CALG_DH_SF 0x0000aa01 Diffie-Hellman archiviare e inoltrare l'algoritmo di scambio delle chiavi.
CALG_DSS_SIGN 0x00002200 Algoritmo di firma della chiave pubblica DSA.
CALG_ECDH 0x0000aa05 Curva ellittica Diffie-Hellman algoritmo di scambio delle chiavi. Nota: Questo algoritmo è supportato solo tramite l'API di crittografia: generazione successiva.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECDH_EPHEM 0x0000ae06 Algoritmo di scambio delle chiavi Diffie-Hellman algoritmo di scambio delle chiavi temporaneo. Nota: Questo algoritmo è supportato solo tramite l'API di crittografia: generazione successiva.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECDSA 0x00002203 Algoritmo di firma digitale curva ellittica. Nota: Questo algoritmo è supportato solo tramite l'API di crittografia: generazione successiva.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECMQV 0x0000a001 Algoritmo di scambio delle chiavi Elliptic curve Menezes, Qu e Vanstone (MQV). Questo algoritmo non è supportato.
CALG_HASH_REPLACE_OWF 0x0000800b Algoritmo di hashing delle funzioni unidirezionale.
CALG_HUGHES_MD5 0x0000a003 Algoritmo di hash di Hughes MD5.
CALG_HMAC 0x00008009 Algoritmo hash con chiave HMAC. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_KEA_KEYX 0x0000aa04 Algoritmo di scambio delle chiavi KEA (FORTEZZA). Questo algoritmo non è supportato.
CALG_MAC 0x00008005 Algoritmo hash con chiave MAC. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_MD2 0x00008001 Algoritmo di hash MD2. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_MD4 0x00008002 Algoritmo di hash MD4.
CALG_MD5 0x00008003 Algoritmo di hash MD5. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_NO_SIGN 0x00002000 Nessun algoritmo di firma.
CALG_OID_INFO_CNG_ONLY 0xffffffff L'algoritmo viene implementato solo in CNG. La macro, IS_SPECIAL_OID_INFO_ALGID, può essere usata per determinare se un algoritmo di crittografia è supportato solo usando le funzioni CNG.
CALG_OID_INFO_PARAMETERS 0xfffffffe L'algoritmo è definito nei parametri codificati. L'algoritmo è supportato solo tramite CNG. La macro, IS_SPECIAL_OID_INFO_ALGID, può essere usata per determinare se un algoritmo di crittografia è supportato solo usando le funzioni CNG.
CALG_PCT1_MASTER 0x00004c04 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_RC2 0x00006602 Algoritmo di crittografia a blocchi RC2. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_RC4 0x00006801 Algoritmo di crittografia del flusso RC4. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_RC5 0x0000660d Algoritmo di crittografia a blocchi RC5.
CALG_RSA_KEYX 0x0000a400 Algoritmo di scambio delle chiavi pubbliche RSA. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_RSA_SIGN 0x00002400 Algoritmo di firma della chiave pubblica RSA. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_SCHANNEL_ENC_KEY 0x00004c07 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_SCHANNEL_MAC_KEY 0x00004c03 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_SCHANNEL_MASTER_HASH 0x00004c02 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_SEAL 0x00006802 Algoritmo di crittografia SEAL. Questo algoritmo non è supportato.
CALG_SHA 0x00008004 Algoritmo di hash SHA. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_SHA1 0x00008004 Uguale a CALG_SHA. Questo algoritmo è supportato dal provider di crittografia di base Microsoft.
CALG_SHA_256 0x0000800c Algoritmo hash SHA a 256 bit. Questo algoritmo è supportato da Microsoft Enhanced RSA e AES Cryptographic Provider.. Windows XP con SP3: Questo algoritmo è supportato da Microsoft Enhanced RSA e dal provider di crittografia AES (Prototipo).
Windows XP con SP2, Windows XP con SP1 e Windows XP: Questo algoritmo non è supportato.
CALG_SHA_384 0x0000800d Algoritmo di hash SHA a 384 bit. Questo algoritmo è supportato da Microsoft Enhanced RSA e dal provider di crittografia AES. Windows XP con SP3: Questo algoritmo è supportato da Microsoft Enhanced RSA e dal provider di crittografia AES (Prototipo).
Windows XP con SP2, Windows XP con SP1 e Windows XP: Questo algoritmo non è supportato.
CALG_SHA_512 0x0000800e Algoritmo hash SHA a 512 bit. Questo algoritmo è supportato da Microsoft Enhanced RSA e dal provider di crittografia AES. Windows XP con SP3: Questo algoritmo è supportato da Microsoft Enhanced RSA e dal provider di crittografia AES (Prototipo).
Windows XP con SP2, Windows XP con SP1 e Windows XP: Questo algoritmo non è supportato.
CALG_SKIPJACK 0x0000660a Algoritmo di crittografia del blocco skipjack (FORTEZZA). Questo algoritmo non è supportato.
CALG_SSL2_MASTER 0x00004c05 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_SSL3_MASTER 0x00004c01 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_SSL3_SHAMD5 0x00008008 Usato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_TEK 0x0000660b TEK (FORTEZZA). Questo algoritmo non è supportato.
CALG_TLS1_MASTER 0x00004c06 Utilizzato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.
CALG_TLS1PRF 0x0000800a Utilizzato dal sistema operativo Schannel.dll. Questa ALG_ID non deve essere usata dalle applicazioni.

 

Per il provider di crittografia di base Microsoft, il provider di crittografia avanzata Microsoft e il provider di crittografia avanzata Microsoft, i ALG_IDs usati per le specifiche delle chiavi AT_KEYEXCHANGE e AT_SIGNATURE sono i seguenti:

  • CALG_RSA_KEYX viene usato per AT_KEYEXCHANGE.
  • CALG_RSA_SIGN viene usato per AT_SIGNATURE.

Per Microsoft Base DSS e Diffie-Hellman Cryptographic Provider, i ALG_IDs usati per le specifiche delle chiavi AT_KEYEXCHANGE e AT_SIGNATURE sono i seguenti:

  • CALG_DH_SF viene usato per AT_KEYEXCHANGE.
  • CALG_DSS_SIGN viene usato per AT_SIGNATURE.

Requisiti

Requisito Valore
Client minimo supportato
Windows XP [solo app desktop]
Server minimo supportato
Windows Server 2003 [solo app desktop]
Intestazione
Wincrypt.h

Vedi anche

Funzioni di crittografia

CRYPT_ALGORITHM_IDENTIFIER

CryptFindOIDInfo