【⑮】مرکل ٹری کیا ہے؟ 🌳


 ⫘⫘⫘گذشتہ سے پیوستہ⫘⫘⫘

مرکل ٹری کیا ہے؟ 🌳

مرکل ٹری ایک بائنری ٹری ڈیٹا سٹرکچر ہے جو بلوک چین میں ٹرانزیکشنز کے ہیشز کو ایک منظم اور موثر انداز میں سمیٹتی ہے۔ اس کا بنیادی مقصد ہے:

  • کارکردگی: ہزاروں ٹرانزیکشنز کو ایک چھوٹے سے ہیش (مرکل روٹ) میں سمیٹنا۔ 📦
  • سالمیت: ٹرانزیکشنز کی تصدیق کو تیز اور محفوظ بنانا۔ 🔐
  • اسکیل ایبلٹی: بڑے ڈیٹا سیٹس کو ہینڈل کرنا آسان بنانا، خاص طور پر بٹ کوائن اور ایتھریم جیسے نیٹ ورکس میں۔ 🌐

مرکل ٹری کا نام رالف مرکل کے نام پر پڑا، جنہوں نے 1979 میں اس ڈیٹا سٹرکچر کا تصور پیش کیا۔ یہ بلوک کے تمام ٹرانزیکشنز کے ہیشز کو ایک مرکل روٹ (root) میں سمیٹتا ہے، جو بلوک ہیڈر کا حصہ ہوتا ہے۔ 🧱


مرکل ٹری کیسے بنتی ہے؟ 🛠️

مرکل ٹری بنانے کا عمل ایک منظم، مرحلہ وار طریقہ ہے جو ہیشنگ پر مبنی ہوتا ہے۔ چلیں، اسے قدم بہ قدم سمجھتے ہیں:

  1. ٹرانزیکشنز کے ہیش بنانا 🔢:
    • ہر بلوک میں متعدد ٹرانزیکشنز ہوتی ہیں (مثلاً، بٹ کوائن میں ایک بلوک میں سینکڑوں سے ہزاروں ٹرانزیکشنز ہو سکتی ہیں)۔ 📝
    • ہر ٹرانزیکشن کا ایک منفرد ہیش بنایا جاتا ہے، عام طور پر SHA-256 ہیش فنکشن سے۔ مثال:
      • ٹرانزیکشن 1: "علی نے بوبو کو 0.1 BTC بھیجا" → ہیش: H1
      • ٹرانزیکشن 2: "بوبو نے صبا کو 0.2 BTC بھیجا" → ہیش: H2
    • یہ ہیشز مرکل ٹری کے لیف نوڈس (سب سے نچلی سطح) بنتے ہیں۔ 🍃
  2. جوڑوں میں ہیشنگ 🤝:
    • لیف نوڈس (ٹرانزیکشن ہیشز) کو جوڑوں میں جوڑا جاتا ہے، اور ہر جوڑے کو دوبارہ ہیش کیا جاتا ہے۔ مثال:
      • اگر H1 اور H2 دو ٹرانزیکشن ہیشز ہیں، تو انہیں ملا کر (concatenate) ایک نیا ہیش بنتا ہے:
        text
        H12 = SHA-256(H1 + H2)
    • یہ نیا ہیش ایک پیرنٹ نوڈ بنتا ہے۔ اگر ٹرانزیکشنز کی تعداد طاق ہو، تو آخری ہیش کو اپنے ساتھ دوبارہ ہیش کیا جاتا ہے (مثلاً H3 + H3)۔ 🔄
  3. ٹری کی تعمیر 🌲:
    • پیرنٹ نوڈس کو مزید جوڑوں میں ہیش کیا جاتا ہے، اور یہ عمل اس وقت تک جاری رہتا ہے جب تک ایک واحد ہیش (مرکل روٹ) نہ بن جائے۔
    • مثال: اگر ایک بلوک میں 4 ٹرانزیکشنز ہیں (T1, T2, T3, T4):
      • لیف نوڈس: H1 = SHA-256(T1), H2 = SHA-256(T2), H3 = SHA-256(T3), H4 = SHA-256(T4)
      • پہلا لیئر: H12 = SHA-256(H1 + H2), H34 = SHA-256(H3 + H4)
      • دوسرا لیئر (مرکل روٹ): H1234 = SHA-256(H12 + H34)
    • یہ مرکل روٹ بلوک ہیڈر میں شامل ہوتا ہے۔ 🧱
  4. بلوک ہیڈر میں شامل:
    • مرکل روٹ بلوک کے تمام ٹرانزیکشنز کا ایک کمپریسڈ نمائندہ ہوتا ہے۔ یہ بلوک ہیڈر کا حصہ ہوتا ہے، جو مائنرز (PoW) یا ویلیڈیٹرز (PoS) استعمال کرتے ہیں۔ 🔐
    • بلوک ہیڈر میں دیگر چیزیں بھی ہوتی ہیں جیسے پچھلے بلوک کا ہیش، ٹائم اسٹیمپ، اور نانس۔ 📋

مرکل ٹری کی اہمیت 🌟

مرکل ٹری بلوک چین میں کئی وجوہات سے اہم ہے:

  1. کارکردگی:
    • ہزاروں ٹرانزیکشنز کو ایک چھوٹے سے ہیش (مرکل روٹ) میں سمیٹ کر ڈیٹا سٹوریج اور تصدیق کو موثر بناتا ہے۔ 📦
    • نوڈس کو ہر ٹرانزیکشن کو انفرادی طور پر چیک کرنے کی ضرورت نہیں؛ وہ صرف مرکل روٹ سے تصدیق کر سکتے ہیں۔ 🚀
  2. سالمیت:
    • اگر کوئی ٹرانزیکشن بدلی جاتی ہے، تو اس کا ہیش بدل جاتا ہے، جو پورے مرکل ٹری اور مرکل روٹ کو بدل دیتا ہے۔ اس سے چھیڑ چھاڑ فوراً پکڑی جاتی ہے۔ 🔍
  3. ہلکے نوڈس (Light Nodes):
    • کچھ نوڈس (جیسے موبائل والیٹس) پوری بلوک چین نہیں رکھتے۔ وہ سمپل فائیڈ پیمنٹ ویریفکیشن (SPV) کے ذریعے صرف مرکل روٹ اور چند ہیشز سے ٹرانزیکشن کی تصدیق کر سکتے ہیں۔ 📱
  4. اسکیل ایبلٹی:
    • بڑے پیمانے پر ٹرانزیکشنز کو ہینڈل کرنے کے لیے مرکل ٹری ضروری ہے، کیونکہ یہ ڈیٹا کو کمپریس کرتا ہے۔ 🌐

مرکل ٹری بننے کا عمل (مثال):

فرض کریں ایک بلوک میں 4 ٹرانزیکشنز ہیں: T1, T2, T3, T4۔ مرکل ٹری اس طرح بنتی ہے:

  1. لیف نوڈس:
    • H1 = SHA-256(T1)
    • H2 = SHA-256(T2)
    • H3 = SHA-256(T3)
    • H4 = SHA-256(T4)
  2. پہلا لیئر:
    • H12 = SHA-256(H1 + H2)
    • H34 = SHA-256(H3 + H4)
  3. مرکل روٹ:
    • Root = SHA-256(H12 + H34)
    • یہ Root بلوک ہیڈر میں جاتا ہے۔ 🧱

اگر ٹرانزیکشنز کی تعداد طاق ہو (مثلاً 5)، تو آخری ہیش کو اپنے ساتھ ہیش کیا جاتا ہے:

  • H5 = SHA-256(T5)
  • H55 = SHA-256(H5 + H5)

تکنیکی تفصیلات:

  • ہیش فنکشن: بٹ کوائن اور ایتھریم میں SHA-256 استعمال ہوتا ہے، لیکن بعض نیٹ ورکس دیگر فنکشنز (جیسے Keccak) بھی استعمال کرتے ہیں۔ 🔢
  • اسپیس سیونگ: اگر ایک بلوک میں 1000 ٹرانزیکشنز ہیں، تو ان کے ہیشز (~32 بائٹس فی ہیش) کو مرکل ٹری میں سمیٹ کر صرف 32 بائٹس کا مرکل روٹ بنتا ہے۔ 📉
  • تصدیق: اگر کوئی ایک ٹرانزیکشن چیک کرنا چاہتا ہے، تو اسے صرف چند ہیشز (مرکل پاتھ) کی ضرورت ہوتی ہے، نہ کہ پورے بلوک کی۔ 🕵️‍♂️
  • چیلنج: اگر ٹرانزیکشنز کی تعداد بہت زیادہ ہو، تو مرکل ٹری بنانے میں کمپیوٹیشنل پاور لگتی ہے، لیکن یہ اب بھی موثر ہے۔ 💻

آسان مثال:

مرکل ٹری ایسی ہے جیسے آپ ایک بڑی کتاب کے تمام صفحات کے خلاصے کو ایک چھوٹے سے نوٹ میں سمیٹ دیں۔ اگر کوئی ایک صفحہ بدلے، تو خلاصہ بدل جاتا ہے، اور آپ فوراً پکڑ لیتے ہیں کہ کچھ غلط ہے۔ 📚


⫘⫘⫘جاری ہے⫘⫘⫘

ایک تبصرہ شائع کریں

جدید تر اس سے پرانی