Condividi tramite


ALG_ID

Il tipo di dati ALG_ID specifica un identificatore di 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 di 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 configurazione personalizzati per le specifiche delle chiavi 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 handle di 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 di chiavi temporanee.
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 cryptography: Next Generation.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECDH_EPHEM 0x0000ae06 Curva ellittica temporaneo Diffie-Hellman algoritmo di scambio di chiavi. Nota: Questo algoritmo è supportato solo tramite l'API cryptography: Next Generation.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECDSA 0x00002203 Algoritmo di firma digitale a curva ellittica. Nota: Questo algoritmo è supportato solo tramite l'API cryptography: Next Generation.
Windows Server 2003 e Windows XP: Questo algoritmo non è supportato.
CALG_ECMQV 0x0000a001 Algoritmo di scambio chiavi MqV (Elliptic curve Menezes, Qu e Vanstone). Questo algoritmo non è supportato.
CALG_HASH_REPLACE_OWF 0x0000800b Algoritmo di hashing delle funzioni unidirezionale.
CALG_HUGHES_MD5 0x0000a003 Algoritmo hash 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 di 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 hash MD4.
CALG_MD5 0x00008003 Algoritmo 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 tramite 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 tramite le funzioni CNG.
CALG_OID_INFO_PQ 0xFFFFFFFD Algoritmi di crittografia post-quantistici.
CALG_OID_INFO_PQ_T 0xFFFFFFFC Algoritmi compositi post-quantistici e tradizionali.
CALG_PCT1_MASTER 0x00004c04 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato 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 di 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 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_SCHANNEL_MAC_KEY 0x00004c03 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_SCHANNEL_MASTER_HASH 0x00004c02 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_SEAL 0x00006802 Algoritmo di crittografia SEAL. Questo algoritmo non è supportato.
CALG_SHA 0x00008004 Algoritmo 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 AES Cryptographic Provider (Prototype).
Windows XP con SP2, Windows XP con SP1 e Windows XP: Questo algoritmo non è supportato.
CALG_SHA_384 0x0000800d Algoritmo hash SHA a 384 bit. Questo algoritmo è supportato da Microsoft Enhanced RSA e AES Cryptographic Provider. Windows XP con SP3: Questo algoritmo è supportato da Microsoft Enhanced RSA e AES Cryptographic Provider (Prototype).
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 AES Cryptographic Provider.
Windows XP con SP3: Questo algoritmo è supportato da Microsoft Enhanced RSA e AES Cryptographic Provider (Prototype).
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 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_SSL3_MASTER 0x00004c01 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_SSL3_SHAMD5 0x00008008 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_TEK 0x0000660b TEK (FORTEZZA). Questo algoritmo non è supportato.
CALG_TLS1_MASTER 0x00004c06 Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato dalle applicazioni.
CALG_TLS1PRF 0x0000800a Utilizzato dal sistema operativo Schannel.dll. Questo ALG_ID non deve essere usato 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, le ALG_IDs usate per le specifiche delle chiavi AT_KEYEXCHANGE e AT_SIGNATURE sono le 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

Vedere anche

Funzioni di crittografia

CRYPT_ALGORITHM_IDENTIFIER

CryptFindOIDInfo