Partilhar via


ALG_ID

O tipo de dados ALG_ID especifica um identificador de algoritmo. Os parâmetros desse tipo de dados são passados para a maioria das funções em CryptoAPI.

typedef unsigned int ALG_ID;

A tabela a seguir lista os identificadores de algoritmo que estão definidos no momento. Os autores de provedores de serviços criptográficos personalizados (CSPs) podem definir novos valores. Além disso, os ALG_ID usados por CSPs personalizados para as principais especificações AT_KEYEXCHANGE e AT_SIGNATURE dependem do provedor. Os mapeamentos atuais seguem a tabela.

Identificador Valor Descrição
CALG_3DES 0x00006603 Algoritmo de encriptação DES triplo.
CALG_3DES_112 0x00006609 Encriptação DES tripla de duas chaves com comprimento de chave efetivo igual a 112 bits.
CALG_AES 0x00006611 AES (Advanced Encryption Standard). Este algoritmo é suportado pelo Microsoft AES Cryptographic Provider.
CALG_AES_128 0x0000660e AES de 128 bits. Este algoritmo é suportado pelo Microsoft AES Cryptographic Provider.
CALG_AES_192 0x0000660f AES de 192 bits. Este algoritmo é suportado pelo Microsoft AES Cryptographic Provider.
CALG_AES_256 0x00006610 AES de 256 bits. Este algoritmo é suportado pelo Microsoft AES Cryptographic Provider.
CALG_AGREEDKEY_ANY 0x0000aa03 Identificador de algoritmo temporário para identificadores de chaves acordadas por Diffie-Hellman.
CALG_CYLINK_MEK 0x0000660c Um algoritmo para criar uma chave DES de 40 bits que tem bits de paridade e bits de chave zerados para tornar seu comprimento de chave de 64 bits. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_DES 0x00006601 Algoritmo de encriptação DES.
CALG_DESX 0x00006604 Algoritmo de encriptação DESX.
CALG_DH_EPHEM 0x0000aa02 Diffie-Hellman algoritmo efêmero de troca de chaves.
CALG_DH_SF 0x0000aa01 Diffie-Hellman armazenar e encaminhar algoritmo de troca de chaves.
CALG_DSS_SIGN 0x00002200 Algoritmo de assinatura de chave pública DSA.
CALG_ECDH 0x0000aa05 Curva elíptica Diffie-Hellman algoritmo de troca de chaves.
Observação: Este algoritmo é suportado apenas através da API de Criptografia: Next Generation.
Windows Server 2003 e Windows XP: Este algoritmo não é suportado.
CALG_ECDH_EPHEM 0x0000ae06 Curva elíptica efêmera Diffie-Hellman algoritmo de troca de chaves. Observação: Este algoritmo é suportado apenas através da API de Criptografia: Next Generation.
Windows Server 2003 e Windows XP: Este algoritmo não é suportado.
CALG_ECDSA 0x00002203 Algoritmo de assinatura digital de curva elíptica. Observação: Este algoritmo é suportado apenas através da API de Criptografia: Next Generation.
Windows Server 2003 e Windows XP: Este algoritmo não é suportado.
CALG_ECMQV 0x0000a001 Algoritmo de troca de chaves de curva elíptica Menezes, Qu e Vanstone (MQV). Este algoritmo não é suportado.
CALG_HASH_REPLACE_OWF 0x0000800b Algoritmo de hash de função unidirecional.
CALG_HUGHES_MD5 0x0000a003 Algoritmo de hash Hughes MD5.
CALG_HMAC 0x00008009 Algoritmo de hash com chave HMAC. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_KEA_KEYX 0x0000aa04 Algoritmo de troca de chaves KEA (FORTEZZA). Este algoritmo não é suportado.
CALG_MAC 0x00008005 Algoritmo de hash com chave MAC. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_MD2 0x00008001 Algoritmo de hash MD2. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_MD4 0x00008002 Algoritmo de hash MD4.
CALG_MD5 0x00008003 Algoritmo de hash MD5. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_NO_SIGN 0x00002000 Nenhum algoritmo de assinatura.
CALG_OID_INFO_CNG_ONLY 0xffffffff O algoritmo só é implementado em GNC. A macro, IS_SPECIAL_OID_INFO_ALGID, pode ser usada para determinar se um algoritmo de criptografia só é suportado usando as funções CNG.
CALG_OID_INFO_PARAMETERS 0xfffffffe O algoritmo é definido nos parâmetros codificados. O algoritmo só é suportado usando CNG. A macro, IS_SPECIAL_OID_INFO_ALGID, pode ser usada para determinar se um algoritmo de criptografia só é suportado usando as funções CNG.
CALG_OID_INFO_PQ 0xFFFFFFFD Algoritmos de criptografia pós-quântica.
CALG_OID_INFO_PQ_T 0xFFFFFFFC Algoritmos pós-quânticos e compostos tradicionais.
CALG_PCT1_MASTER 0x00004c04 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_RC2 0x00006602 Algoritmo de encriptação de bloco RC2. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_RC4 0x00006801 Algoritmo de encriptação de fluxo RC4. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_RC5 0x0000660d Algoritmo de encriptação de bloco RC5.
CALG_RSA_KEYX 0x0000a400 Algoritmo de troca de chaves públicas RSA. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_RSA_SIGN 0x00002400 Algoritmo de assinatura de chave pública RSA. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_SCHANNEL_ENC_KEY 0x00004c07 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_SCHANNEL_MAC_KEY 0x00004c03 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_SCHANNEL_MASTER_HASH 0x00004c02 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_SEAL 0x00006802 Algoritmo de encriptação SEAL. Este algoritmo não é suportado.
CALG_SHA 0x00008004 Algoritmo de hash SHA. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_SHA1 0x00008004 O mesmo que CALG_SHA. Este algoritmo é suportado pelo Microsoft Base Cryptographic Provider.
CALG_SHA_256 0x0000800c Algoritmo de hash SHA de 256 bits. Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider.
Windows XP com SP3: Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider (Prototype).
Windows XP com SP2, Windows XP com SP1 e Windows XP: Este algoritmo não é suportado.
CALG_SHA_384 0x0000800d Algoritmo de hash SHA de 384 bits. Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider. Windows XP com SP3: Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider (Prototype).
Windows XP com SP2, Windows XP com SP1 e Windows XP: Este algoritmo não é suportado.
CALG_SHA_512 0x0000800e Algoritmo de hash SHA de 512 bits. Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider.
Windows XP com SP3: Este algoritmo é suportado pelo Microsoft Enhanced RSA e AES Cryptographic Provider (Prototype).
Windows XP com SP2, Windows XP com SP1 e Windows XP: Este algoritmo não é suportado.
CALG_SKIPJACK 0x0000660a Algoritmo de encriptação de bloco Skipjack (FORTEZZA). Este algoritmo não é suportado.
CALG_SSL2_MASTER 0x00004c05 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_SSL3_MASTER 0x00004c01 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_SSL3_SHAMD5 0x00008008 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_TEK 0x0000660b TEK (FORTEZZA). Este algoritmo não é suportado.
CALG_TLS1_MASTER 0x00004c06 Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.
CALG_TLS1PRF 0x0000800a Utilizado pelo sistema de operações Schannel.dll. Este ALG_ID não deve ser usado por aplicativos.

Para o Microsoft Base Cryptographic Provider, o Microsoft Strong Cryptographic Provider e o Microsoft Enhanced Cryptographic Provider, os ALG_IDs usados para as especificações de chave AT_KEYEXCHANGE e AT_SIGNATURE são os seguintes:

  • CALG_RSA_KEYX é utilizado para AT_KEYEXCHANGE.
  • CALG_RSA_SIGN é utilizado para AT_SIGNATURE.

Para o Microsoft Base DSS e Diffie-Hellman Cryptographic Provider, os ALG_IDs usados para as especificações de chave AT_KEYEXCHANGE e AT_SIGNATURE são os seguintes:

  • CALG_DH_SF é utilizado para AT_KEYEXCHANGE.
  • CALG_DSS_SIGN é utilizado para AT_SIGNATURE.

Requerimentos

Requisito Valor
Cliente mínimo suportado Windows XP [apenas aplicações de ambiente de trabalho]
Servidor mínimo suportado Windows Server 2003 [apenas aplicações de ambiente de trabalho]
Cabeçalho Wincrypt.h

Ver também

Funções de criptografia

CRYPT_ALGORITHM_IDENTIFIER

CryptFindOIDInfo