Le compte à rebours est lancé pour Keyfactor Tech Days - réservez votre place dès aujourd'hui !

  • Accueil
  • Blog
  • Le temps est venu pour SHA-1, Keyfactor's Suggested Migration Path

Le temps est venu pour SHA-1, Keyfactor's Suggested Migration Path

SHA-1 est un algorithme de hachage largement adopté qui ne peut plus être considéré comme fiable. Les analystes qui conçoivent actuellement le site PKI doivent évaluer les avantages de la mise en œuvre de SHA-2 par rapport aux problèmes de compatibilité liés à son adoption. Cette décision de conception est motivée par le fait que l'on a récemment compris que les hachages SHA-1 sont cryptographiquement faibles et que les possibilités de manipulation malveillante des valeurs de hachage résultantes sont beaucoup plus faciles qu'on ne l'avait prévu. Il s'agit d'un problème grave si une signature numérique authentique sur un contrat de 100 dollars ne peut être distinguée d'une signature numérique frauduleuse sur un contrat d'une valeur de 100 000 dollars.

SHA-2 est une mise à jour de l'ancien algorithme de hachage SHA-1, qui fournit un algorithme plus sûr et, en fin de compte, plus fiable PKI. Mais les avantages de SHA-2 valent-ils le coût de sa mise en œuvre ? Cet article de blog explore SHA-2 afin de fournir le contexte, l'historique et les voies de migration possibles.

Brève histoire des algorithmes de hachage

L'algorithme de hachage sécurisé (SHA) est un type de fonction de hachage cryptographique dont le rôle est de garantir que les données n'ont pas été modifiées. SHA y parvient en calculant une valeur de hachage cryptographique unique pour un élément de données donné. Des données différentes produisent des valeurs de hachage uniques, et toute modification d'une donnée se traduira par une valeur de hachage différente. Et c'est là tout l'intérêt : des valeurs de hachage différentes sont essentielles pour déterminer si des données ont été modifiées.

Les valeurs de hachage permettent de garantir l'intégrité d'un élément de données donné, car il est pratiquement garanti qu'elles sont uniques, qu'il est impossible de les prédire et qu'elles sont faciles à calculer.

SHA-0 était un algorithme de hachage de courte durée publié en 1993. SHA-0 s'est avéré défectueux et la National Security Agency (NSA) a conçu un algorithme de remplacement appelé SHA-1. SHA-0 et SHA-1 sont tous deux des fonctions de hachage de 160 bits. Cela signifie que toutes les données possibles seront hachées en un nombre de 160 bits. SHA-1 est actuellement largement adopté et est pris en charge par la plupart des appareils et systèmes qui utilisent des fonctions de hachage cryptographiques.

Quel est donc le problème avec SHA-1 ?

L'une des principales préoccupations des concepteurs de hachages cryptographiques est de minimiser la probabilité que deux données différentes produisent la même valeur de hachage. Lorsque cela se produit, on parle de "collision de hachage cryptographique".

Le problème est qu'il existe une quantité infinie de bits de données uniques, mais un nombre limité de valeurs de hachage calculables. En utilisant SHA-1, il y a2160 valeurs de hachage cryptographiques possibles. La théorie mathématique nous apprend que la probabilité que deux messages calculent la même valeur est d'environ 1 sur280. En d'autres termes, si l'on voulait trouver deux messages qui calculent la même valeur, il faudrait essayer280 messages différents avant d'en trouver deux dont les hachages entrent en conflit. Bien que ce nombre très élevé rende improbable la devinette de hachage, des mathématiciens ont prouvé en 2005 que les collisions de hachage SHA-1 pouvaient être calculées beaucoup plus rapidement qu'en essayant simplement280 messages différents (2000 fois plus rapidement en fait).

C'est la raison pour laquelle SHA-1 est progressivement retiré de la plupart des applications gouvernementales et que le NIST a recommandé que SHA-1 ne soit plus utilisé après 2010.

SHA-2 - Contexte

SHA-2 est un algorithme de hachage cryptographique plus récent, basé sur SHA-1. SHA-2 a été développé par la NSA en 2001 pour pallier les insuffisances mathématiques de SHA-1. SHA-2 est en fait une collection de quatre algorithmes de hachage différents : SHA-224, SHA-256, SHA-384 et SHA-512.

SHA-2 évite les faiblesses de SHA-1 en s'appuyant sur des clés de plus grande taille qui rendent les collisions encore moins probables ; néanmoins, le développement de SHA-3 est actuellement en cours. Il convient de noter que SHA-3 ne sera pas basé sur SHA-2". *Voir la mise à jour ci-dessous

SHA-2 Difficultés d'adoption

L'adoption généralisée de SHA-1 par les systèmes nécessitant des fonctions de hachage pourrait servir à illustrer la difficulté de l'adoption de SHA-2. Le large éventail de dispositifs, d'applications et de systèmes cryptographiques possibles exige un large éventail de voies de gestion et de mise à jour. Et le plus difficile, c'est que tout ce qui utilise SHA-1 n'est pas compatible avec SHA-2.

La mise à niveau de l'ensemble d'une entreprise PKI de SHA-1 à SHA-2 nécessitera non seulement l'installation d'autorités de certification capables de délivrer des certificats SHA-2, mais aussi de s'assurer que tous les abonnés, les parties utilisatrices, les applications et les appareils peuvent effectivement utiliser les certificats SHA-2 résultants.

Pour les systèmes Microsoft, les capacités SHA-2 sont natives de Windows Vista, Windows 7 et Windows Server 2008 (R2). Cependant, les clients Windows XP Service Pack 3 et Windows Server 2003 SP2 avec KB 968730 n'ont qu'une prise en charge limitée de SHA-2. La prise en charge de SHA-2 sur ces plateformes est limitée aux fonctionnalités SSL/TLS .

Les applications qui utilisent des certificats, même sur les plates-formes prises en charge, devront également être évaluées pour déterminer leur compatibilité avec SHA-2. Par exemple, Microsoft Outlook 2003 ne peut pas valider un certificat SHA-2 S/MIME.

Les plates-formes telles que les appareils mobiles, les ordinateurs centraux, les ordinateurs de milieu de gamme, les appareils WAP, les serveurs radius, les concentrateurs VPN, etc. devront également être évaluées pour s'assurer de leur compatibilité avec SHA-2. Dans de nombreux cas, une mise à jour est nécessaire.

En bref, SHA-1 étant intégré dans un grand nombre de plates-formes différentes, il peut être difficile de déterminer exactement l'impact de la migration vers SHA-2. Même les systèmes les plus récents prennent en charge SHA-1 pour assurer la compatibilité avec les anciennes autorités de certification.

Chemin de mise à jour suggéré vers SHA-2

Dans presque tous les cas, la meilleure approche pour passer à un site PKI basé sur SHA-2 consisterait à migrer vers un site PKI enraciné séparément. Un site PKI distinct qui utilise uniquement SHA-2 pour les certificats émis et les certificats d'autorité de certification.

Figure 1 SHA-1 et SHA-2 PKI

Pour ce faire, une autorité de certification racine distincte basée sur SHA-2 doit être créée parallèlement à l'autorité de certification originale PKI. Cette racine distincte est signée à l'aide de SHA-2, de même que tous les certificats d'autorité de certification subordonnés. Les abonnés de l'entreprise et les parties utilisatrices devront faire confiance aux deux racines pendant la migration.

Un site PKI distinct permet aux administrateurs de PKI de migrer soigneusement les plates-formes et les applications vers un nouveau site PKI basé sur SHA-2, de manière progressive et contrôlée. À terme, lorsque tous les abonnés, parties utilisatrices et applications auront migré, le site original PKI , basé sur SHA-1, sera dépourvu d'utilisateurs ou d'applications et sera mis hors service.

Il convient de noter que l'adoption de SHA-2 comporte un aspect politique. Un site PKI basé sur SHA-2 permettra également l'adoption d'une politique de certification (PC) d'entreprise distincte. Cela permettra l'adoption d'une politique de certification exigeant l'abandon de l'algorithme de hachage SHA-1.

Conclusion

SHA-1 est un algorithme de hachage qui est actuellement largement adopté. Cet algorithme de hachage cryptographique présente toutefois des lacunes mathématiques qui sont résolues par SHA-2. La mise en œuvre d'un site PKI basé sur SHA-2 nécessitera une entreprise racine distincte PKI et une stratégie de migration bien pensée. Cela permettra d'obtenir un site PKI qui reste digne de confiance et qui protège contre les faiblesses croissantes de l'algorithme de hachage cryptographique SHA-1.

*MISE À JOUR :

Le 2 octobre 2012, le NIST a annoncé le vainqueur de son concours de fonctions de hachage. L'algorithme de hachage cryptographique sélectionné s'appelle "Keccak". (Prononcé Catch-ack)

Suite à cette sélection, "Keccak" sera désormais connu sous le nom de "SHA-3".

https://www.nist.gov/itl/csd/sha-100212.cfm

https://en.wikipedia.org/wiki/Keccak

Articles connexes :

Annonce SHA-3