Algorithmes de hachage et de signature

Les algorithmes suivants calculent les hachages et les signatures numériques. Chacun de ces algorithmes est pris en charge dans les fournisseurs de chiffrement Microsoft Base, Strong et Enhanced. Les détails internes de ces algorithmes dépassent la portée de cette documentation. Pour obtenir la liste des sources supplémentaires, reportez-vous à la page Documentation supplémentaire sur le chiffrement.

Algorithmes Description
Cipher Block Chaining (CBC) MAC
L’un des algorithmes (CALG_MAC) implémentés par les fournisseurs Microsoft est un code d’authentification par message (MAC) en chiffrement par bloc. Cette méthode chiffre les données de base avec un chiffrement par bloc, puis utilise le dernier bloc chiffré comme valeur de hachage. L’algorithme de chiffrement utilisé pour générer le MAC est celui qui a été spécifié lors de la création de la clé de session.
HMAC
Algorithme (CALG_HMAC) implémenté par les fournisseurs Microsoft. Cet algorithme utilise également une clé symétrique pour créer le hachage, mais il est plus complexe que l’algorithme MAC simple de chainage de blocs de chiffrement (CBC). Il peut être utilisé avec n’importe quel algorithme de hachage de chiffrement itéré, tel que MD5 ou SHA-1. Pour plus d'informations, consultez la pageCréation d'un HMAC.
MD2, MD4 et MD5
Ces algorithmes de hachage ont tous été développés par RSA Data Security, Inc. Ces algorithmes ont été développés dans l’ordre séquentiel. Les trois génèrent des valeurs de hachage 128 bits. Les trois sont connus pour avoir des faiblesses et ne doivent être utilisés que si nécessaire à des fins de compatibilité. Pour le nouveau code, nous vous recommandons la famille SHA-2 de hachages.
Ces algorithmes sont bien connus et peuvent être examinés en détail dans n’importe quelle référence sur le chiffrement.
Codes d’authentification des messages (MAC)
Les algorithmes MAC sont similaires aux algorithmes de hachage, mais sont calculés à l’aide d’une clé symétrique (de session). La clé de session d’origine est requise pour recompiler la valeur de hachage. La valeur de hachage recalculée est utilisée pour vérifier que les données de base n’ont pas été modifiées. Ces algorithmes sont parfois appelés algorithmes de hachage à clé. Pour voir quels fournisseurs Microsoft prennent en charge les MAC, consultez la page Fournisseurs de services de chiffrement Microsoft.
Algorithme de hachage sécurisé (SHA-1)
Cet algorithme de hachage a été développé par le National Institute of Standards and Technology (NIST) et par la National Security Agency (NSA). Cet algorithme a été développé pour une utilisation avec DSA (Digital Signature Algorithm) ou DSS (Digital Signature Standard). Cet algorithme génère une valeur de hachage de 160 bits. SHA-1 est connu pour avoir des faiblesses et doit être utilisé uniquement si nécessaire à des fins de compatibilité. Pour le nouveau code, nous vous recommandons la famille SHA-2 de hachages.
Algorithme de hachage sécurisé - 2 (SHA-2)
Cet algorithme de hachage a été développé par le National Institute of Standards and Technology (NIST) et la National Security Agency (NSA) pour succéder à SHA-1. Il comporte quatre variantes (SHA-224, SHA-256, SHA-384 et SHA-512) nommées en fonction du nombre de bits dans leurs sorties. Parmi eux, SHA-256, SHA-384 et SHA-512 sont implémentés dans le fournisseur de chiffrement Microsoft AES.
Algorithme d’autorisation du client SSL3
Cet algorithme est utilisé pour l’authentification client du SSL3. Dans le protocole SSL3, une concaténation d’un hachage MD5 et d'un hachage SHA est signée avec une clé privée RSA. CryptoAPI 2.0 et les fournisseurs de chiffrement Microsoft Base et Enhanced le prennent en charge avec le type de hachage CALG_SSL3_SHAMD5. Pour plus d’informations, consultez la page Création d’un hachage CALG_SSL3_SHAMD5.