1 mai 2021 18:03

Rădăcina Merkle (criptomonedă)

Ce este o rădăcină Merkle?

O rădăcină Merkle este hashul tuturor hashurilor tuturor tranzacțiilor care fac parte dintr-un bloc într-o  rețea blockchain.

Chei de luat masa

  • O rădăcină Merkle este o modalitate matematică simplă de a verifica datele de pe un arbore Merkle.
  • Rădăcinile Merkle sunt utilizate în criptomonede pentru a se asigura că blocurile de date transmise între colegii dintr-o rețea colegială sunt întregi, nedeteriorate și nealterate.
  • Rădăcinile Merkle sunt esențiale în calculul necesar pentru menținerea criptomonedelor precum bitcoin și eter.

Înțelegerea unei rădăcini Merkle

Un blockchain este alcătuit din diferite blocuri care sunt legate între ele (de aici și numele blockchain). Un arbore hash sau arborele Merkle codifică datele blockchain într-un mod eficient și sigur. Permite verificarea rapidă a datelor blockchain, precum și deplasarea rapidă a unor cantități mari de date de la un nod computer la altul din rețeaua blockchain peer-to-peer.

Fiecare tranzacție care are loc în rețeaua blockchain are un hash asociat. Cu toate acestea, aceste hash-uri nu sunt stocate într-o ordine secvențială pe bloc, ci mai degrabă sub forma unei structuri asemănătoare unui copac, astfel încât fiecare hash să fie legat de părintele său în urma unei relații de tip copac părinte-copil.

Deoarece există numeroase tranzacții stocate pe un anumit bloc, toate hashurile tranzacțiilor din bloc sunt, de asemenea, hash, ceea ce duce la o rădăcină Merkle.

De exemplu, luați în considerare un bloc de șapte tranzacții. La nivelul cel mai scăzut (numit nivelul frunzei), vor exista patru tranzacții hash. La nivelul unu deasupra nivelului frunzei, vor exista două hash-uri de tranzacție, fiecare dintre ele conectându-se la două hash-uri care se află sub ele la nivelul frunzei. În partea de sus (nivelul doi), va exista ultimul hash de tranzacție numit rădăcină și se va conecta la cele două hash-uri de sub acesta (la nivelul unu).

În mod efectiv, veți obține un arbore binar cu capul în jos, fiecare nod al arborelui conectându-se la doar două noduri de sub acesta (de unde și numele „copac binar”). Are un hash rădăcină în partea de sus, care se conectează la două hash-uri la nivelul unu, fiecare dintre acestea conectându-se din nou la cele două hash-uri la nivelul trei (nivelul frunzei), iar structura continuă în funcție de numărul de hash-uri de tranzacție.

Hashing-ul începe la nivelul cel mai de jos (nivelul frunzei) și toate cele patru hash-uri sunt incluse în hash-ul nodurilor care sunt legate de acesta la nivelul unu. În mod similar, hashul continuă la nivelul unu, ceea ce duce la hashuri de hashuri care ajung la niveluri superioare, până când ajunge la hashul rădăcinii superioare.

Acest hash rădăcină se numește rădăcină Merkle și, datorită legăturii arhitecturale a hashurilor, conține toate informațiile despre fiecare hash de tranzacție care există pe bloc. Oferă o valoare hash într-un singur punct care permite validarea a tot ceea ce este prezent pe acel bloc.

De exemplu, dacă trebuie să verificați o tranzacție care susține că provine din blocul nr. 137, trebuie doar să verifice arborele Merkle al blocului, fără a vă face griji cu privire la verificarea a oricăror alte blocuri din blockchain, cum ar fi blocul # 136 sau blocul # 138.

Introduceți rădăcina Merkle, care accelerează și mai mult verificarea. Deoarece transportă toate informațiile despre întregul arbore, trebuie doar să verificați acea tranzacție hash, nodul său frate (dacă există) și apoi continuați în sus până când ajunge în partea de sus.

În esență, arborele Merkle și mecanismul rădăcină Merkle reduc semnificativ nivelurile de hashing care trebuie efectuate, permițând verificări și tranzacții mai rapide.