Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Aperçu du Hachage | Blocs et Transactions
Introduction à la Blockchain
course content

Contenu du cours

Introduction à la Blockchain

Introduction à la Blockchain

1. Commencer
2. Blocs et Transactions
3. Concepts Avancés de la Blockchain

book
Aperçu du Hachage

Nous avons déjà mentionné le hachage et les hachages de blocs plusieurs fois, mais nous n'y avons pas vraiment prêté attention, il est donc temps de discuter de ce qu'est réellement le hachage.

Propriétés des fonctions de hachage

Dans la blockchain, les fonctions de hachage sont utilisées pour :

  • Sécuriser les transactions en créant une empreinte digitale unique pour chacune d'elles ;
  • Générer des adresses à partir de clés publiques ;
  • Créer les liens dans la blockchain à travers les hachages de blocs.

Avec cela à l'esprit, une bonne fonction de hachage pour la blockchain a plusieurs propriétés clés :

Le hachage, en particulier en utilisant une bonne fonction de hachage, peut être comparé à faire un smoothie. Jetons un coup d'œil à l'illustration suivante :

Eh bien, en fait, il est possible de retrouver l'entrée originale donnée un hash, cependant, cela prendrait trop de temps pour être réellement pratique.

Hachage de Bloc

Pour obtenir le hash d'un certain bloc, Bitcoin utilise la fonction de hachage SHA-256, qui produit un hash de 256 bits (32 octets). Elle fait partie de la famille SHA-2 conçue par la National Security Agency (NSA) et est connue pour ses fortes propriétés de sécurité, la rendant résistante aux collisions, aux attaques de préimage et à d'autres vulnérabilités cryptographiques.

Le hash d'un bloc Bitcoin est calculé en prenant les données de l'en-tête de bloc. Ces données sont entrées dans la fonction de hachage SHA-256 deux fois dans un processus connu sous le nom de double SHA-256.

Voici une image pour clarifier les choses :

Le hachage de 256 bits résultant doit répondre à certains critères définis par l'objectif de difficulté du réseau. Si le hachage n'est pas en dessous de l'objectif, le nonce est ajusté et le hachage est recalculé jusqu'à ce qu'un hachage qualifiant soit trouvé. Ce hachage final est l'identifiant unique du bloc.

Racine de Merkle

Comme nous l'avons mentionné précédemment, la racine de Merkle est un hachage unique qui représente toutes les transactions incluses dans le bloc. Le calcul d'une racine de Merkle commence par les hachages de chaque transaction dans un bloc. Le Double SHA-256 est également utilisé ici.

Chaque hachage est ensuite jumelé avec un autre et ils sont hachés ensemble pour former un nouveau hachage. Ce processus de jumelage et de hachage des nouveaux hachages continue jusqu'à ce qu'il ne reste qu'un seul hachage. Le hachage final est la racine de Merkle, représentant toutes les transactions dans le bloc et assurant leur intégrité en encodant l'ensemble des transactions en un seul hachage. Un tel processus forme un arbre de Merkle.

Jetons un coup d'œil à un exemple d'arbre de Merkle :

Comme vous pouvez le voir, notre bloc contient 6 transactions (chacune étiquetée comme Tx) et via le hachage et l'appariement de nouveaux hachages, une racine de Merkle est calculée.

Quelle est la taille de sortie de la fonction de hachage SHA-256 utilisée dans la blockchain de Bitcoin ?

Quelle est la taille de sortie de la fonction de hachage SHA-256 utilisée dans la blockchain de Bitcoin ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 4
We're sorry to hear that something went wrong. What happened?
some-alt