Commencer gratuitement
KZero Staff / 3 min de lecture / 27 juill. 2023

Définition du hachage cryptographique

Qu’est-ce qu’un hachage cryptographique ?

Une fonction de hachage est un type d’algorithme cryptographique. Plutôt que de protéger la confidentialité des données — comme le font les algorithmes de chiffrement —, les fonctions de hachage sont couramment utilisées pour assurer l’intégrité des données, en vérifiant qu’elles n’ont pas été modifiées depuis leur création.

Comment fonctionnent les fonctions de hachage ?

Une fonction de hachage est une fonction mathématique qui prend des entrées de toute taille et les convertit en une sortie de taille fixe. Par exemple, la populaire fonction de hachage SHA-256 tire son nom du fait qu’elle produit toujours une sortie de 256 bits, quelle que soit la longueur de l’entrée.

En plus de ces sorties de longueur fixe, les fonctions de hachage possèdent quelques caractéristiques clés qui les rendent utiles à diverses fins, notamment :

  • Fonction à sens unique : Les fonctions de hachage sont conçues de manière à ce qu’il soit possible d’aller de l’entrée vers la sortie, mais pas en sens inverse. Cela empêche quiconque de déterminer la valeur utilisée pour produire un hachage.
  • Résistance aux collisions : Une collision de hachage correspond à deux entrées qui produisent la même sortie. Les fonctions de hachage sont conçues pour rendre la découverte d’une collision irréalisable. Dès qu’une collision est trouvée pour une fonction de hachage — ou qu’il semble possible d’en trouver une —, la fonction de hachage est considérée comme compromise.

Pour atteindre ces objectifs, les fonctions de hachage possèdent d’autres caractéristiques utiles. Par exemple, elles sont conçues de manière à ce que des entrées très semblables (ne différant même que d’un seul bit) produisent des sorties très différentes.

Applications des fonctions de hachage

Les fonctions de hachage sont couramment utilisées pour assurer l’intégrité des données ou pour servir de représentation sécurisée des données. Quelques exemples :

  • Hachages de fichiers : Les fonctions de hachage sont couramment utilisées pour vérifier l’intégrité des fichiers et d’autres données. Puisqu’un changement d’un seul bit dans l’entrée entraîne des changements spectaculaires dans la sortie, même de petites modifications aux données ont des répercussions majeures.
  • Tables de hachage : Les tables de hachage servent à organiser les données en compartiments. Grâce à la résistance aux collisions des fonctions de hachage, il est peu probable que deux éléments de données soient affectés au même compartiment si une fonction de hachage sécuritaire est utilisée.
  • Stockage des mots de passe : Les fonctions de hachage sont des fonctions déterministes à sens unique, ce qui signifie qu’on ne peut pas retrouver l’entrée à partir de la sortie, mais que la même entrée produit toujours la même sortie. Elles sont donc idéales pour le stockage des mots de passe, où un système peut stocker et comparer des hachages de mots de passe plutôt que d’enregistrer le véritable mot de passe de l’utilisateur dans le système.
  • Chaîne de blocs : La technologie de la chaîne de blocs fait un usage intensif des fonctions de hachage. Par exemple, celles-ci servent à relier les blocs de la chaîne entre eux et constituent un élément essentiel de l’algorithme de consensus par preuve de travail (PoW).

Les fonctions de hachage peuvent convenir aux applications où il n’est pas nécessaire de restaurer les données originales. Puisque les fonctions de hachage sont des fonctions à sens unique, il n’existe aucun moyen de « déchiffrer » un hachage.

Conclusion

Les fonctions de hachage sont des algorithmes cryptographiques couramment utilisés pour assurer l’intégrité des données. Elles sont conçues comme des fonctions à sens unique et résistantes aux collisions, ce qui signifie qu’il est irréalisable de restaurer les données originales ou de trouver deux entrées produisant la même valeur de hachage. Cela rend les fonctions de hachage utiles pour la détection d’erreurs et la vérification de l’intégrité, car toute modification de l’entrée — accidentelle ou intentionnelle — sera facilement détectable grâce aux changements qui en résultent dans la valeur de hachage.

Équipe KZero



Découvrez davantage de contenu instructif rédigé par l’équipe compétente de KZero dans les sections blogue et guides de notre site.