C’est quoi le hachage ?

Le 2 Fév, 2022
c'est quoi le hachage

C’est quoi le hachage ?

Définition du hachage

Quand on cherche à comprendre comment fonctionne la blockchain, il est important de s’intéresser au principe de hachage cryptographique. En effet celui-ci est un pilier très important de la cryptosécurité. Le hash facilite grandement l’identification d’une transaction sur la blockchain.

Le hachage cryptographique permet de générer une suite de caractères de longueur fixe à partir d’un ensemble de données de n’importe quelle taille. Cet ensemble de données peut être un mot, une phrase, un texte ou encore un fichier entier.

Le hachage ou (hash) est un terme courant lorsqu’on parle de la technologie blockchain. Il fait référence à la transformation de données de n’importe quelle longueur en une chaîne de caractère à longueur fixe. Par exemple, l’algorithme de hachage de Bitcoin est SHA-256 (Secure Hashing Algorithm 256 bits). C’est un algorithme à sens unique, les données initiales ne peuvent pas être récupérées par décryptage. En résumé, un hash est une suite alphanumérique unique qui n’est pas duplicable.

Le SHA-256 est une fonction qui a été mise au point par la NSA aux Etats-Unis (National Security Agency). Vous pouvez utiliser n’importe quel outil en ligne permettant de calculer un hachage SHA-256 comme celui-ci et vous trouverez toujours le même résultat pour les mêmes données entrées. C’est normal puisqu’ils utilisent tous la même méthode.

Par exemple :

J’adore cryptovore : e08fc8ddb76a7dca66a972cb7ff461c6b10563a90db4aa7adad38cee0fdffe6c

J’adore Cryptovore : 83b5a70ff220bde29db9cfd3f304966267bc4b26fa00cc4c1441d0bab6a35302

Vous pourrez remarquer par vous même la rapidité du calcul et l’aisance de distinction (avec la majuscule dans notre exemple).

hachage

Le hachage et la blockchain

Un algorithme de hachage permet de prendre un nombre infini de bits, d’effectuer des calculs pour produire un nombre fixe de bits. C’est donc ni plus ni moins une transformation et une normalisation. Quelle que soit la longueur des données d’entrée, la sortie sera toujours d’une longueur fixe. ​

Maintenant pour bien comprendre en détail ce qu’est le hachage, il faut s’intéresser à la structure de données. Une structure de données est une manière spécifique de stocker les données, elle se décompense en deux éléments :

  • Les pointeurs : ce sont des variables faisant référence à d’autres variables. Leur rôle est d’indiquer (pointer) le chemin vers le bon emplacement. Ils fournissent l’adresse du bloc suivant dans la blockchain.
  • Les listes liées : c’est une séquence de noeuds connectés à l’aide des pointeurs.

Grâce au hachage, tous les blocs se voit attribuer un identifiant unique, ce qui rendra impossible la modification de la blockchain. Chaque bloc est identifié par des informations incluses en haut du bloc. Elle se compose de​s détails suivants :

  • La version du bloc : permet aux mineurs de signaler leur approbation pour un changement du protocole
  • L’identifiant du bloc précédent : permet de relier l’entête au bloc précédent
  • La racine de Merkle : permet de relier l’entête du bloc au reste de celui-ci 
  • L’horodatage : l’heure et la date du minage
  • Le nonce : c’est le numéro que les mineurs de la blockchain cherchent à résoudre. Lorsque la solution est trouvée, les mineurs de la blockchain reçoivent en échange des crypto-monnaies.

Tous ces éléments sont nécessaires pour créer le bloc. Ainsi, lorsqu’un hachage est effectué sur la blockchain, les données sont converties en une chaîne unique au sein d’un bloc.

Comment résoudre le hash ?

Pour qu’un bloc soit ajouté à la blockchain, les mineurs doivent trouver le hash. Comme nous l’avons vu précédemment, chaque bloc contient un en-tête où se trouve l’identifiant du bloc précédent et un nonce comportant un horodatage. Le but d’un nonce est de varier les entrées d’un hachage cryptographique et donc de le rendre plus aléatoire pendant le processus de minage.

Le node (nœud de réseau / ordinateur) démarre donc son processus de hachage de données en les convertissant en hash. Il vérifie ensuite que le hash répond bien à la difficulté établie et si c’est le cas, le hash est diffusé aux autres mineurs du réseau. Le premier mineur qui trouve un hash valide est récompensé et peut valider le bloc.

En revanche si le hash ne correspond pas à la difficulté, un autre nonce est sélectionné et haché. Pour trouver un nonce qui correspond à la difficulté, les mineurs vont devoir générer plusieurs hash. C’est en fait ce qu’on appelle le processus de mining. Celui-ci nécessite une grande puissance de calcul et beaucoup d’énergie.

Le hachage est donc un élément prépondérant dans le processus de Proof-of-Work (Preuve de travail). Sans celui-ci, la blockchain ne serait pas sécurisée.

Les derniers articles par Guillaume M. (tout voir)
La CryptoSchool
Rabby, le portefeuille crypto aux fonctionnalités inédites
Rabby, le portefeuille crypto aux fonctionnalités inédites

Qu’est-ce que Rabby, le lapin qui veut chasser le renard ? Rabby est un wallet crypto bourrés de fonctionnalités inédites disponible sur navigateur. L’extension existe sur Chrome et Brave pour le moment, mais Firefox et Edge ne devraient pas tarder à suivre. Allez,...

Le flipping de nft
Le flipping de nft

Depuis plusieurs mois, le monde des NFT est en plein essor. Avec le flipping de NFT, certains NFT s'échangent pour des dizaines voir des centaines de milliers de dollars. Comment en est-on arrivé à échanger des images pour ces sommes astronomiques ? Comment vous aussi...

Nos réseaux
i
Articles similaires