Skip to main content

Que sont les hachages?

Les hachages sont des formules mathématiques qui prennent une chaîne de données de longueur variable, généralement sous forme de texte, et la convertissent en valeurs numériques plus courtes et de longueur fixe.Les hachages sont utilisés fréquemment dans les bases de données informatiques afin de rendre les recherches plus rapidement et plus efficaces.Ils sont également utilisés dans le chiffrement pour s'assurer que les mots de passe ne sont pas compromis et pour authentifier les signatures numériques, entre autres utilisations.Les hachages portent également le nom des fonctions de hachage et peuvent également être considérés comme des algorithmes.

Les hachages jouent un grand rôle dans la facilitation des recherches de base de données.Dans une base de données composée de noms, par exemple, si un utilisateur recherche «John Doe», l'ordinateur devrait correspondre à tous les caractères de la recherche à ceux de chaque entrée de base de données.Chaque personnage du nom aurait 26 possibilités différentes et mdash;les lettres de l'alphabet anglais mdash;Bien que la longueur variable des entrées ralentirait également la recherche.

En revanche, l'application d'une fonction de hachage faciliterait la vie de l'ordinateur.Transformer chaque chaîne de texte en une série de nombres simplifierait la recherche, car l'ordinateur n'aurait que dix possibilités pour vérifier chaque caractère: chiffres «0» à «9.»La longueur fixe de la série Number aide également l'ordinateur à faire son travail plus efficacement.

Dans une base de données avec une fonction de hachage appliquée, toutes les entrées ont un numéro unique correspondant.C'est ce qu'on appelle une clé de hachage.Dans ce cas, lorsque vous effectuez une recherche, l'ordinateur applique d'abord la fonction de hachage à l'entrée que vous avez écrite, comme «John Doe».Il en résulte une valeur numérique, par exemple «456789.»L'ordinateur peut alors correspondre rapidement à ce résultat à la clé de hachage correspondant à la bonne entrée.

Les hachages fonctionnent également comme des signatures numériques.Par exemple, un expéditeur, Robert, veut envoyer un document à quelqu'un et le destinataire, Mary, veut s'assurer que le document n'a pas été falsifié pendant son chemin.L'expéditeur, Robert, n'a qu'à exécuter le document via une fonction de hachage, ce qui se traduit par une valeur numérique.Robert crypte ensuite la clé de hachage et envoie le document avec la clé cryptée.

Mary reçoit à la fois des articles et décrypte la clé de hachage.Elle peut désormais voir la valeur numérique résultant du document avant son envoi.Pour vérifier que le document entre ses mains est exactement le même, elle exécute le document via une fonction de hachage sur son ordinateur.Enfin, elle compare les deux clés.S'ils sont les mêmes, le document n'a pas été modifié en route vers le destinataire.

De nombreuses fonctions de hachage différentes existent, chacune avec ses propres formules mathématiques.Pour qu'une fonction de hachage fonctionne, elle doit minimiser toute collision, qui se produit lorsque deux entrées de base de données ont la même clé de hachage.Les fonctions de hachage doivent également être à sens unique.Cela signifie que vous pouvez produire une clé à partir d'une entrée ou d'un document de base de données, mais pas l'inverse.En d'autres termes, vous ne pouvez pas «rétro-ingénieur» le document d'origine de sa clé de hachage.