أهم النقاط

  • شجرة ميركل هي بنية بيانات تشفيرية تنظم البيانات في أزواج من التجزئات، وتجمعها تصاعديًا حتى تمثل تجزئة واحدة، وهي جذر ميركل، مجموعة البيانات بأكملها.

  • تسمح جذور Merkle لشبكات البلوك تشين بالتحقق مما إذا كانت المعاملة مدرجة في كتلة دون تنزيل الكتلة الكاملة، باستخدام برهان Merkle مضغوط يتناسب لوغاريتميًا مع عدد المعاملات.

  • يقوم بيتكوين بتضمين جذر ميركل في كل رأس كتلة، مما يتيح للعملاء الخفيفين التحقق من المعاملات باستخدام رؤوس الكتل فقط بدلاً من سلسلة الكتل بأكملها.

  • يستخدم إيثيريوم شجرة ميركل باتريشيا أكثر تعقيدًا لتخزين أرصدة الحسابات وحالة العقد الذكي، مما يجعل إثباتات الحالة ممكنة للعملاء الخفيفين وعمليات التجميع من الطبقة الثانية.

BInance Academy courses banner

مقدمة

تُعدّ أشجار ميركل من الأفكار الأساسية التي تجعل أنظمة البلوك تشين فعّالة وقابلة للتحقق على نطاق واسع. فهي تُمكّن الشبكات من تلخيص مجموعات البيانات الكاملة في بصمة تشفيرية واحدة، مع إمكانية إثبات تضمين معاملة أو معلومة مُحدّدة. لفهم أهمية أشجار ميركل في تصميم البلوك تشين، دعونا نستعرض آلية عملها، وكيفية استخدامها في الشبكات المختلفة، وكيف يُمكن لهياكل أحدث، مثل أشجار فيركل، أن تُحسّنها في المستقبل.

كيف تعمل أشجار ميركل

شجرة ميركل، نسبةً إلى عالم الحاسوب رالف ميركل الذي حصل على براءة اختراع المفهوم عام 1979، هي بنية بيانات تُستخدم لتلخيص مجموعات البيانات الكبيرة والتحقق من سلامتها بكفاءة. في تقنية سلسلة الكتل (البلوك تشين)، تضغط أشجار ميركل آلاف المعاملات في قيمة واحدة مضغوطة تُخزّن في رأس الكتلة.

تُبنى الشجرة من الأسفل إلى الأعلى باستخدام دوال التشفير التجزئية. تحتوي كل عقدة طرفية على تجزئة لجزء واحد من البيانات، مثل معاملة. ثم تُجمع تجزئات هذه العقد الطرفية في أزواج: تُحسب تجزئة كل زوج بدمج تجزئي العقدتين الفرعيتين وتجزئة النتيجة. تتكرر هذه العملية صعودًا، طبقة تلو الأخرى، حتى تبقى تجزئة واحدة في الأعلى، وهي جذر ميركل.

نظرًا لأن كل عقدة أصلية تعتمد على كلتا عقدتيها الفرعيتين، فإن أي تغيير في إحدى الأوراق سيؤدي إلى سلسلة من التغييرات صعودًا، مُنتجًا جذر ميركل مختلفًا تمامًا. هذه الخاصية تجعل أشجار ميركل أداة فعالة لكشف التلاعب: فإذا أنتجت نسختان من مجموعة بيانات نفس جذر ميركل، فإن مجموعتي البيانات متطابقتان باحتمالية عالية جدًا.

جذور ميركل

جذر ميركل هو دالة تجزئة ثابتة الحجم، عادةً 32 بايت (256 بت) في تطبيقات البلوك تشين، تعمل كبصمة رقمية لمجموعة البيانات بأكملها. تتضمن رؤوس الكتل في معظم شبكات البلوك تشين جذر ميركل إلى جانب بيانات وصفية أخرى مثل الطوابع الزمنية وتجزئة الكتلة السابقة، مما يحافظ على صغر حجم الرؤوس مع ضمان الالتزام التشفيري بمجموعة المعاملات الكاملة داخل الكتلة.

لتوضيح ذلك ببساطة، دعونا ننظر إلى ملف بحجم 8 جيجابايت مقسم إلى ثمانية أجزاء. لنسمي الأجزاء المختلفة من A إلى H. ثم يتم تمرير كل جزء عبر دالة تجزئة، مما يعطينا ثمانية تجزئات مختلفة.

Fragments A-H and each of their hashes.
يتم استدعاء كل جزء من الأجزاء الثمانية من خلال دالة تجزئة للحصول على تجزئتها.

باستخدام تجزئة جميع الأجزاء، إذا كان أحدها معيبًا، فستعرف ذلك بمقارنته بتجزئة المصدر، أليس كذلك؟ ربما، لكن هذه الطريقة قد تكون غير فعّالة للغاية. إذا كان ملفك يحتوي على آلاف الأجزاء، فهل ستُجزئها جميعًا وتقارن النتائج بدقة؟

يوفر جذر ميركل حلاً أكثر أناقة. خذ كل زوج من التجزئات، واجمعها، ثم قم بتجزئتها معًا. ستحصل على التجزئة hA + hB، وhC + hD، وhE + hF، وhG + hH، وستحصل في النهاية على أربع تجزئات.

Merkle root first and second round of hashes
يبدو الهيكل كشجرة مقلوبة. في الصف السفلي، لدينا الأوراق، التي تتحد لتكوين العقد، وأخيراً، الجذر.

ثم، بعد جولة أخرى من التجزئة، ستحصل على قيمتين: hABCD و hEFGH. وأخيرًا، قم بتجزئة القيمتين المتبقيتين للوصول إلى التجزئة الرئيسية، وستحصل على جذر ميركل (أو تجزئة الجذر): hABCDEFGH.

إثباتات ميركل والتحقق منها

من أبرز الميزات العملية لأشجار ميركل القدرة على إثبات انتماء جزء محدد من البيانات إلى مجموعة البيانات دون الكشف عن المجموعة بأكملها. يُعرف هذا بإثبات ميركل. للتحقق من تضمين معاملة في كتلة، يحتاج العميل الخفيف فقط إلى المعاملة نفسها، ومجموعة صغيرة من تجزئات الأشقاء على طول المسار إلى الجذر، وجذر ميركل من رأس الكتلة. يُعيد المُدقِّق حساب التجزئات على طول المسار ويتحقق مما إذا كانت النتيجة تُطابق الجذر المعروف. إذا تطابقت، يُثبت رياضيًا أن المعاملة جزء من الكتلة.

Merkle verification example, three hash rounds
للتحقق من hD، نحتاج فقط إلى التجزئات الموضحة باللون الأحمر.

لنفترض سيناريو تريد فيه التحقق من معاملة معرفها hD. إذا توفر hC، يمكنك حساب hCD. ثم استخدم hAB لحساب hABCD. وأخيرًا، باستخدام hEFGH، تحقق من تطابق جذر Merkle الناتج مع الجذر الموجود في رأس الكتلة. إذا تطابقا، فهذا دليل على أن المعاملة قد أُدرجت في الكتلة. يكاد يكون من المستحيل إنشاء نفس التجزئة ببيانات مختلفة.

في المثال أعلاه، ستحتاج إلى إجراء عملية التجزئة ثلاث مرات فقط. أما بدون برهان ميركل، فسيتعين عليك القيام بذلك سبع مرات. وبما أن الكتل تحتوي حاليًا على آلاف المعاملات، فإن استخدام برهان ميركل يوفر الكثير من الوقت وموارد الحوسبة.

يزداد حجم الإثبات لوغاريتميًا مع عدد الأوراق: فلمليون معاملة (شجرة ثنائية بعمق 20)، لا يلزم سوى حوالي 20 تجزئة، أي ما يقارب 640 بايت. وهذا ما يسمح للعُقد الخفيفة، التي تُسمى أحيانًا عملاء التحقق المبسط من الدفع (SPV)، بالتحقق من المعاملات دون الحاجة إلى تنزيل سلسلة الكتل بأكملها، وهي عملية تتطلب في الأحوال العادية مئات الجيجابايت من البيانات.

أشجار ميركل في شبكات البلوك تشين

بيتكوين والتحقق من المعاملات

في بيتكوين، يحتوي رأس كل كتلة على جذر ميركل بحجم 32 بايت، يُؤكد جميع المعاملات في تلك الكتلة. يقوم مُعدّنو بيتكوين بإنشاء شجرة ميركل من المعاملات التي يُدرجونها، ويُدمج الجذر الناتج في رأس الكتلة إلى جانب آلية إثبات العمل. هذا التصميم يعني أن رأس الكتلة، الذي يبلغ حجمه عادةً حوالي 80 بايت، يكفي للتحقق من تضمين أي معاملة مُحددة في الكتلة، دون الحاجة إلى المعاملات الأخرى.

يستخدم بيتكوين أيضًا أشجار ميركل في اقتراحه MAST (أشجار بناء الجملة المجردة المُمَكْلَة)، مما يسمح بتمثيل شروط الإنفاق المعقدة في نصوص بيتكوين البرمجية كشجرة ميركل. ولا يلزم الكشف إلا عن الفرع المُنفَّذ من النص البرمجي، مما يحافظ على سرية الشروط غير المستخدمة ويقلل من حجم المعاملة.

إيثيريوم وإثباتات الحالة

تستخدم إيثيريوم نوعًا أكثر تطورًا يُسمى شجرة ميركل باتريشيا، وهي بنية شجرية سداسية (ذات 16 مسارًا) تُخزّن أرصدة الحسابات، وشفرة العقود، وبيانات التخزين. على عكس شجرة ميركل الثنائية البسيطة المستخدمة في معاملات بيتكوين، صُممت شجرة ميركل باتريشيا لدعم التحديثات المتكررة للحالة: فعندما يتغير رصيد الحساب، لا يلزم سوى إعادة حساب المسار من تلك الورقة إلى الجذر، بدلًا من إعادة بناء الشجرة بأكملها.

تُمكّن إثباتات الحالة المُولّدة من شجرة ميركل باتريشيا عملاء إيثيريوم الخفيفين وعمليات التجميع من الطبقة الثانية من التحقق من أرصدة الحسابات وتخزين العقود دون الحاجة إلى تشغيل عقدة كاملة. كما تُعدّ هذه الإثباتات ضرورية لجسور الربط بين السلاسل التي تحتاج إلى التحقق من الأحداث على سلسلة ما من سلسلة أخرى.

القيود والتطورات المستقبلية

رغم أن أشجار ميركل توفر تحققًا فعالًا، إلا أن أحجام الأدلة لا تزال تنمو لوغاريتميًا مع حجم البيانات. ففي إيثيريوم، مع ازدياد حجم البيانات، قد تصل أدلة التحقق من صحة الكتلة إلى عدة ميغابايت. وهذا يمثل تحديًا لقابلية التوسع بالنسبة للعملاء عديمي الحالة، الذين سيحتاجون إلى استقبال هذه الأدلة والتحقق منها لكل كتلة.

تُقدّم أشجار فيركل، التي تستخدم التزامات متجهة مبنية على التزامات متعددة الحدود (كيت-زافيروتشا-غولدبيرغ، أو KZG) بدلاً من التجزئة التقليدية، حلاً محتملاً. فمن خلال تجميع العديد من الأبناء تحت كل عقدة (معامل تفرع 256)، تُنتج أشجار فيركل براهين ذات حجم ثابت تقريباً، حوالي 170 بايت، بغض النظر عن حجم مجموعة البيانات. وتعمل إيثيريوم بنشاط على تطوير تكامل أشجار فيركل، ومن المتوقع نشره في تحديث مستقبلي. من شأن هذا الانتقال أن يُقلل بشكل كبير من حمل البيانات على العملاء الخفيفين ويُحسّن قابلية توسع الشبكة بشكل عام.

التعليمات

ما هي شجرة ميركل بعبارات بسيطة؟

شجرة ميركل هي طريقة لتنظيم البيانات بحيث يمكن لجزء صغير من المعلومات، وهو جذر ميركل، أن يمثل مجموعة كبيرة من البيانات. وتعمل هذه الشجرة عن طريق دمج أزواج البيانات معًا بشكل متكرر حتى يتبقى تجزئة واحدة فقط، مما يتيح التحقق مما إذا كان أي عنصر محدد ينتمي إلى المجموعة دون الحاجة إلى فحص كل عنصر على حدة.

ما هو جذر ميركل؟

جذر ميركل هو التجزئة الوحيدة في قمة شجرة ميركل. وهو بمثابة بصمة رقمية مختصرة لجميع البيانات الموجودة أسفله. في شبكات البلوك تشين، يُخزَّن جذر ميركل في رأس الكتلة ويُثبَّت على كل معاملة في تلك الكتلة، مما يسمح بالتحقق الفعال من أن المعاملة جزء من كتلة.

كيف يعمل برهان ميركل؟

يُقدّم برهان ميركل معاملةً مع الحد الأدنى من تجزئات المعاملات الشقيقة اللازمة لإعادة حساب المسار من تلك المعاملة وصولًا إلى جذر ميركل. يقوم المُدقّق بتجزئة المعاملة، ودمجها مع المعاملات الشقيقة المُقدّمة بالترتيب الصحيح، ثم يتحقق مما إذا كانت النتيجة النهائية تُطابق جذر ميركل المعروف في رأس الكتلة. إذا تطابقت، يُثبت تضمين المعاملة.

لماذا تعتبر أشجار ميركل مهمة لتقنية البلوك تشين؟

تُمكّن أشجار ميركل شبكات البلوك تشين من فصل رؤوس الكتل عن بيانات المعاملات الكاملة. يستطيع عميل خفيف تنزيل رؤوس الكتل فقط، أي ما يقارب 80 بايت لكل كتلة، ومع ذلك يمكنه التحقق من تضمين المعاملة باستخدام برهان ميركل مُختصر. بدون أشجار ميركل، يتطلب التحقق من المعاملة تنزيل الكتلة كاملة أو السلسلة بأكملها.

ما الفرق بين شجرة ميركل وشجرة فيركل؟

كلاهما عبارة عن مُجمِّعات تشفيرية تُستخدم لإثبات انتماء البيانات، لكنهما يستخدمان رياضيات مختلفة. تستخدم أشجار ميركل دوال التجزئة وتُنتج براهين يزداد حجمها لوغاريتميًا مع حجم مجموعة البيانات (O(log n)). أما أشجار فيركل فتستخدم التزامات متعددة الحدود (KZG) وتُنتج براهين ذات حجم ثابت تقريبًا، بضع مئات من البايتات بغض النظر عن حجم مجموعة البيانات، مما يجعلها أكثر ملاءمة لإثباتات حالة سلاسل الكتل واسعة النطاق.

الخاتمة

تُعدّ أشجار ميركل حجر الزاوية في بنية البلوك تشين، إذ تُمكّن من التحقق الموثوق على نطاق واسع. فمن خلال ضغط كتلة كاملة من المعاملات في تجزئة واحدة بحجم 32 بايت، تسمح هذه الأشجار للمشاركين بالتحقق من البيانات دون الحاجة إلى تنزيلها بالكامل، وهو مبدأ أساسي في كل شيء بدءًا من محافظ بيتكوين SPV وصولًا إلى إثباتات حالة إيثيريوم وجسور الربط بين السلاسل. ومع استمرار نمو شبكات البلوك تشين، قد تُكمّل أو تحلّ محلّها هياكل تشفيرية أحدث، مثل أشجار فيركل، أشجار ميركل، ولكن من المرجّح أن يبقى المفهوم الأساسي، وهو سلامة البيانات الفعّالة القائمة على التجزئة، لبنة أساسية في الأنظمة الموزّعة لسنوات قادمة.

للمزيد من القراءة

  • ما هي خوارزمية الإجماع في تقنية البلوك تشين؟

  • تاريخ علم التشفير

  • حلول توسيع نطاق الطبقة الأولى مقابل الطبقة الثانية في تقنية البلوك تشين

  • ما هو التجزئة وكيف يعمل؟

إخلاء المسؤولية: يُقدَّم هذا المحتوى لكم "كما هو" لأغراض المعلومات العامة والتعليمية فقط، دون أي ضمانات أو تعهدات من أي نوع. لا ينبغي اعتباره نصيحة مالية أو قانونية أو أي نصيحة مهنية أخرى، كما أنه لا يُقصد به التوصية بشراء أي منتج أو خدمة محددة. عليكم استشارة مستشارين متخصصين مؤهلين. في حال مساهمة طرف ثالث في المحتوى، يُرجى العلم بأن الآراء الواردة فيه تخص ذلك الطرف الثالث، ولا تعكس بالضرورة آراء أكاديمية باينانس. قد تكون أسعار الأصول الرقمية متقلبة. قد تنخفض قيمة استثماركم أو ترتفع، وقد لا تستردون المبلغ المستثمر. أنتم وحدكم المسؤولون عن قراراتكم الاستثمارية، وأكاديمية باينانس غير مسؤولة عن أي خسائر قد تتكبدونها. لمزيد من المعلومات، يُرجى الاطلاع على شروط الاستخدام، وتحذير المخاطر، وشروط أكاديمية باينانس.