Partilhar via


Algoritmos de hash e assinatura

Os algoritmos a seguir calculam hashes e assinaturas digitais. Cada um desses algoritmos é suportado nos Microsoft Base, Strong e Enhanced Cryptographic Providers. Os detalhes internos desses algoritmos estão além do escopo desta documentação. Para obter uma lista de fontes adicionais, consulte Documentação adicional sobre criptografia.

Algoritmos Descrição
Encadeamento de blocos de cifra (CBC) MAC
Um dos algoritmos (CALG_MAC) implementados pelos provedores da Microsoft é uma cifra de bloco de código de autenticação de mensagem (MAC). Esse método criptografa os dados de base com uma cifra de bloco e, em seguida, usa o último bloco criptografado como o hash valor. O algoritmo de encriptação usado para construir o MAC é aquele que foi especificado quando a chave de sessão foi criada.
HMAC
Um algoritmo (CALG_HMAC) implementado por provedores da Microsoft. Este algoritmo também usa uma chave simétrica para criar ode hash, mas é mais complexo do que o simples algoritmo MAC Cipher Block Chaining (CBC). Ele pode ser usado com qualquer algoritmo de hash criptográfico iterado, como MD5 ou SHA-1. Para obter detalhes, consulte Criando um HMAC.
MD2, MD4 e MD5
Esses algoritmos de hash foram todos desenvolvidos pela RSA Data Security, Inc. Estes algoritmos foram desenvolvidos por ordem sequencial. Todos os três geram valores de hash de 128 bits. Todos os três são conhecidos por terem pontos fracos e só devem ser usados quando necessário para fins de compatibilidade. Para um novo código, recomendamos a família de hashes SHA-2.
Esses algoritmos são bem conhecidos e podem ser revisados em detalhes em qualquer referência sobre de criptografia.
Código de autenticação de mensagem (MAC)
Os algoritmos MAC são semelhantes aos algoritmos hash, mas são calculados usando uma chave simétrica (sessão). Ode chave de sessãooriginal é necessário para recalcular o valor de hash. O valor de hash recalculado é usado para verificar se os dados de base não foram alterados. Esses algoritmos às vezes são chamados de algoritmos de hash com chave. Para ver quais provedores da Microsoft oferecem suporte a MAC, consulte Microsoft Cryptographic Service Providers.
Algoritmo de hash seguro (SHA-1)
Este algoritmo de hashing foi desenvolvido pelo National Institute of Standards and Technology (NIST) e pela National Security Agency (NSA). Este algoritmo foi desenvolvido para uso com DSA (Digital Signature Algorithm) ou DSS (Digital Signature Standard). Esse algoritmo gera um valor dede hashde 160 bits. O SHA-1 é conhecido por ter pontos fracos e só deve ser usado quando necessário para fins de compatibilidade. Para um novo código, recomendamos a família de hashes SHA-2.
Algoritmo de hash seguro - 2 (SHA-2)
Este algoritmo de hash foi desenvolvido como sucessor do SHA-1 pelo National Institute of Standards and Technology (NIST) e pela National Security Agency (NSA). Ele tem quatro variantes — SHA-224, SHA-256, SHA-384 e SHA-512 — que são nomeadas de acordo com o número de bits em suas saídas. Destes, SHA-256, SHA-384 e SHA-512 são implementados no Microsoft AES Cryptographic Provider.
Algoritmo de autorização de cliente SSL3
Este algoritmo é usado para autenticação de cliente SSL3. No protocolo SSL3, uma concatenação de um hash MD5 e um hash SHA é assinada com uma chave privada RSA . A CryptoAPI 2.0 e os Provedores de Criptografia Base e Aprimorados da Microsoft oferecem suporte a isso com o tipo dede hashCALG_SSL3_SHAMD5. Para obter mais informações, consulte Criando umde hash CALG_SSL3_SHAMD5 .