Merkle Tree
Une arborescence Merkle est une structure de données utilisée dans les applications informatiques. Dans les bitcoins et autres monnaies cryptées, les arbres Merkle servent à coder les données de chaînes de blocs de manière plus efficace et sécurisée.
Ils sont également appelés "arbres de hachage binaires".
Abattre Merkle Tree
Dans la blockchain de bitcoin, un bloc de transactions est exécuté via un algorithme pour générer un hachage, qui est une chaîne de chiffres et de lettres pouvant être utilisée pour vérifier qu'un ensemble donné de données est identique à l'ensemble original de transactions, mais ne pas obtenir l'ensemble initial des transactions. Le logiciel de Bitcoin n'exécute toutefois pas l'intégralité du bloc de données de transaction - représentant en moyenne 10 minutes de transactions - via la fonction de hachage à la fois. Chaque transaction est plutôt hachée, puis chaque paire de transactions est concaténée et hachée ensemble, et ainsi de suite jusqu'à ce qu'il y ait un hachage pour le bloc entier. (S'il existe un nombre impair de transactions, une transaction est doublée et son hachage est concaténé avec lui-même.)
Visualisée, cette structure ressemble à un arbre. Dans le diagramme ci-dessous, "T" désigne une transaction, "H" un hachage. Notez que l'image est très simplifiée. un bloc moyen contient plus de 500 transactions, pas huit.
Les hachages de la rangée inférieure sont appelés «feuilles», les hachages intermédiaires sont des «branches» et le hachage du haut, la «racine». L'en-tête Merkle d'un bloc donné est stocké dans l'en-tête: par exemple, la racine Merkle du bloc n ° 482819 est e045b18e7a3d708d686717b4f44db2099aabcad9bebf968de5f7271b458f71c8. La racine est combinée avec d'autres informations (la version du logiciel, le hachage du bloc précédent, l'horodatage, la cible de difficulté et le nonce), puis est exécutée via une fonction de hachage afin de générer le hachage unique du bloc: . Ce hachage n'est pas réellement inclus dans le bloc concerné, mais dans le suivant; il est distinct de la racine de Merkle.
L'arborescence Merkle est utile car elle permet aux utilisateurs de vérifier une transaction spécifique sans télécharger la blockchain complète (plus de 130 Go à la fin du mois d'août 2017). Par exemple, supposons que vous vouliez vérifier que la transaction T D est incluse dans le bloc du diagramme ci-dessus. Si vous avez le hachage racine (H ABCDEFGH ), le processus ressemble à un jeu de sudoku: vous interrogez le réseau sur H D et renvoie H C, H AB et H EFGH . L'arbre de Merkle vous permet de vérifier que tout est comptabilisé avec trois hachages: HAB, H C, H EFGH, et la racine H ABCDEFGH, H D (le seul hachage manquant) doivent être présents dans les données.
Les arbres Merkle portent le nom de Ralph Merkle, qui les avait proposés dans un article de 1987 intitulé "Une signature numérique basée sur une fonction de cryptage conventionnelle". Merkle a également inventé le hachage cryptographique.
Comparaison des comptes d'investissement Nom du fournisseur Description Divulgation par l'annonceur × Les offres figurant dans ce tableau proviennent de partenariats avec lesquels Investopedia reçoit une rémunération.