Fonctions de hachage

Un blog sur les fonctions de hachage

Hachage

Une fonction de hachage cryptographique est un algorithme mathématique qui mappe des données de taille arbitraire (message) à un tableau de bits de taille fixe (résumé de message ou hachage). Il n'a pas de clés privées ici et est déterministe et aléatoire (pseudo-aléatoire). De plus, toutes les opérations sont publiques, comme la fonction de hachage h(x).

images about Hashing

Propriétés du hachage

images about Hashing
  1. Déterministe : cela signifie que si nous appliquons la même fonction de hachage (SHA256) sur exactement la même entrée, alors le la sorti doit être la même.
  2. Sens Unique : il est facile de générer le hash avec l'algorithme de hachage donné, mais en revanche il est extrêmement difficile (long) de restaurer l'entrée d'origine, c'est comme une fonction de trappe.
  3. Sans collision : Il n'y a pas de collisions dans SHA256 (bien qu'il y en ait, mais avec une probabilité extrêmement faible), cela signifie que deux entrées différentes ne partagent pas le même hachage de sortie et c'est parfait, car nous voulons rendre ces hachages uniques, c'est ainsi que nous identifions un bloc dans la blockchain.
  4. Effet d'avalanche : un petit changement dans l'entrée entraîne un hachage de sortie complètement différent, sinon un cryptanalyste peut faire des prédictions sur l'entrée en fonction de la sortie exclusivement.

Algorithme de hachage MD5

MD5 exécute des fichiers entiers via un algorithme de hachage mathématique pour générer une signature qui peut être mise en correspondance avec un fichier original. De cette façon, un fichier reçu peut être authentifié comme correspondant au fichier d'origine qui a été envoyé, garantissant que les bons fichiers arrivent là où ils doivent aller.

L'algorithme de hachage MD5 convertit les données en une chaîne de 32 caractères. Par exemple, le mot "This is an example" génère toujours ce hash : 68791e1b03badd5e4eb9287660f67745 De même, un fichier de 1.5 Go génère également un hash avec le même nombre de caractères. Lorsque vous envoyez ce fichier à quelqu'un, son ordinateur authentifie son hachage pour s'assurer qu'il correspond à celui que vous avez envoyé.

Si vous modifiez un seul bit dans un fichier, quelle que soit sa taille, la sortie de hachage sera complètement et irréversiblement modifiée. Rien de moins qu'une copie exacte passera le test MD5.

Applications du hachage

images about Hashing images about Hashing images about Hashing