Мерклийн мод гэж юу вэ? Энэхүү блокчейн бүрэлдэхүүн хэсгийн анхан шатны гарын авлага

Мерклийн мод нь блокчейн үндсэн бүрэлдэхүүн хэсэг бөгөөд тэдгээрийн үйл ажиллагааг дэмждэг. Эдгээр нь том өгөгдлийн бүтцийг үр дүнтэй, найдвартай баталгаажуулах боломжийг олгодог бөгөөд блокчейн хувьд хязгааргүй мэдээллийн багц юм.

Merkle модыг блокчлон дээр хэрэгжүүлэх нь олон үр нөлөөтэй байдаг. Энэ нь өгөгдлийн бүрэн бүтэн байдлыг хадгалахын тулд хэш-д суурилсан архитектурыг хангахын зэрэгцээ өгөгдлийн бүрэн бүтэн байдлыг шалгах энгийн арга замыг хангах боломжийг олгодог.

Криптографийн хэш функцууд нь Меркле модыг ажиллуулах боломжийг олгодог үндсэн технологи учраас эхлээд криптограф хэш функц гэж юу болохыг ойлгох нь чухал юм.

Түргэн шийдвэр: Merkle модууд нь криптограф хэшүүдээс бүрдсэн мэдээллийн бүтэц бөгөөд том өгөгдлийн багцын бүрэн бүтэн байдлыг үр дүнтэй баталгаажуулах, зураглах боломжийг олгодог бөгөөд блокчейн болон тархсан хувилбарын хяналт зэрэг системийн салшгүй бүрэлдэхүүн хэсэг болгодог.


Түргэн баримтууд

Гол онооТодорхойлолт
Криптографийн хэш функцуудЯмар ч хэмжээтэй оролт авч, тогтмол урттай хэш утгыг гаргадаг хэш функцууд. Мерклийн модонд ашигладаг.
Мерклийн модны бүтэцНавчгүй зангилаа бүр нь түүний хүүхэд зангилааны хэш болох модны өгөгдлийн бүтэц. Том өгөгдлийн багцын үр дүнтэй зураглал, баталгаажуулалтыг идэвхжүүлдэг.
Үндэс хэшБүхэл модны хэшийг илэрхийлдэг Меркле модны дээд талд байгаа хэш. Бүрэн мэдээллийн багцад хурууны хээний үүрэг гүйцэтгэдэг.
Мерклийн нотолгооӨгөгдлийн бүрэн бүтэн байдал, мод дахь байрлалыг бүрэн өгөгдлийн багц шаардлагагүйгээр шалгахыг зөвшөөр, зөвхөн root хэш.
Биткойн дахь хэрэгжилтMerkle мод нь гүйлгээг блок болгон хадгалдаг. Блокны толгой хэсэгт хадгалагдсан эх хэш нь SPV зангилааг гүйлгээг шалгах боломжийг олгодог.
Бусад блокчейн хэрэгжилтИлүү нарийн төвөгтэй Merkle Patricia модыг ашигладаг Ethereum зэрэг олон блокчэйнд ашиглагддаг.
Түгээмэл системүүдGit & IPFS зэрэг хувилбарын хяналтын системд үе тэнгийнхэнтэйгээ хуваалцсан өгөгдлийг хялбархан шалгахыг зөвшөөрнө үү.

Криптографийн хэш функцууд

Энгийнээр хэлэхэд хэш функц нь дурын хэмжээтэй (оролт) өгөгдлийг тогтмол хэмжээтэй гаралт руу буулгахад ашигладаг аливаа функц юм. Мэдээллийн оролтод хэш алгоритмыг ашигладаг бөгөөд үр дүнд нь тогтмол урттай гаралтыг хэш гэж нэрлэдэг.

Олон хэш алгоритмууд нь олон нийтэд нээлттэй бөгөөд таны хэрэгцээнд тулгуурлан сонгож болно.

Дурын оролтын үр дүнд бий болсон хэш нь зөвхөн уртаар тогтоогдоод зогсохгүй оролтын хувьд бүрэн өвөрмөц бөгөөд функц нь өөрөө тодорхойлогддог. Өөрөөр хэлбэл, та функцийг нэг оролт дээр хэчнээн удаа ажиллуулснаас үл хамааран гаралт нь үргэлж ижил байх болно.

Жишээлбэл, хэрэв танд доорх өгөгдлийн багцууд оролт болгон байгаа бол үр дүн нь оролт бүрийн хувьд өвөрмөц байна. Хоёр болон гурав дахь жишээн дээр оролтын зөрүү нь зөвхөн нэг үгтэй байсан ч гарах үр дүн нь огт өөр болохыг анзаараарай.

Энэ нь мэдээллийн "хурууны хээ" авах боломжийг олгодог тул маш чухал юм.

Криптограф хэш функц, Википедиагаас авсан зураг

Гаралтын (жишээнд байгаа хэш нийлбэр) урт нь ашигласан хэш алгоритмаар тодорхойлогддогтой үргэлж ижил байдаг тул асар их хэмжээний өгөгдлийг зөвхөн тэдгээрийн үүссэн хэшээр дамжуулан тодорхойлох боломжтой.

Асар их хэмжээний өгөгдөл агуулсан системүүдийн хувьд тогтмол урттай гаралттай өгөгдлийг хадгалах, тодорхойлох давуу тал нь хадгалалтын асар их хэмнэлтийг бий болгож, үр ашгийг нэмэгдүүлэхэд тусалдаг.

Блокчейн дотор хэш алгоритмыг блокчейн төлөвийг тодорхойлоход ашигладаг.

Блокчейн нь өмнөх блок руу чиглэсэн өгөгдөл, хэш заагч агуулсан холбогдсон жагсаалтууд бөгөөд холбогдсон блокуудын гинжийг үүсгэдэг тул "блокчэйн" гэж нэрлэдэг.

Блок бүр өөр хоорондоо хэш заагчаар холбогддог бөгөөд энэ нь өмнөх блок доторх өгөгдлийн хэш, өмнөх блокийн хаягийн хамт байдаг. Мэдээллийн блокуудыг энэ форматаар холбосноор өмнөх блокуудын үүссэн хэш бүр нь блокчэйний бүх төлөвийг илэрхийлдэг, учир нь өмнөх блокуудын хэшлэгдсэн бүх өгөгдлийг нэг хэш болгон хувиргадаг.

Үүнийг (SHA-256 алгоритмын хувьд) дараах байдлаар (хэш) илэрхийлнэ.

b09a57d476ea01c7f91756adff1d560e579057ac99a28d3f30e259b30ecc9dc7

Дээрх хэш нь блокчейн өмнөх бүх төлөвийн хурууны хээ юм. Шинэ блок хийхээс өмнөх блокчейн төлөв (хэшлэгдсэн өгөгдөл гэх мэт) нь оролт бөгөөд үүссэн хэш нь гаралт юм.

Хэдийгээр Merkle модгүйгээр криптограф хэшийг ашиглах боломжтой боловч энэ нь маш үр ашиггүй бөгөөд өргөтгөх боломжгүй юм. Мэдээллийг блокт цуврал хэлбэрээр хадгалахын тулд хэш ашиглах нь цаг хугацаа их шаарддаг бөгөөд төвөгтэй байдаг.

Таны харж байгаагаар Мерклийн моднууд нь мэдээллийн бүрэн бүтэн байдлыг өчүүхэн төдийлөн шийдвэрлэх, мөн Мерклийн баталгааг ашиглан тухайн өгөгдлийг бүхэлд нь модоор дүрслэх боломжийг олгодог.


Мерклийн мод ба Мерклийн нотолгоо

1979 онд энэхүү үзэл баримтлалыг патентжуулсан Ральф Мерклийн нэрээр нэрлэгдсэн Мерклийн мод нь үндсэндээ өгөгдлийн бүтцийн мод бөгөөд навч бус зангилаа бүр нь тус тусын хүүхдийн зангилааны хэш юм.

Навч зангилаа нь модны зангилааны хамгийн доод давхарга юм. Эхлээд ойлгоход хэцүү мэт санагдаж болох ч доорх түгээмэл хэрэглэгддэг зургийг харвал ойлгоход илүү хялбар болно.

Хэш мод

Хоёртын хэш модны жишээ, Википедиагийн зураг

Зүүн талд байгаа навч бус зангилаа буюу "салбарууд" (Хэш 0-0 ба Хэш 0-1-ээр илэрхийлэгддэг) нь тус тусын L1 ба L2 хүүхдүүдийн хэш болж байгааг анзаараарай. Цаашилбал, Хэш 0 нь түүний холбосон хүүхдийн хэш, Хэш 0-0 ба Хэш 0-1 салбаруудын хэш болохыг анхаарна уу.

Дээрх жишээ бол хоёртын Мерклийн мод гэгддэг Мерклийн модны хамгийн түгээмэл бөгөөд энгийн хэлбэр юм. Таны харж байгаагаар үндсэн хэш гэж нэрлэгддэг бүхэл бүтэн модны хэш болох дээд хэш байдаг. Үндсэндээ Merkle мод нь "n" тооны хэш авч, нэг хэшээр илэрхийлэх боломжтой өгөгдлийн бүтэц юм.

Модны бүтэц нь дур зоргоороо их хэмжээний өгөгдлийн зураглалыг үр дүнтэй хийх боломжийг олгодог бөгөөд энэ өгөгдөлд хаана өөрчлөлт гарч байгааг хялбархан тодорхойлох боломжийг олгодог. Энэхүү үзэл баримтлал нь Merkle нотлох боломжийг олгодог бөгөөд үүний тусламжтайгаар хэн нэгэн хэшийн багцыг бүхэлд нь харахгүйгээр өгөгдлийн хэш нь мод хүртэл тогтвортой, зөв ​​байрлалд байгаа эсэхийг шалгаж болно.

Үүний оронд тэд өгөгдлийн багцыг бүхэлд нь биш харин зөвхөн хэшийн жижиг дэд багцыг шалгах замаар өгөгдлийн хэсэг нь эх хэштэй нийцэж байгаа эсэхийг шалгаж болно.

Үндэс хэш нь олон нийтэд мэдэгдэж, найдвартай бол мэдээллийн бааз дээр түлхүүр утгын хайлт хийхийг хүссэн хүн бүр өгөгдлийн сан дахь өгөгдлийн нэг хэсэг, байрлал, бүрэн бүтэн байдлыг шалгахын тулд Merkle баталгааг ашиглах боломжтой. тодорхой үндэс.

Үндэс хэш боломжтой үед хэш модыг ямар ч итгэмжгүй эх сурвалжаас хүлээн авах боломжтой бөгөөд модыг бүхэлд нь ашиглах боломжгүй байсан ч өгөгдлийн бүрэн бүтэн байдлыг нэн даруй баталгаажуулснаар модны нэг салбарыг нэг дор татаж авах боломжтой.

Merkle модны бүтцийн хамгийн чухал давуу талуудын нэг нь хамаагүй бага хэмжээний өгөгдлийг шалгахад ашигладаг ижил төстэй хэшлэх механизмаар дур мэдэн том багц өгөгдлийг баталгаажуулах чадвар юм.

Энэ мод нь нийт өгөгдлийн хэмжээ их байгаа хэдий ч бүрэн бүтэн байдлыг баталгаажуулахад саад тотгор багассан их хэмжээний өгөгдлийг удирдах боломжтой жижиг хэсгүүдэд хуваарилахад давуу талтай.

Үндэс хэшийг бүхэл өгөгдлийн багцад хурууны хээ болгон ашиглаж болно, үүнд бүх мэдээллийн сан эсвэл блокчейн төлөвийг бүхэлд нь төлөөлөх боломжтой. Дараах хэсгүүдэд бид Bitcoin болон бусад системүүд Merkle модыг хэрхэн хэрэгжүүлэх талаар ярилцах болно.


Bitcoin дахь Мерклийн мод

Биткойны ашигладаг криптограф хэш функц нь SHA-256 алгоритм юм. Энэ нь "Secure Hashing Algorithm" гэсэн үг бөгөөд гаралт нь тогтмол 256 бит урттай. Bitcoin дахь Merkle модны үндсэн үүрэг бол блок бүрт гүйлгээг хадгалах, эцэст нь тайрах явдал юм.

Өмнө дурьдсанчлан блокчэйн дэх блокууд нь өмнөх блокийн хэшүүдээр холбогддог. Bitcoin-д блок бүр нь тухайн блок доторх бүх гүйлгээ, мөн блокийн толгой хэсгийг агуулдаг бөгөөд үүнд:

  • Блок хувилбарын дугаар
  • Өмнөх блок хэш
  • Цаг хугацаа
  • Уул уурхайн хүндрэлийн зорилт
  • Үгүй
  • Merkle Root Hash

Доорх зураг нь биткойны цагаан цааснаас авсан бөгөөд Меркле мод блок бүрт хэрхэн нийцэж байгааг харуулж байна.

Merkle мод

Гүйлгээг уурхайчид блок болгон оруулж, Merkle модны нэг хэсэг болгон хэшж, блокийн толгой хэсэгт хадгалагдсан Merkle үндэс рүү хөтөлдөг. Энэхүү загвар нь хэд хэдэн тодорхой давуу талуудтай.

Хамгийн гол нь цагаан цаасанд дурьдсанчлан энэ нь "хөнгөн үйлчлүүлэгч" гэгддэг Энгийн төлбөрийн баталгаажуулалтын (SPV) зангилаа байх боломжийг олгодог. Эдгээр зангилаанууд нь Bitcoin блокчэйнийг бүхэлд нь татаж авах шаардлагагүй, зөвхөн хамгийн урт гинжин хэлхээний блокийн толгойнуудыг татаж авах хэрэгтэй.

SPV зангилаанууд нь ажиллаж байгаа блокийн толгойнууд нь хамгийн урт гинжин хэлхээний нэг хэсэг гэдэгт итгэлтэй болох хүртлээ үе тэнгийн зангилаанаас асууж, үүнд хүрч чадна. Дараа нь SPV зангилаа нь хамгийн урт гинжин хэлхээний хэсэг болох блокийн толгой хэсэгт тухайн Merkle модны үндэс хэш бүхий тодорхой Merkle мод руу гүйлгээг зураглахын тулд Merkle нотлох баримтыг ашиглан гүйлгээний статусыг тодорхойлох боломжтой.

Нэмж дурдахад, Bitcoin-ийн Merkle модыг хэрэгжүүлснээр зай хэмнэхийн тулд блокчлоныг тайрах боломжийг олгодог. Энэ нь зөвхөн үндсэн хэшийг блокийн толгой хэсэгт хадгалсны үр дүн тул Мерклийн модны шаардлагагүй мөчрүүдийг арилгах замаар хуучин блокуудыг тайрч, зөвхөн Merkle баталгаажуулахад шаардлагатай мөчрүүдийг хадгалах боломжтой.


Merkle модыг бусад блокчейн болон системд нэвтрүүлэх

Хэдийгээр Bitcoin нь Merkle модыг хэрэгжүүлсэн анхны блокчейн байсан ч бусад олон блокчэйн нь ижил төстэй Merkle модны бүтцийг эсвэл бүр илүү төвөгтэй хувилбаруудыг хэрэгжүүлдэг.

Цаашилбал, Merkle модны хэрэгжилт нь зөвхөн блокчейнээр хязгаарлагдахгүй бөгөөд бусад олон төрлийн системд хэрэглэгдэж байна.

Бусад хамгийн алдартай криптовалют болох Ethereum нь Merkle модыг өөр өөр хэрэгжүүлэлтийн гайхалтай жишээ юм. Ethereum нь илүү төвөгтэй програмуудыг бүтээх платформ болохын хувьд бүрэн гүйцэд тул Меркле модны илүү төвөгтэй хувилбарыг Меркле Патрисиа мод гэж нэрлэдэг бөгөөд энэ нь үнэндээ гурван төрлийн объектод ашиглагддаг 3 тусдаа Мерклийн мод юм. Та эдгээр модны талаар илүү ихийг мэдэх боломжтой.

Эцэст нь, Merkle мод нь Git болон IPFS зэрэг тархсан хувилбарын хяналтын системийн чухал бүрэлдэхүүн хэсэг юм. P2P форматаар компьютеруудын хооронд хуваалцсан өгөгдлийн бүрэн бүтэн байдлыг хялбархан баталгаажуулж, баталгаажуулах чадвар нь тэдгээрийг эдгээр системүүдэд үнэлж баршгүй болгодог.


Дүгнэлт

Меркле мод нь блокчейн салшгүй бүрэлдэхүүн хэсэг бөгөөд тэдгээр нь өөрчлөгдөөгүй, гүйлгээний бүрэн бүтэн байдлыг үр дүнтэй ажиллуулах боломжийг олгодог.

Криптографийн хэш функцүүдийн үндсэн технологийг түгээх сүлжээнд гүйцэтгэх үүрэг, тэдгээрийн үндсэн технологийг ойлгох нь криптовалютууд илүү том, илүү төвөгтэй системүүд болон хөгжиж байгаа тул үндсэн ойлголтуудыг ойлгоход маш чухал юм.

Эх сурвалж: https://blockonomi.com/merkle-tree/