Récemment, je relisais les bases de la blockchain et j'ai compris que beaucoup ne comprennent pas vraiment comment fonctionne la vérification de l'intégrité des données dans les cryptomonnaies. Tout se résume à une structure élégante, inventée par Ralph Merkle au début des années 80.



Imaginez que vous téléchargez un fichier énorme, disons 50 gigaoctets. Habituellement, les développeurs vous donnent un hash de ce fichier pour que vous puissiez vérifier que vous avez téléchargé exactement ce qu'il faut. Mais si le fichier est corrompu lors du téléchargement, vous devez tout recommencer. C'est là qu'intervient l'arbre de Merkle - un système qui divise un grand volume de données en morceaux et crée une représentation compacte de l'ensemble du fichier.

Comment cela fonctionne-t-il ? Prenons un fichier composé de huit parties (appelons-les A, B, C, D, E, F, G, H). Chacune de ces parties passe par une fonction de hachage, ce qui donne huit hash. Ensuite, on prend chaque paire de hash, on les combine et on les re-hache. Cela donne quatre hash. On répète le processus - il reste deux hash. On les hache ensemble pour obtenir la racine de Merkle finale. La structure ressemble à un arbre inversé avec des feuilles en bas et une seule racine en haut.

Ce qui est génial avec ça ? Si même un seul bit de donnée change, la racine de Merkle devient complètement différente. Cela nous donne un moyen puissant de vérification - un seul hash représente toutes les données. Et si quelque chose ne va pas, on peut rapidement identifier quel fragment est corrompu, sans vérifier tout le contenu.

Passons maintenant à la blockchain. Bitcoin et d'autres cryptomonnaies utilisent l'arbre de Merkle dans chaque bloc. Imaginez un bloc comme un conteneur contenant des milliers de transactions. Au lieu de hasher chaque transaction à chaque fois, les mineurs calculent une seule fois la racine de Merkle et l’insèrent dans l’en-tête du bloc. Lors du minage, il faut ne hasher que cet en-tête compact, et non tout le bloc avec ses milliers de transactions. Cela permet d’économiser énormément de ressources de calcul.

Il y a aussi une autre astuce - la vérification simplifiée des paiements. Si vous utilisez un client léger sur votre smartphone, vous n’avez pas besoin de télécharger toute la blockchain. Vous pouvez demander une preuve de Merkle - une preuve spéciale qui montre que votre transaction figure bien dans le bloc. Pour cela, seules quelques hash sont nécessaires, pas toutes les données.

En résumé, l’arbre de Merkle est l’une des technologies qui rendent la blockchain pratiquement exploitable. Sans lui, les blocs seraient beaucoup plus gros, le réseau plus lent, et les clients légers ne pourraient pas vérifier les transactions. Voilà une structure de données simple mais brillante, qui est à la base de la cryptographie de la blockchain.
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • Commentaire
  • Reposter
  • Partager
Commentaire
Ajouter un commentaire
Ajouter un commentaire
Aucun commentaire
  • Épinglé