آموزشمقالات اختصاصی

تعریف درخت مرکل یا Merkle Tree + مزایای استفاده از درخت مرکل

تعریف درخت مرکل یا Merkle Tree + مزایای استفاده از درخت مرکل

تعریف درخت مرکل یا Merkle Tree که می دانید درختان مرکل که درختان هش نیز نامیده می‌ شوند، جزء ضروری فناوری بلاک چین هستند در ادامه راجب مزایای آنها نیز صحبت خواهیم کرد.

در این مقاله، شما قرار است با اصول اولیه درختان مرکل در فناوری بلاک چین آشنا شوید.

درخت مرکل (Merkle Tree) چیست

درخت مرکل یا درخت هش که به نام دانشمند رالف مرکل نامگذاری شده است، یک شکل‌ دهی داده مبتنی بر هش است که در رمزنگاری و علوم رایانه استفاده می‌ شود.

توابع هش برای یکنواخت کردن محتوا در طول، ایمن کردن آن و شناسایی تراکنش ها در بلاک چین استفاده می شود.

در شبکه بیت کوین، از درختان مرکل برای تأیید داده ها استفاده می شود که کارآمد است زیرا به جای فایل اطلاعات کامل از هش استفاده می شود.

درخت مرکل درختی از مقادیر هش شده است که در تصویر زیر نشان داده شده است:

درخت مرکل (Merkle Tree) چیست
درخت مرکل (Merkle Tree) چیست

کادرهای پایین – “m0″، “m1″، “m2” و “m3” – نشان دهنده داده ها هستند.

این داده “m” بخشی از درخت مرکل در نظر گرفته نمی شود.

حال، اگر مقدار در چنین کادری – با حرف کوچک “m” – هش شود،

یک مقدار درهم شده دریافت می کنید که در کادر زرد بالا با حرف بزرگ “M” نشان داده شده است.

گره ریشه و گره برگ

جعبه‌ های زرد رنگ در اینفوگرافیک نشان‌ دهنده «گره‌ های برگ» هستند و داده‌ هایی را نشان می‌ دهند که هش شده‌ اند.

دو مقدار “M0” و “M1” ضمیمه می شوند، همانطور که با علامت “+” نشان داده شده و با هم هش می شوند،

همانطور که در کادر خاکستری تیره بالا نشان داده شده است،

نتیجه یک مقدار هش شده دیگری است که حاوی “مقادیر گره فرزند” است.

در نهایت، این مقادیر ضمیمه و هش می‌ شوند، که منجر به یک “ریشه” می‌ شود که “ریشه Merkle” نیز نامیده می‌ شود.

دو گره زیر یک گره والد “گره های فرزند” آن گره والد هستند.

هش ریشه بالاترین هش در ساختار داده مبتنی بر هش است.

آنچه برای ما مهم است، رابطه با بیت کوین است، جایی که این ریشه بخشی از هدر بلوک است.

این تضمین می کند که کدام تراکنش وجود دارد.

درخت مرکل از نوع خاصی از اصطلاحات توصیفی برای توصیف رابطه بین گره ها و سطوح گره ها استفاده می کند، مانند مورد استفاده در فرآیند تأیید پرداخت ساده (SPV).

گره ای که حاوی مقادیر دو گره زیر آن است، “والد” آن دو گره است.

اگر هر گره حداکثر دارای دو “گره کودک” یا “فرزند” باشد، به آن درخت هش باینری می گویند.

دو گره زیر یک گره والد “گره های فرزند” این گره والد هستند.

یک گره فرزند در کنار گره فرزند دیگر “خواهر و برادر” آن گره فرزند است.

تمام گره های پایین که هیچ “فرزند” ندارند “گره برگ” نامیده می شوند، آنها در یک سطح هستند.

دلیل این امر، همانطور که می بینید، این است که درخت هش یک ساختار درخت مانند است که هر گره برگ یک هش از یک بلوک داده است.

درختان مرکل معمولاً از ساختار درختی دوتایی استفاده می کنند، اما می توان از سطح خروجی بالاتری نیز استفاده کرد.

تنظیم درخت مرکل کامل به این صورت است که تعداد برگ ها همیشه 2n است، با مقدار “n” 1، 2، 3 و غیره.

هر گره هیچ گره فرزند یا دو “گره فرزند” ندارد.

درخت مرکل و بلاک چین
درخت مرکل و بلاک چین

درختان مرکل چگونه در فناوری بلاک چین استفاده می شوند و چرا؟

در شبکه بیت کوین، تمام تراکنش های داخل یک بلوک با تولید یک اثر انگشت دیجیتالی از کل مجموعه تراکنش ها، در درخت مرکل خلاصه می شود.

به این ترتیب کاربر می تواند بررسی کند که آیا تراکنش در یک بلوک گنجانده شده است یا خیر.

اکنون ممکن است از خود بپرسید که چرا برای اثبات این موضوع به درخت هش نیاز است؟

آیا نمی توان همه پیام ها (داده های اصلی) را هش کرد، مقادیر هش شده را در یک رشته قرار داد و مقدار هش ریشه را از این طریق بدست آورد؟

چرا درختان مرکل زندگی را آسان تر می کنند؟

زندگی را بدون درختان مرکل تصور کنید.

به جای ریشه مرکل، ما یک هش از تمام تراکنش‌ های بلاک چین را در هدر بلوک ذخیره می‌ کنیم.

این به این معنی که برای تأیید فقط یک تراکنش، باید داده ها را از همه آنها دانلود کنید.

درختان مرکل میزان داده های مورد نیاز برای تأیید را کاهش می دهند.

فرض کنید سو می خواهد به جان ثابت کند که تراکنش «m6» دستکاری نشده است.

جان می‌ تواند هش ریشه را از یک منبع مطمئن دریافت کند و تأیید کند که این مورد است.

اگر سو و جان بدون درختان مرکل پیش می‌ رفتند، سو باید تمام تراکنش‌ های هش‌ شده را به جان ارائه می‌ کرد تا ثابت کند که «m6» دستکاری نشده است.

درخت مرکل راه بسیار بهتری برای تأیید این موضوع ارائه می دهد.

دوباره جان ریشه را از منبعی می گیرد که به او اعتماد دارد.

این بار، اگر سو بخواهد ثابت کند که “m6” دستکاری نشده است، فقط باید پیام و چهار مقدار هش شده (به رنگ بنفش نشان داده شده است) را همانطور که در نمودار زیر مشخص شده است برای جان ارسال کند:

استفاده از درخت مرکل
استفاده از درخت مرکل

تمام گره‌ ها در ساختار درخت مانند درخت مرکل نمایش‌ دهنده‌ ای جزئی از داده‌ های هش‌ شده در زیر آنها هستند.

برگ های درخت مرکل هش تراکنش های فردی هستند.

مزایای استفاده از درخت مرکل

درخت مرکل استفاده و مزایای زیادی دارد که می توان به مهمترین آنها اشاره کرد :

  1. ایجاد روشی کارآمد و سریع برای اثبات صحت و اعتبار داده‌ ها
  2. کاهش میزان داده موردنیاز برای صحت‌ سنجی اطلاعات شبکه
  3. کاهش حافظه موردنیاز برای نگه‌ داری داده‌های شبکه
  4. امکان اعتبارسنجی به روش تأیید پرداخت ساده (SPV) برای کلاینت‌ های لایت بیت کوین
  5. سهولت انتقال و انتشار داده به سرتاسر شبکه
  6. امکان بررسی بخش‌ های مجزای بلاک‌ ها بدون نیاز به دراختیارداشتن تمام اطلاعات
  7. دسترسی به بخش‌ های مجزای داده بدون نیاز به بارگیری تمام اطلاعات

گردآوری: تیم تولید محتوای وبلاگ تترفا

میانگین امتیازات ۵ از ۵
از مجموع ۲ رای

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا