Plokiahel ja krüptovaluutad on suur ja keeruline maastik. Sellesse masinasse läheb palju hammasrattaid, sealhulgas midagi, mida tuntakse Merkle'i puuna. Merkle puud mängivad plokiahela funktsionaalsuses võtmerolli, kuid mida see täpselt teeb? Kuidas Merkle'i puu töötab ja miks on see plokiahela tehnoloogias nii oluline?

Kuidas plokiahel töötab?

Enne Merkle'i puu dünaamikaga tutvumist on oluline mõista kuidas plokiahelad töötavad.

Lihtsamalt öeldes on plokiahel virtuaalne plokkide ahel, millest igaüks sisaldab oma andmekomplekti. Iga plokk kasutab krüptograafiat, täpsemalt räsimist, et kaitsta andmeid ja hoida need pahatahtlike osalejate käest eemal.

Plokiahelaid kasutatakse kõige sagedamini krüptovaluutatööstuses, kus iga antud varaga tehtud tehing salvestatakse selle algsesse plokiahelasse. Lisaks registreeritakse iga tehing kronoloogiliselt ja see on nähtav kogu plokiahelale (vaadatav kasutades tööriistad nagu plokiahela uurija).

Plokiahela tehinguid ei saa muuta ega kustutada. Selle asemel, kasutades a

protsess, mida nimetatakse räsimiseks, andmed kodeeritakse matemaatiliste algoritmide abil. Need algoritmid võivad teisendada mis tahes pikkusega märgid fikseeritud, kodeeritud pikkuseks.

Plokiahelas tehingute salvestamisel mängivad Merkle puud otsustavat rolli. Aga kuidas Merkle puu töötab?

Mis on Merkle puu?

Nimel "Merkle puu" on kaks päritolu. "Merkle" viitab Ralph Merkle'ile, Ameerika arvutiteadlasele ja matemaatikule, kes andis suure panuse avaliku võtmega krüptograafiasse. Esialgu pakkus Merkle välja binaarsed räsipuud 1987. aastal artiklis pealkirjaga "Digiallkiri, mis põhineb Tavapärane krüpteerimisfunktsioon." Merkle leiutas ka krüptograafilise räsimise, mida Merkle'is kasutatakse puu.

"Merkle puu" teine ​​osa tuleneb selle struktuurist. Merkle'i puu (või binaarne räsipuu) on andmestruktuur, mis näeb välja nagu puu. Merkle'i puud sisaldavad "oksi" ja "lehti", kusjuures iga "leht" või "haru" sisaldab andmeploki räsi.

Lühidalt öeldes lihtsustab Merkle puu plokiahelas tehinguräside salvestamise protsessi. See koondab kõik tehingud ühte plokki ja kodeerib need tõhusalt turvalisemaks ja kiiremaks salvestamiseks ühe räsi kujul. Merkle'i puud kasutades saab ühe viimase räsi kaudu kiiresti hinnata andmete kehtivust. See lihtsustab andmete salvestamise protsessi, kuid säilitab ka turvalisuse terviklikkuse.

Merkle puud ei vaja ka palju arvutusressursse. Tegelikult vähendavad nad andmete jaoks vajalikku salvestusruumi, kompileerides mitu tehinguräsi ühte. Ressursside kasutamine on krüptotööstuses juba ammu vaidlusi tekitanud, kuna plokiahelavõrgud võivad salvestusruumi ja võimsust tohutult kulutada. Seega aitab Merkle puude kasutamine seda probleemi leevendada. Ahelasisene andmete salvestamine võib samuti olla kallis, nii et Merkle puude kasutamine andmemahu vähendamiseks võib aidata plokiahela platvormidel raha säästa.

Veelgi enam, Merkle puu protsess ei võta väga kaua aega, mis on tõhususe osas hea uudis. Lõppude lõpuks on paljud plokiahelad olnud nende pikkade tehinguaegade tõttu (sealhulgas Bitcoin), seega on kõik protsessid, mis võivad selle probleemiga toime tulla, plussiks.

Merkle'i puid kasutatakse paljudes andmetöötluse valdkondades (eriti krüptograafias ja krüptimises), kuid need on sageli tuntud oma krüptovaluutade plokiahelates. Bitcoin, Ethereum, Dogecoin ja kõik teised krüptovaluutad kasutavad Merkle'i puud, seega on see kahtlemata oluline element.

Niisiis, kuidas see töötab?

Kuidas Merkle'i puu töötab?

Allpool on diagramm, kuidas Merkle puu töötab. Pange tähele, et tegelikkuses oleks ühe puu kohta palju rohkem tehinguid ja räsi, kuid see pilt lihtsustab protsessi, et saaksite aimu kaasatud sammudest.

Pildi krediit: Azaghal/Wikimedia Commons

Seda Merkle'i puu diagrammi vaadates tunduvad asjad pisut keerulised. Kuid Merkle'i puu räsimise protsess on lagunemisel üsna lihtne.

Merkle'i puu protsessis on paar sammu. Merkle puu allosas olevaid räsi nimetatakse lehtedeks, samas kui puu keskel olevaid räsi nimetatakse oksteks. Harusid nimetatakse mõnikord ka mitte-lehtede sõlmedeks. Diagrammi allosas on andmeplokid (või tehingud), millest räsi välja tuleb.

Iga sõlme esialgsed tehingud räsitakse paarikaupa, tulemuseks jääb üks räsi. Seejärel räsitakse paar paari korduvalt üheks, kuni ilmub üks räsi, millega protsess lõpeb. Kui plokis juhtub olema paaritu arv tehinguid, siis üks tehing dubleeritakse, et seda saaks räsimiseks originaaliga siduda.

Kuigi viimane räsi kuvatakse ülaltoodud diagrammi ülaosas, tuntakse seda kui puu "juurt" (juure räsi). Juur on sisuliselt kõigi plokki salvestatud tehingute üksikute räside kulminatsiooniräsi. Ploki kohta on nõutav üks Merkle puu, mis tähendab, et igal plokil on üks Merkle juure andmeväli.

Kui olete kunagi plokiahelaid põhjalikult uurinud, olete ehk kuulnud Merkle Rootist või Merkle Hashist. Plokis on midagi, mida nimetatakse hashMerkleRootiks. Neid andmeid (lõplikku räsi puu lõpus) ​​hoitakse antud ploki plokipäises. A plokiahela plokk sisaldab ka muid andmeid, nagu ajatempel, vara versiooninumber ja "nonce" (ainult üks kord kasutatav number).

Kas plokiahelad võivad toimida ilma Merkle puudeta?

Kuigi Merkle puud pole plokiahela eksisteerimiseks absoluutselt vajalikud, on neil andmete turvamisel uskumatult oluline roll.

Ilma Merkle puudeta nõuavad krüptovaluuta plokiahelad võtmeprotsesside läbiviimiseks rohkem ressursse ja aega. Esiteks peaks iga võrgusõlm säilitama oma koopia igast plokiahelas tehtud tehingust. Suuremates plokiahelates saab ühe korraga toimuda sadu tuhandeid tehinguid päeval, nii et sellise andmemahu lisamine iga sõlme koopiasse kuluks kahtlemata palju ressursse.

Veelgi enam, Merkle puud mängivad andmete kontrollimisel suurt rolli. Puu lõpus oleva ühe juure räsi kaudu saavad valideerijad ja kaevandajad kontrollida, kas plokk tervikuna sobib plokiahelasse lisamiseks. Andmete autentimine ilma iga tehingut läbi vaatamata on plussiks, mis säästab aega ja salvestusruumi.

Merkle'i puud on plokiahela funktsionaalsuse võtmeks

Ei saa eitada, et Merkle puud pakuvad plokiahelate turvalisust ja tõhusust, võtmata palju ruumi. See vahva krüptograafiline protsess võimaldab plokiahelatel sujuvalt toimida ilma liigse ressursside kasutamiseta. Merkle puud ei ole olulised, kuid aja, salvestusruumi ja andmete autentimise osas tohutult kasulikud.