Merkle Tree yog dab tsi? Beginner's Guide to this Blockchain Component

Merkle Tsob Ntoo yog ib qho tseem ceeb ntawm cov blockchains uas txhawb nqa lawv txoj haujlwm. Lawv tso cai rau kev txheeb xyuas cov ntaub ntawv loj thiab ruaj ntseg, thiab nyob rau hauv cov ntaub ntawv ntawm blockchains, cov ntaub ntawv tsis muaj boundless.

Kev siv Merkle ntoo hauv blockchains muaj ntau yam teebmeem. Nws tso cai rau lawv ntsuas thaum tseem muab cov hash-based architecture rau lawv kom tswj cov ntaub ntawv kev ncaj ncees thiab txoj hauv kev tsis tseem ceeb los xyuas qhov tseeb ntawm cov ntaub ntawv.

Cryptographic hash functions yog lub hauv paus thev naus laus zis uas tso cai rau cov ntoo Merkle ua haujlwm, yog li ua ntej, nws yog ib qho tseem ceeb kom nkag siab txog dab tsi cryptographic hash functions yog.

Ceev Tseg: Merkle ntoo yog cov ntaub ntawv cov qauv tsim los ntawm cryptographic hashes uas tso cai rau kev txheeb xyuas kev ncaj ncees thiab ua daim ntawv qhia txog cov ntaub ntawv loj, ua rau lawv yog ib qho tseem ceeb ntawm cov tshuab xws li blockchains thiab kev faib tawm kev tswj hwm.


Cov Lus Tseeb Tseeb

Ntsiab ntsiab lusHauj lwm
Cryptographic hash muaj nuj nqiHash muaj nuj nqi uas coj ib qho kev tawm tswv yim ntawm txhua qhov loj me thiab tso tawm qhov ntev ntev hash tus nqi. Siv hauv Merkle ntoo.
Merkle ntoo qauvTsob ntoo cov ntaub ntawv uas txhua qhov tsis-nplooj node yog ib qho hash ntawm nws cov menyuam nodes. Ua kom muaj peev xwm ua tau zoo thiab ua pov thawj ntawm cov ntaub ntawv loj.
Hauv paus hashHash nyob rau sab saum toj ntawm tsob ntoo Merkle uas sawv cev rau lub hash ntawm tag nrho tsob ntoo. Ua raws li tus ntiv tes rau cov ntaub ntawv tag nrho.
Merkle pov thawjTso cai rau kev txheeb xyuas cov ntaub ntawv kev ncaj ncees thiab txoj hauj lwm hauv tsob ntoo yam tsis xav tau cov ntaub ntawv tag nrho, tsuas yog hauv paus hash.
Kev nqis tes ua hauv BitcoinMerkle ntoo khaws cov khoom lag luam hauv cov blocks. Hauv paus hash khaws cia rau hauv block header tso cai rau SPV nodes los txheeb xyuas kev lag luam.
Lwm yam kev siv blockchainSiv ntau lub blockchains xws li Ethereum uas siv ntau dua Merkle Patricia Ntoo.
Distributed systemsTso cai rau kev tswj hwm version xws li Git & IPFS kom yooj yim txheeb xyuas cov ntaub ntawv sib koom ntawm cov phooj ywg.

Cryptographic Hash Functions

Yooj yim muab tso, hash muaj nuj nqi yog txhua yam haujlwm uas yog siv los qhia cov ntaub ntawv ntawm qhov loj me (cov tswv yim) mus rau qhov tso zis loj. Ib qho hashing algorithm yog siv rau cov ntaub ntawv tawm tswv yim thiab cov txiaj ntsig ntev ntev tau raug xa mus rau qhov hash.

Ntau cov hashing algorithms tau nthuav dav rau pej xeem thiab tuaj yeem xaiv raws li koj xav tau.

Lub resulting hash los ntawm arbitrary input tsis tsuas yog tsau nyob rau hauv ntev, nws kuj yog kiag li tshwj xeeb rau cov tswv yim thiab cov hauj lwm nws tus kheej yog deterministic. Ntawd yog, tsis muaj teeb meem pes tsawg zaus koj khiav txoj haujlwm ntawm tib lub tswv yim, cov zis yuav ib txwm zoo ib yam.

Piv txwv li, yog tias koj muaj cov ntaub ntawv hauv qab no hauv qab no ua ib qho kev tawm tswv yim, cov txiaj ntsig tau tshwm sim yog qhov tshwj xeeb rau txhua qhov kev tawm tswv yim. Daim ntawv ceeb toom yuav ua li cas hauv qhov piv txwv thib ob thiab thib peb, txawm tias qhov sib txawv ntawm cov khoom siv tsuas yog ib lo lus xwb, cov txiaj ntsig tau tshwm sim txawv kiag li.

Qhov no tseem ceeb heev vim nws tso cai rau "tus ntiv tes" ntawm cov ntaub ntawv.

Ib tug cryptographic hash muaj nuj nqi, Duab los ntawm Wikipedia

Txij li thaum cov zis (hash sum hauv qhov piv txwv) ntev yog ib txwm zoo ib yam li kev txiav txim siab los ntawm hashing algorithm siv, cov ntaub ntawv loj loj tuaj yeem txheeb xyuas los ntawm lawv cov txiaj ntsig hash.

Nrog cov tshuab uas muaj cov ntaub ntawv loj heev, cov txiaj ntsig ntawm kev tuaj yeem khaws thiab txheeb xyuas cov ntaub ntawv nrog lub sijhawm ntev tso tawm tuaj yeem tsim kev txuag nyiaj ntau thiab pab txhawb kev ua haujlwm.

Hauv blockchains, hashing algorithms yog siv los txiav txim lub xeev ntawm blockchain.

Blockchains yog cov npe sib txuas uas muaj cov ntaub ntawv thiab tus taw qhia hash uas taw qhia rau yav dhau los thaiv, tsim cov saw hlau txuas nrog, yog li lub npe "blockchain".

Txhua qhov thaiv tau txuas rau ib leeg los ntawm tus taw tes hash, uas yog tus hash ntawm cov ntaub ntawv hauv lub block dhau los nrog rau qhov chaw nyob ntawm qhov thaiv dhau los. Los ntawm kev txuas cov blocks ntawm cov ntaub ntawv hauv hom ntawv no, txhua qhov tshwm sim ntawm qhov thaiv dhau los sawv cev rau tag nrho lub xeev ntawm blockchain txij li tag nrho cov ntaub ntawv hashed ntawm cov blocks dhau los yog hashed rau hauv ib qho hash.

Qhov no yog sawv cev (nyob rau hauv rooj plaub ntawm SHA-256 algorithm) los ntawm cov zis (hash) xws li qhov no:

b09a57d476ea01c7f91756adff1d560e579057ac99a28d3f30e259b30ecc9dc7

Lub hash saum toj no yog tus ntiv tes ntawm tag nrho lub xeev ntawm blockchain ua ntej nws. Lub xeev ntawm blockchain ua ntej lub block tshiab (raws li cov ntaub ntawv hashed) yog cov tswv yim, thiab qhov tshwm sim hash yog cov zis.

Txawm hais tias nws muaj peev xwm siv cryptographic hashs yam tsis muaj Merkle ntoo, nws tsis muaj txiaj ntsig thiab tsis tuaj yeem ua tau. Kev siv cov hashs khaws cov ntaub ntawv hauv ib qho thaiv hauv ib hom ntawv yog siv sijhawm thiab cumbersome.

Raws li koj yuav pom, Merkle ntoo tso cai rau kev daws teeb meem tsis tseem ceeb ntawm cov ntaub ntawv kev ncaj ncees nrog rau daim ntawv qhia cov ntaub ntawv los ntawm tag nrho cov ntoo siv Merkle pov thawj.


Merkle Ntoo thiab Merkle Pov Thawj

Lub npe tom qab Ralph Merkle, uas tau patented lub tswvyim nyob rau hauv 1979, Merkle ntoo hauv paus yog cov ntaub ntawv qauv ntoo uas txhua qhov tsis-nplooj node yog ib tug hash ntawm nws cov me nyuam nodes.

Cov nplooj ntawm cov nplooj yog qhov qis tshaj ntawm cov nodes hauv tsob ntoo. Thaum xub thawj, nws yuav nyuaj rau kev nkag siab, tab sis yog tias koj saib ntawm daim duab uas siv hauv qab no, nws yuav nkag siab yooj yim dua.

Ntoo Ntoo

Ib qho piv txwv ntawm tsob ntoo binary hash, Duab los ntawm Wikipedia

Qhov tseem ceeb, ceeb toom yuav ua li cas cov tsis-nplooj nodes los yog "txog" (sawv cev los ntawm Hash 0-0 thiab Hash 0-1) nyob rau sab laug, yog hashes ntawm lawv cov menyuam L1 thiab L2. Ntxiv mus, ceeb toom yuav ua li cas ceg Hash 0 yog tus hash ntawm nws cov me nyuam concatenated, ceg Hash 0-0 thiab Hash 0-1.

Cov piv txwv saum toj no yog daim ntawv yooj yim tshaj plaws ntawm Merkle tsob ntoo hu ua Binary Merkle Tree. Raws li koj tau pom, muaj ib tug sab saum toj hash uas yog lub hash ntawm tag nrho cov ntoo, hu ua lub hauv paus hash. Qhov tseem ceeb, Merkle ntoo yog cov qauv ntaub ntawv uas tuaj yeem nqa "n" tus lej ntawm hashs thiab sawv cev nrog ib tus hash.

Cov qauv ntawm tsob ntoo tso cai rau kev ua haujlwm zoo ntawm cov ntaub ntawv loj ntawm cov ntaub ntawv thiab ua kom yooj yim txheeb xyuas qhov hloov pauv ntawm cov ntaub ntawv ntawd tshwm sim. Lub tswv yim no ua rau Merkle cov ntaub ntawv pov thawj, nrog rau qhov no, ib tus neeg tuaj yeem tshawb xyuas tias cov ntaub ntawv hashing zoo ib yam li txhua txoj hauv kev nce toj thiab hauv txoj haujlwm raug yam tsis tas yuav saib tag nrho cov hashs.

Hloov chaw, lawv tuaj yeem txheeb xyuas tau tias cov ntaub ntawv chunk zoo ib yam nrog lub hauv paus hash los ntawm tsuas yog xyuas ib qho me me ntawm cov hashs es tsis yog tag nrho cov ntaub ntawv teev.

Tsuav yog lub hauv paus hash paub rau pej xeem paub thiab ntseeg siab, nws muaj peev xwm rau txhua tus neeg uas xav ua qhov tseem ceeb-tus nqi saib ntawm cov ntaub ntawv siv Merkle pov thawj los txheeb xyuas txoj haujlwm thiab kev ncaj ncees ntawm ib daim ntaub ntawv hauv cov ntaub ntawv uas muaj. ib lub hauv paus tshwj xeeb.

Thaum lub hauv paus hash muaj, tsob ntoo hash tuaj yeem tau txais los ntawm txhua qhov chaw tsis ntseeg thiab ib ceg ntoo tuaj yeem rub tawm ib lub sijhawm nrog kev tshuaj xyuas tam sim ntawm cov ntaub ntawv ncaj ncees, txawm tias tag nrho tsob ntoo tseem tsis tau muaj.

Ib qho txiaj ntsig tseem ceeb tshaj plaws ntawm Merkle tsob ntoo qauv yog lub peev xwm los txheeb xyuas cov ntaub ntawv loj ntawm cov ntaub ntawv los ntawm cov cuab yeej zoo sib xws uas siv los txheeb xyuas cov ntaub ntawv me me.

Tsob ntoo yog qhov zoo rau kev faib cov ntaub ntawv loj rau hauv cov khoom me me uas qhov kev tiv thaiv rau kev pov thawj ntawm kev ncaj ncees yog txo qis txawm tias tag nrho cov ntaub ntawv loj dua.

Lub hauv paus hash tuaj yeem siv los ua tus ntiv tes rau tag nrho cov ntaub ntawv teeb tsa, suav nrog tag nrho cov ntaub ntawv lossis sawv cev rau tag nrho lub xeev ntawm blockchain. Hauv ntu nram qab no, peb yuav tham txog yuav ua li cas Bitcoin thiab lwm lub tshuab siv Merkle ntoo.


Merkle Tsob Ntoo hauv Bitcoin

Lub cryptographic hash muaj nuj nqi ua haujlwm los ntawm Bitcoin yog SHA-256 algorithm. Qhov no sawv cev rau "Secure Hashing Algorithm", uas nws cov zis yog qhov ntev 256 qhov ntev. Lub luag haujlwm tseem ceeb ntawm Merkle ntoo hauv Bitcoin yog khaws cia, thiab thaum kawg txiav cov kev hloov pauv hauv txhua qhov thaiv.

Raws li tau hais ua ntej, cov blocks hauv blockchain txuas nrog los ntawm hashes ntawm cov block dhau los. Hauv Bitcoin, txhua qhov thaiv muaj tag nrho cov kev lag luam hauv qhov thaiv ntawd nrog rau cov block header uas muaj:

  • Thaiv Version Number
  • Previous Block Hash
  • Timestamp
  • Lub Hom Phiaj Nyuaj Siab Mining
  • Nonce
  • Merkle Root Hash

Cov duab hauv qab no yog los ntawm Bitcoin whitepaper thiab qhia txog tias tsob ntoo Merkle haum rau txhua qhov thaiv.

Merkle Ntoo

Cov kev hloov pauv tau suav nrog rau hauv cov blocks los ntawm cov miners thiab tau hashed ua ib feem ntawm tsob ntoo Merkle, ua rau lub hauv paus Merkle uas tau muab khaws cia rau hauv lub block header. Qhov kev tsim no muaj ntau qhov txiaj ntsig sib txawv.

Qhov tshwj xeeb tshaj plaws, raws li tau teev tseg hauv daim ntawv dawb, qhov no tso cai rau muaj nyob ntawm Simple Payment Verification (SPV) nodes, tseem hu ua "cov neeg siv khoom hnyav". Cov nodes tsis tas yuav rub tawm tag nrho Bitcoin blockchain, tsuas yog cov block headers ntawm cov saw ntev tshaj plaws.

SPV nodes tuaj yeem ua tiav qhov no los ntawm kev nug lawv cov neeg sib koom ua ke kom txog rau thaum lawv ntseeg tau tias cov block headers uas lawv tau ua haujlwm yog ib feem ntawm cov saw ntev tshaj plaws. Ib qho SPV node muaj peev xwm txiav txim siab txog qhov xwm txheej ntawm kev lag luam los ntawm kev siv Merkle pov thawj los qhia txog kev hloov pauv mus rau ib tsob ntoo Merkle tshwj xeeb nrog rau Merkle tsob ntoo hauv paus hash nyob rau hauv lub block header uas yog ib feem ntawm cov saw ntev tshaj plaws.

Tsis tas li ntawd, Bitcoin qhov kev siv ntawm Merkle ntoo tso cai rau pruning ntawm blockchain thiaj li yuav txuag tau qhov chaw. Qhov no yog qhov tshwm sim ntawm tsuas yog lub hauv paus hash khaws cia rau hauv lub block header, yog li ntawd, cov blocks qub tuaj yeem raug txiav los ntawm kev tshem tawm cov ceg tsis tsim nyog ntawm tsob ntoo Merkle thaum tsuas yog khaws cov uas xav tau rau Merkle pov thawj.


Kev nqis tes ua ntawm Merkle Ntoo hauv Lwm Cov Blockchains thiab Systems

Txawm hais tias Bitcoin yog thawj blockchain los siv Merkle ntoo, ntau lwm cov blockchains siv cov qauv zoo li Merkle ntoo lossis ntau cov qauv nyuaj.

Ntxiv mus, Merkle tsob ntoo kev siv tsis yog tsuas yog txwv rau blockchains thiab siv rau ntau yam ntawm lwm lub tshuab.

Ethereum, yog lwm qhov kev paub zoo tshaj plaws cryptocurrency, kuj yog ib qho piv txwv zoo ntawm kev siv tsob ntoo Merkle sib txawv. Vim Ethereum yog turing-ua tiav raws li lub platform rau kev tsim ntau yam kev siv, nws siv ib tug complex version ntawm Merkle ntoo hu ua Merkle Patricia Tsob Ntoo uas yog 3 cais Merkle ntoo siv rau peb yam khoom. Koj tuaj yeem kawm paub ntxiv txog cov ntoo ntawm no.

Thaum kawg, Merkle ntoo yog ib qho tseem ceeb ntawm kev faib tawm tswj cov tshuab xws li Git thiab IPFS. Lawv lub peev xwm los xyuas kom meej thiab txheeb xyuas qhov ncaj ncees ntawm cov ntaub ntawv sib koom ntawm cov khoos phis tawj hauv P2P hom ua rau lawv tsis muaj nuj nqis rau cov tshuab no.


xaus

Merkle ntoo yog ib qho tseem ceeb ntawm cov blockchains thiab ua rau lawv ua haujlwm nrog kev ua tsis tau zoo thiab kev ua lag luam ncaj ncees.

Nkag siab txog lub luag haujlwm uas lawv ua si hauv kev sib koom tes thiab lawv cov thev naus laus zis ntawm cryptographic hash lub luag haujlwm yog qhov tseem ceeb rau kev nkag siab cov ntsiab lus tseem ceeb hauv cryptocurrencies thaum lawv txuas ntxiv txhim kho mus rau hauv cov txheej txheem loj thiab ntau dua.

Tau qhov twg los: https://blockonomi.com/merkle-tree/