Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 no CryptoAPI.
typedef unsigned int ALG_ID;
A tabela a seguir lista os identificadores de algoritmo definidos no momento. Autores de CSPs ( provedores de serviços criptográficos personalizados ) podem definir novos valores. Além disso, os ALG_ID usados por CSPs personalizados para as especificações de chave AT_KEYEXCHANGE e AT_SIGNATURE são dependentes do provedor. Os mapeamentos atuais seguem a tabela.
| Identificador | Valor | Descrição |
|---|---|---|
| CALG_3DES | 0x00006603 | Algoritmo de criptografia DES triplo . |
| CALG_3DES_112 | 0x00006609 | Criptografia DES tripla de duas chaves com comprimento de chave efetivo igual a 112 bits. |
| CALG_AES | 0x00006611 | AES (Advanced Encryption Standard). Esse algoritmo é compatível com o Provedor Criptográfico do Microsoft AES. |
| CALG_AES_128 | 0x0000660e | AES de 128 bits. Esse algoritmo é compatível com o Provedor Criptográfico do Microsoft AES. |
| CALG_AES_192 | 0x0000660f | AES de 192 bits. Esse algoritmo é compatível com o Provedor Criptográfico do Microsoft AES. |
| CALG_AES_256 | 0x00006610 | AES de 256 bits. Esse algoritmo é compatível com o Provedor Criptográfico do Microsoft AES. |
| 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 zero para tornar seu comprimento de chave 64 bits. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_DES | 0x00006601 | Algoritmo de criptografia DES. |
| CALG_DESX | 0x00006604 | Algoritmo de criptografia DESX. |
| CALG_DH_EPHEM | 0x0000aa02 | Diffie-Hellman algoritmo de troca de chaves efêmera. |
| 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. Nota: Esse algoritmo só tem suporte por meio da API de Criptografia: Próxima Geração. Windows Server 2003 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_ECDH_EPHEM | 0x0000ae06 | Curva efêmera elíptica Diffie-Hellman algoritmo de troca de chaves.
Nota: Esse algoritmo só tem suporte por meio da API de Criptografia: Próxima Geração. Windows Server 2003 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_ECDSA | 0x00002203 | Algoritmo de assinatura digital de curva elíptica.
Nota: Esse algoritmo só tem suporte por meio da API de Criptografia: Próxima Geração. Windows Server 2003 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_ECMQV | 0x0000a001 | Algoritmo de troca de chaves Menezes, Qu e Vanstone (MQV) da curva elíptica. Não há suporte para esse algoritmo. |
| 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. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_KEA_KEYX | 0x0000aa04 | Algoritmo de troca de chaves KEA (FORTEZZA). Não há suporte para esse algoritmo. |
| CALG_MAC | 0x00008005 | Algoritmo de hash com chave MAC. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_MD2 | 0x00008001 | Algoritmo de hash MD2. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_MD4 | 0x00008002 | Algoritmo de hash MD4. |
| CALG_MD5 | 0x00008003 | Algoritmo de hash MD5. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_NO_SIGN | 0x00002000 | Nenhum algoritmo de assinatura. |
| CALG_OID_INFO_CNG_ONLY | 0xffffffff | O algoritmo só é implementado em CNG. A macro, IS_SPECIAL_OID_INFO_ALGID, pode ser usada para determinar se um algoritmo de criptografia só tem suporte usando as funções CNG. |
| CALG_OID_INFO_PARAMETERS | 0xfffffffe | O algoritmo é definido nos parâmetros codificados. O algoritmo só tem suporte usando CNG. A macro, IS_SPECIAL_OID_INFO_ALGID, pode ser usada para determinar se um algoritmo de criptografia só tem suporte usando as funções CNG. |
| CALG_OID_INFO_PQ | 0xFFFFFFFD | Algoritmos de criptografia pós-quantum. |
| CALG_OID_INFO_PQ_T | 0xFFFFFFFC | Algoritmos compostos pós-quânticos e tradicionais. |
| CALG_PCT1_MASTER | 0x00004c04 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_RC2 | 0x00006602 | Algoritmo de criptografia de bloco RC2. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_RC4 | 0x00006801 | Algoritmo de criptografia de fluxo RC4. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_RC5 | 0x0000660d | Algoritmo de criptografia de bloco RC5. |
| CALG_RSA_KEYX | 0x0000a400 | Algoritmo de troca de chaves públicas RSA. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_RSA_SIGN | 0x00002400 | Algoritmo de assinatura de chave pública RSA. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_SCHANNEL_ENC_KEY | 0x00004c07 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_SCHANNEL_MAC_KEY | 0x00004c03 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_SCHANNEL_MASTER_HASH | 0x00004c02 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_SEAL | 0x00006802 | Algoritmo de criptografia SEAL. Não há suporte para esse algoritmo. |
| CALG_SHA | 0x00008004 | Algoritmo de hash SHA. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_SHA1 | 0x00008004 | O mesmo que CALG_SHA. Esse algoritmo é compatível com o Provedor Criptográfico base da Microsoft. |
| CALG_SHA_256 | 0x0000800c | Algoritmo de hash SHA de 256 bits. Esse algoritmo é compatível com o Microsoft Enhanced RSA e o Provedor de Criptografia AES. Windows XP com SP3: Esse algoritmo tem suporte do Microsoft Enhanced RSA e do Provedor de Criptografia do AES (Protótipo). Windows XP com SP2, Windows XP com SP1 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_SHA_384 | 0x0000800d | Algoritmo de hash SHA de 384 bits. Esse algoritmo é compatível com o Microsoft Enhanced RSA e o Provedor de Criptografia AES. Windows XP com SP3: Esse algoritmo tem suporte do Microsoft Enhanced RSA e do Provedor de Criptografia do AES (Protótipo). Windows XP com SP2, Windows XP com SP1 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_SHA_512 | 0x0000800e | Algoritmo de hash SHA de 512 bits. Esse algoritmo é compatível com o Microsoft Enhanced RSA e o Provedor de Criptografia AES. Windows XP com SP3: Esse algoritmo tem suporte do Microsoft Enhanced RSA e do Provedor de Criptografia do AES (Protótipo). Windows XP com SP2, Windows XP com SP1 e Windows XP: Não há suporte para esse algoritmo. |
| CALG_SKIPJACK | 0x0000660a | Algoritmo de criptografia de bloco skipjack (FORTEZZA). Não há suporte para esse algoritmo. |
| CALG_SSL2_MASTER | 0x00004c05 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_SSL3_MASTER | 0x00004c01 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_SSL3_SHAMD5 | 0x00008008 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_TEK | 0x0000660b | TEK (FORTEZZA). Não há suporte para esse algoritmo. |
| CALG_TLS1_MASTER | 0x00004c06 | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
| CALG_TLS1PRF | 0x0000800a | Usado pelo sistema de operações Schannel.dll. Esse ALG_ID não deve ser usado por aplicativos. |
Para o Provedor Criptográfico Base da Microsoft, o Provedor Criptográfico Forte da Microsoft e o Provedor Criptográfico Avançado da Microsoft, os ALG_IDs usados para as principais especificações AT_KEYEXCHANGE e AT_SIGNATURE são os seguintes:
- CALG_RSA_KEYX é usado para AT_KEYEXCHANGE.
- CALG_RSA_SIGN é usado para AT_SIGNATURE.
Para o Microsoft Base DSS e Diffie-Hellman Provedor Criptográfico, os ALG_IDs usados para as especificações de chave AT_KEYEXCHANGE e AT_SIGNATURE são os seguintes:
- CALG_DH_SF é usado para AT_KEYEXCHANGE.
- CALG_DSS_SIGN é usado para AT_SIGNATURE.
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
| Cabeçalho | Wincrypt.h |