Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
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 |