رول أب متفائل
تعتبر رول أب متفائل بروتوكولات طبقة 2 (L2) مصممة لزيادة قدرة المعالجة للطبقة الأساسية لإيثيريوم. إنها تقلل الحسابات على سلسلة إيثيريوم الرئيسية عن طريق معالجة المعاملات خارج السلسلة، مما يوفر تحسينات كبيرة في سرعات المعالجة. على عكس حلول التوسيع الأخرى، مثل السلاسل الجانبية، تستمد رول أب متفائل الأمان من الشبكة الرئيسية عن طريق نشر نتائج المعاملات على السلسلة، أو سلاسل بلازما، التي تتحقق أيضًا من المعاملات على إيثيريوم باستخدام إثباتات الاحتيال، ولكنها تخزن بيانات المعاملات في مكان آخر.
نظرًا لأن الحساب هو الجزء البطيء والمكلف من استخدام إيثيريوم، يمكن أن توفر رول أب متفائل تحسينات في قابلية التوسع تصل إلى 10-100x. تكتب رول أب متفائل أيضًا المعاملات إلى إيثيريوم كـ calldata أو في كتل بيانات، مما يقلل من تكاليف الغاز للمستخدمين.
المتطلبات الأساسية
يجب أن تكون قد قرأت وفهمت صفحاتنا حول توسيع إيثيريوم وطبقة 2 (L2).
ما هو رول أب متفائل؟
رول أب متفائل هو نهج لتوسيع إيثيريوم يتضمن نقل الحساب وتخزين الحالة خارج السلسلة. تنفذ رول أب متفائل المعاملات خارج إيثيريوم، ولكنها تنشر بيانات المعاملات إلى الشبكة الرئيسية كـ calldata أو في كتل بيانات.
يقوم مشغلو رول أب متفائل بتجميع معاملات متعددة خارج السلسلة معًا في دفعات كبيرة قبل إرسالها إلى إيثيريوم. يتيح هذا النهج توزيع التكاليف الثابتة عبر معاملات متعددة في كل دفعة، مما يقلل الرسوم للمستخدمين النهائيين. تستخدم رول أب متفائل أيضًا تقنيات الضغط لتقليل كمية البيانات المنشورة على إيثيريوم.
تعتبر رول أب متفائل "متفائلة" لأنها تفترض أن المعاملات خارج السلسلة صالحة ولا تنشر إثباتات الصلاحية لدفعات المعاملات المنشورة على السلسلة. هذا يفصل رول أب متفائل عن تجميعات المعرفة الصفرية التي تنشر المشفرة للمعاملات خارج السلسلة.
تعتمد رول أب متفائل بدلاً من ذلك على مخطط إثبات الاحتيال لاكتشاف الحالات التي لا يتم فيها حساب المعاملات بشكل صحيح. بعد إرسال دفعة تجميع على إيثيريوم، هناك نافذة زمنية (تسمى فترة التحدي) يمكن خلالها لأي شخص تحدي نتائج معاملة التجميع عن طريق حساب .
إذا نجح إثبات الاحتيال، يعيد بروتوكول التجميع تنفيذ المعاملة (المعاملات) ويحدث حالة التجميع وفقًا لذلك. التأثير الآخر لإثبات الاحتيال الناجح هو أن المُسلسِل المسؤول عن تضمين المعاملة المنفذة بشكل غير صحيح في كتلة يتلقى عقوبة.
إذا ظلت دفعة التجميع دون تحدي (أي يتم تنفيذ جميع المعاملات بشكل صحيح) بعد انقضاء فترة التحدي، فإنها تعتبر صالحة ومقبولة على إيثيريوم. يمكن للآخرين الاستمرار في البناء على كتلة تجميع غير مؤكدة، ولكن مع تحذير: سيتم عكس نتائج المعاملة إذا كانت تستند إلى معاملة منفذة بشكل غير صحيح تم نشرها مسبقًا.
كيف تتفاعل رول أب متفائل مع إيثيريوم؟
تعتبر رول أب متفائل حلول توسيع خارج السلسلة مبنية للعمل فوق إيثيريوم. تتم إدارة كل رول أب متفائل بواسطة مجموعة من العقود الذكية المنشورة على شبكة إيثيريوم. تعالج رول أب متفائل المعاملات خارج سلسلة إيثيريوم الرئيسية، ولكنها تنشر المعاملات خارج السلسلة (في دفعات) إلى عقد تجميع على السلسلة. مثل سلسلة كتل إيثيريوم، فإن سجل المعاملات هذا غير قابل للتغيير ويشكل "سلسلة رول أب متفائل".
تتكون بنية رول أب متفائل من الأجزاء التالية:
العقود على السلسلة: يتم التحكم في تشغيل رول أب متفائل بواسطة عقود ذكية تعمل على إيثيريوم. يتضمن ذلك العقود التي تخزن كتل التجميع، وتراقب تحديثات الحالة على التجميع، وتتتبع إيداعات المستخدمين. بهذا المعنى، تعمل إيثيريوم كطبقة أساسية أو "طبقة 1 (L1)" لرول أب متفائل.
الآلة الافتراضية خارج السلسلة (VM): على الرغم من أن العقود التي تدير بروتوكول رول أب متفائل تعمل على إيثيريوم، فإن بروتوكول التجميع يقوم بالحساب وتخزين الحالة على آلة افتراضية أخرى منفصلة عن آلة إيثيريوم الافتراضية. الآلة الافتراضية خارج السلسلة هي المكان الذي توجد فيه التطبيقات ويتم تنفيذ تغييرات الحالة؛ وهي تعمل كطبقة عليا أو "طبقة 2 (L2)" لرول أب متفائل.
نظرًا لأن رول أب متفائل مصممة لتشغيل برامج مكتوبة أو مجمعة لـ EVM، فإن الآلة الافتراضية خارج السلسلة تتضمن العديد من مواصفات تصميم EVM. بالإضافة إلى ذلك، تسمح إثباتات الاحتيال المحسوبة على السلسلة لشبكة إيثيريوم بفرض صلاحية تغييرات الحالة المحسوبة في الآلة الافتراضية خارج السلسلة.
توصف رول أب متفائل بأنها 'حلول توسيع هجينة' لأنها، على الرغم من وجودها كبروتوكولات منفصلة، تستمد خصائص الأمان الخاصة بها من إيثيريوم. من بين أمور أخرى، تضمن إيثيريوم صحة الحساب خارج السلسلة للتجميع وتوافر البيانات وراء الحساب. هذا يجعل رول أب متفائل أكثر أمانًا من بروتوكولات التوسيع خارج السلسلة البحتة (مثل السلاسل الجانبية) التي لا تعتمد على إيثيريوم للأمان.
تعتمد رول أب متفائل على بروتوكول إيثيريوم الرئيسي لما يلي:
توافر البيانات
كما ذكرنا، تنشر رول أب متفائل بيانات المعاملات إلى إيثيريوم كـ calldata أو كتل بيانات. نظرًا لأن تنفيذ سلسلة التجميع يعتمد على المعاملات المرسلة، يمكن لأي شخص استخدام هذه المعلومات—المرتكزة على الطبقة الأساسية لإيثيريوم—لتنفيذ حالة التجميع والتحقق من صحة انتقالات الحالة.
يعد توافر البيانات أمرًا بالغ الأهمية لأنه بدون الوصول إلى بيانات الحالة، لا يمكن للمتحدين بناء إثباتات الاحتيال للطعن في عمليات التجميع غير الصالحة. مع توفير إيثيريوم لتوافر البيانات، يتم تقليل خطر إفلات مشغلي التجميع من الأفعال الخبيثة (مثل إرسال كتل غير صالحة).
مقاومة الرقابة
تعتمد رول أب متفائل أيضًا على إيثيريوم لمقاومة الرقابة. في رول أب متفائل، يكون كيان مركزي (المشغل) مسؤولاً عن معالجة المعاملات وإرسال كتل التجميع إلى إيثيريوم. هذا له بعض الآثار:
-
يمكن لمشغلي التجميع فرض رقابة على المستخدمين عن طريق عدم الاتصال بالإنترنت تمامًا، أو عن طريق رفض إنتاج كتل تتضمن معاملات معينة فيها.
-
يمكن لمشغلي التجميع منع المستخدمين من سحب الأموال المودعة في عقد التجميع عن طريق حجب بيانات الحالة اللازمة لإثباتات ميركل للملكية. يمكن أن يؤدي حجب بيانات الحالة أيضًا إلى إخفاء حالة التجميع عن المستخدمين ومنعهم من التفاعل مع التجميع.
تحل رول أب متفائل هذه المشكلة عن طريق إجبار المشغلين على نشر البيانات المرتبطة بتحديثات الحالة على إيثيريوم. نشر بيانات التجميع على السلسلة له الفوائد التالية:
-
إذا أصبح مشغل رول أب متفائل غير متصل بالإنترنت أو توقف عن إنتاج دفعات المعاملات، يمكن لعقدة أخرى استخدام البيانات المتاحة لإعادة إنتاج الحالة الأخيرة للتجميع ومواصلة إنتاج الكتل.
-
يمكن للمستخدمين استخدام بيانات المعاملات لإنشاء إثباتات ميركل تثبت ملكية الأموال وسحب أصولهم من التجميع.
-
يمكن للمستخدمين أيضًا إرسال معاملاتهم على طبقة 1 (L1) بدلاً من المُسلسِل، وفي هذه الحالة يجب على المُسلسِل تضمين المعاملة ضمن حد زمني معين للاستمرار في إنتاج كتل صالحة.
تسوية
دور آخر تلعبه إيثيريوم في سياق رول أب متفائل هو دور طبقة التسوية. ترتكز طبقة التسوية على النظام البيئي لسلسلة الكتل بأكمله، وتؤسس الأمان، وتوفر نهائية موضوعية في حالة حدوث نزاع على سلسلة أخرى (رول أب متفائل في هذه الحالة) يتطلب التحكيم.
توفر شبكة إيثيريوم الرئيسية مركزًا لرول أب متفائل للتحقق من إثباتات الاحتيال وحل النزاعات. علاوة على ذلك، فإن المعاملات التي يتم إجراؤها على التجميع تكون نهائية فقط بعد قبول كتلة التجميع على إيثيريوم. بمجرد الالتزام بمعاملة تجميع في الطبقة الأساسية لإيثيريوم، لا يمكن التراجع عنها (إلا في الحالة غير المحتملة للغاية المتمثلة في إعادة التنظيم للسلسلة).
كيف تعمل رول أب متفائل؟
تنفيذ المعاملات وتجميعها
يرسل المستخدمون المعاملات إلى "المشغلين"، وهي عقد مسؤولة عن معالجة المعاملات على رول أب متفائل. يُعرف المشغل أيضًا باسم "مُدَقِّق" أو "مُجَمِّع"، ويقوم بتجميع المعاملات، وضغط البيانات الأساسية، ونشر الكتلة على إيثيريوم.
على الرغم من أنه يمكن لأي شخص أن يصبح مُدَقِّقًا، يجب على مُدَقِّقي رول أب متفائل تقديم ضمان قبل إنتاج الكتل، تمامًا مثل نظام إثبات الحصة (PoS). يمكن اقتطاع هذا الضمان إذا نشر المُدَقِّق كتلة غير صالحة أو بنى على كتلة قديمة ولكن غير صالحة (حتى لو كانت كتلته صالحة). بهذه الطريقة تستخدم رول أب متفائل الحوافز الاقتصادية المشفرة لضمان تصرف المُدَقِّقين بصدق.
يُتوقع من المُدَقِّقين الآخرين على سلسلة رول أب متفائل تنفيذ المعاملات المرسلة باستخدام نسختهم من حالة التجميع. إذا كانت الحالة النهائية للمُدَقِّق مختلفة عن الحالة المقترحة للمشغل، فيمكنهم بدء تحدي وحساب إثبات الاحتيال.
قد تتخلى بعض رول أب متفائل عن نظام مُدَقِّق غير مقيد بإذن وتستخدم "مُسلسِل" واحد لتنفيذ السلسلة. مثل المُدَقِّق، يعالج المُسلسِل المعاملات، وينتج كتل التجميع، ويرسل معاملات التجميع إلى سلسلة طبقة 1 (L1) (إيثيريوم).
يختلف المُسلسِل عن مشغل التجميع العادي لأن لديه تحكمًا أكبر في ترتيب المعاملات. أيضًا، يتمتع المُسلسِل بأولوية الوصول إلى سلسلة التجميع وهو الكيان الوحيد المصرح له بإرسال المعاملات إلى العقد على السلسلة. يتم ببساطة وضع المعاملات من العقد غير المُسلسِلة أو المستخدمين العاديين في قائمة انتظار في صندوق وارد منفصل حتى يقوم المُسلسِل بتضمينها في دفعة جديدة.
إرسال كتل التجميع إلى إيثيريوم
كما ذكرنا، يقوم مشغل رول أب متفائل بتجميع المعاملات خارج السلسلة في دفعة ويرسلها إلى إيثيريوم للتوثيق. تتضمن هذه العملية ضغط البيانات المتعلقة بالمعاملات ونشرها على إيثيريوم كـ calldata أو في كتل بيانات.
تعتبر calldata منطقة غير قابلة للتعديل وغير دائمة في عقد ذكي تتصرف في الغالب مثل الذاكرة. بينما تستمر calldata على السلسلة كجزء من سجلات التاريخ (opens in a new tab) لسلسلة الكتل، لا يتم تخزينها كجزء من حالة إيثيريوم. نظرًا لأن calldata لا تلمس أي جزء من حالة إيثيريوم، فهي أرخص من الحالة لتخزين البيانات على السلسلة.
تُستخدم الكلمة الرئيسية calldata أيضًا في Solidity لتمرير الوسائط إلى وظيفة عقد ذكي في وقت التنفيذ. تحدد calldata الوظيفة التي يتم استدعاؤها أثناء معاملة وتحتفظ بمدخلات الوظيفة في شكل تسلسل عشوائي من البايتات.
في سياق رول أب متفائل، تُستخدم calldata لإرسال بيانات المعاملات المضغوطة إلى العقد على السلسلة. يضيف مشغل التجميع دفعة جديدة عن طريق استدعاء الوظيفة المطلوبة في عقد التجميع وتمرير البيانات المضغوطة كوسائط للوظيفة. يقلل استخدام calldata من رسوم المستخدمين نظرًا لأن معظم التكاليف التي تتكبدها التجميعات تأتي من تخزين البيانات على السلسلة.
إليك مثال (opens in a new tab) على إرسال دفعة تجميع لإظهار كيف يعمل هذا المفهوم. استدعى المُسلسِل طريقة appendSequencerBatch() ومرر بيانات المعاملات المضغوطة كمدخلات باستخدام calldata.
تستخدم بعض التجميعات الآن كتل بيانات لنشر دفعات من المعاملات إلى إيثيريوم.
تعتبر كتل البيانات غير قابلة للتعديل وغير دائمة (تمامًا مثل calldata) ولكن يتم تقليمها من التاريخ بعد حوالي 18 يومًا. لمزيد من المعلومات حول كتل البيانات، راجع تجزئة دانك.
التزامات الحالة
في أي وقت، يتم تنظيم حالة رول أب متفائل (الحسابات، الأرصدة، كود العقد، إلخ) كـ شجرة ميركل تسمى "شجرة الحالة". يتم تجزئة جذر شجرة ميركل هذه (جذر الحالة)، والذي يشير إلى أحدث حالة للتجميع، وتخزينه في عقد التجميع. ينتج عن كل انتقال للحالة على السلسلة حالة تجميع جديدة، يلتزم بها المشغل عن طريق حساب جذر حالة جديد.
يُطلب من المشغل إرسال كل من جذور الحالة القديمة وجذور الحالة الجديدة عند نشر الدفعات. إذا كان جذر الحالة القديم يطابق جذر الحالة الحالي في العقد على السلسلة، يتم تجاهل الأخير واستبداله بجذر الحالة الجديد.
يُطلب من مشغل التجميع أيضًا الالتزام بجذر ميركل لدفعة المعاملات نفسها. هذا يسمح لأي شخص بإثبات تضمين معاملة في الدفعة (على طبقة 1 (L1)) من خلال تقديم إثبات ميركل.
تعتبر التزامات الحالة، وخاصة جذور الحالة، ضرورية لإثبات صحة تغييرات الحالة في رول أب متفائل. يقبل عقد التجميع جذور الحالة الجديدة من المشغلين فور نشرها، ولكن يمكنه لاحقًا حذف جذور الحالة غير الصالحة لاستعادة التجميع إلى حالته الصحيحة.
إثبات الاحتيال
كما أوضحنا، تسمح رول أب متفائل لأي شخص بنشر الكتل دون تقديم إثباتات الصلاحية. ومع ذلك، لضمان بقاء السلسلة آمنة، تحدد رول أب متفائل نافذة زمنية يمكن خلالها لأي شخص الطعن في انتقال الحالة. ومن ثم، تسمى كتل التجميع "تأكيدات" حيث يمكن لأي شخص الطعن في صلاحيتها.
إذا طعن شخص ما في تأكيد، فسيبدأ بروتوكول التجميع في حساب إثبات الاحتيال. كل نوع من إثبات الاحتيال تفاعلي—يجب على شخص ما نشر تأكيد قبل أن يتمكن شخص آخر من تحديه. يكمن الاختلاف في عدد جولات التفاعل المطلوبة لحساب إثبات الاحتيال.
تعيد مخططات الإثبات التفاعلي أحادية الجولة تشغيل المعاملات المتنازع عليها على طبقة 1 (L1) لاكتشاف التأكيدات غير الصالحة. يحاكي بروتوكول التجميع إعادة تنفيذ المعاملة المتنازع عليها على طبقة 1 (L1) (إيثيريوم) باستخدام عقد متحقق، مع تحديد جذر الحالة المحسوب لمن يفوز بالتحدي. إذا كانت مطالبة المتحدي حول الحالة الصحيحة للتجميع صحيحة، تتم معاقبة المشغل عن طريق اقتطاع ضمانه.
ومع ذلك، تتطلب إعادة تنفيذ المعاملات على طبقة 1 (L1) لاكتشاف الاحتيال نشر التزامات الحالة للمعاملات الفردية وتزيد من البيانات التي يجب أن تنشرها التجميعات على السلسلة. كما تتكبد إعادة تشغيل المعاملات تكاليف غاز كبيرة. لهذه الأسباب، تتحول رول أب متفائل إلى الإثبات التفاعلي متعدد الجولات، والذي يحقق نفس الهدف (أي اكتشاف عمليات التجميع غير الصالحة) بكفاءة أكبر.
الإثبات التفاعلي متعدد الجولات
يتضمن الإثبات التفاعلي متعدد الجولات بروتوكولًا متبادلًا بين المؤكد والمتحدي يشرف عليه عقد متحقق على طبقة 1 (L1)، والذي يقرر في النهاية الطرف الكاذب. بعد أن تتحدى عقدة طبقة 2 (L2) تأكيدًا، يُطلب من المؤكد تقسيم التأكيد المتنازع عليه إلى نصفين متساويين. سيحتوي كل تأكيد فردي في هذه الحالة على نفس عدد خطوات الحساب مثل الآخر.
سيختار المتحدي بعد ذلك التأكيد الذي يريد تحديه. تستمر عملية التقسيم (تسمى "بروتوكول التنصيف") حتى يتنازع كلا الطرفين على تأكيد حول خطوة تنفيذ واحدة. في هذه المرحلة، سيحل عقد طبقة 1 (L1) النزاع عن طريق تقييم التعليمات (ونتيجتها) للقبض على الطرف المحتال.
يُطلب من المؤكد تقديم "إثبات من خطوة واحدة" للتحقق من صلاحية الحساب المتنازع عليه من خطوة واحدة. إذا فشل المؤكد في تقديم الإثبات من خطوة واحدة، أو اعتبر المتحقق على طبقة 1 (L1) الإثبات غير صالح، فإنه يخسر التحدي.
بعض الملاحظات حول هذا النوع من إثبات الاحتيال:
-
يعتبر إثبات الاحتيال التفاعلي متعدد الجولات فعالاً لأنه يقلل من العمل الذي يجب أن تقوم به سلسلة طبقة 1 (L1) في تحكيم النزاعات. بدلاً من إعادة تشغيل المعاملة بأكملها، تحتاج سلسلة طبقة 1 (L1) فقط إلى إعادة تنفيذ خطوة واحدة في تنفيذ التجميع.
-
تقلل بروتوكولات التنصيف من كمية البيانات المنشورة على السلسلة (لا حاجة لنشر التزامات الحالة لكل معاملة). أيضًا، لا تتقيد معاملات رول أب متفائل بحد الغاز الخاص بإيثيريوم. على العكس من ذلك، يجب أن تتأكد رول أب متفائل التي تعيد تنفيذ المعاملات من أن معاملة طبقة 2 (L2) لها حد غاز أقل لمحاكاة تنفيذها ضمن معاملة إيثيريوم واحدة.
-
يُمنح جزء من ضمان المؤكد الخبيث للمتحدي، بينما يتم حرق الجزء الآخر. يمنع الحرق التواطؤ بين المُدَقِّقين؛ إذا تواطأ مُدَقِّقان لبدء تحديات وهمية، فسيظلان يفقدان جزءًا كبيرًا من حصة التخزين بأكملها.
-
يتطلب الإثبات التفاعلي متعدد الجولات من كلا الطرفين (المؤكد والمتحدي) اتخاذ خطوات ضمن النافذة الزمنية المحددة. يؤدي الفشل في التصرف قبل انتهاء الموعد النهائي إلى فقدان الطرف المتخلف للتحدي.
لماذا تهم إثباتات الاحتيال لرول أب متفائل
تعتبر إثباتات الاحتيال مهمة لأنها تسهل النهائية منزوعة الثقة في رول أب متفائل. النهائية منزوعة الثقة هي صفة لرول أب متفائل تضمن أن المعاملة—طالما أنها صالحة—سيتم تأكيدها في النهاية.
يمكن للعقد الخبيثة محاولة تأخير تأكيد كتلة تجميع صالحة عن طريق بدء تحديات كاذبة. ومع ذلك، ستثبت إثباتات الاحتيال في النهاية صلاحية كتلة التجميع وتتسبب في تأكيدها.
يتعلق هذا أيضًا بخاصية أمان أخرى لرول أب متفائل: تعتمد صلاحية السلسلة على وجود عقدة صادقة واحدة. يمكن للعقدة الصادقة تقديم السلسلة بشكل صحيح إما عن طريق نشر تأكيدات صالحة أو الطعن في تأكيدات غير صالحة. مهما كانت الحالة، فإن العقد الخبيثة التي تدخل في نزاعات مع العقدة الصادقة ستفقد حصصها أثناء عملية إثبات الاحتيال.
قابلية التشغيل البيني بين طبقة 1 (L1) وطبقة 2 (L2)
تم تصميم رول أب متفائل لقابلية التشغيل البيني مع شبكة إيثيريوم الرئيسية وتسمح للمستخدمين بتمرير الرسائل والبيانات العشوائية بين طبقة 1 (L1) وطبقة 2 (L2). كما أنها متوافقة مع EVM، لذا يمكنك نقل التطبيقات اللامركزية (dapps) الحالية إلى رول أب متفائل أو إنشاء تطبيقات لامركزية جديدة باستخدام أدوات تطوير إيثيريوم.
1. حركة الأصول
الدخول إلى التجميع
لاستخدام رول أب متفائل، يودع المستخدمون ETH، ورموز ERC-20 المميزة، والأصول الأخرى المقبولة في عقد جسر التجميع على طبقة 1 (L1). سينقل عقد الجسر المعاملة إلى طبقة 2 (L2)، حيث يتم سك كمية معادلة من الأصول وإرسالها إلى العنوان المختار للمستخدم على رول أب متفائل.
عادةً ما يتم وضع المعاملات التي ينشئها المستخدم (مثل إيداع من طبقة 1 (L1) إلى طبقة 2 (L2)) في قائمة انتظار حتى يعيد المُسلسِل إرسالها إلى عقد التجميع. ومع ذلك، للحفاظ على مقاومة الرقابة، تسمح رول أب متفائل للمستخدمين بإرسال معاملة مباشرة إلى عقد التجميع على السلسلة إذا تأخرت عن الحد الأقصى للوقت المسموح به.
تتبنى بعض رول أب متفائل نهجًا أكثر وضوحًا لمنع المُسلسِلين من فرض رقابة على المستخدمين. هنا، يتم تعريف الكتلة من خلال جميع المعاملات المرسلة إلى عقد طبقة 1 (L1) منذ الكتلة السابقة (مثل الإيداعات) بالإضافة إلى المعاملات المعالجة على سلسلة التجميع. إذا تجاهل المُسلسِل معاملة طبقة 1 (L1)، فسوف ينشر جذر حالة خاطئ (بشكل يمكن إثباته)؛ لذلك، لا يمكن للمُسلسِلين تأخير الرسائل التي ينشئها المستخدم بمجرد نشرها على طبقة 1 (L1).
الخروج من التجميع
يعد السحب من رول أب متفائل إلى إيثيريوم أكثر صعوبة بسبب مخطط إثبات الاحتيال. إذا بدأ مستخدم معاملة من طبقة 2 (L2) إلى طبقة 1 (L1) لسحب الأموال المودعة كضمان على طبقة 1 (L1)، فيجب عليه الانتظار حتى تنقضي فترة التحدي—والتي تستمر حوالي سبعة أيام. ومع ذلك، فإن عملية السحب نفسها واضحة ومباشرة إلى حد ما.
بعد بدء طلب السحب على تجميع طبقة 2 (L2)، يتم تضمين المعاملة في الدفعة التالية، بينما يتم حرق أصول المستخدم على التجميع. بمجرد نشر الدفعة على إيثيريوم، يمكن للمستخدم حساب إثبات ميركل للتحقق من تضمين معاملة الخروج الخاصة به في الكتلة. ثم يتعلق الأمر بالانتظار خلال فترة التأخير لإنهاء المعاملة على طبقة 1 (L1) وسحب الأموال إلى الشبكة الرئيسية.
لتجنب الانتظار لمدة أسبوع قبل سحب الأموال إلى إيثيريوم، يمكن لمستخدمي رول أب متفائل توظيف مزود السيولة (LP). يتولى مزود السيولة ملكية سحب معلق من طبقة 2 (L2) ويدفع للمستخدم على طبقة 1 (L1) (مقابل رسوم).
يمكن لمزودي السيولة التحقق من صلاحية طلب سحب المستخدم (عن طريق تنفيذ السلسلة بأنفسهم) قبل الإفراج عن الأموال. بهذه الطريقة لديهم ضمانات بأن المعاملة سيتم تأكيدها في النهاية (أي النهائية منزوعة الثقة).
2. توافق EVM
بالنسبة للمطورين، تتمثل ميزة رول أب متفائل في توافقها—أو الأفضل من ذلك، تكافؤها—مع آلة إيثيريوم الافتراضية (EVM). تتوافق التجميعات المتوافقة مع EVM مع المواصفات الواردة في الورقة الصفراء لإيثيريوم (opens in a new tab) وتدعم EVM على مستوى رمز البايت.
يتمتع توافق EVM في رول أب متفائل بالفوائد التالية:
-
يمكن للمطورين ترحيل العقود الذكية الحالية على إيثيريوم إلى سلاسل رول أب متفائل دون الحاجة إلى تعديل قواعد التعليمات البرمجية بشكل مكثف. يمكن أن يوفر هذا وقت فرق التطوير عند نشر العقود الذكية لإيثيريوم على طبقة 2 (L2).
-
يمكن للمطورين وفرق المشاريع الذين يستخدمون رول أب متفائل الاستفادة من البنية التحتية لإيثيريوم. يتضمن ذلك لغات البرمجة، ومكتبات التعليمات البرمجية، وأدوات الاختبار، وبرامج العميل، والبنية التحتية للنشر، وما إلى ذلك.
يعد استخدام الأدوات الحالية أمرًا مهمًا لأن هذه الأدوات قد تم تدقيقها وتصحيح أخطائها وتحسينها على نطاق واسع على مر السنين. كما أنه يزيل الحاجة لمطوري إيثيريوم لتعلم كيفية البناء باستخدام حزمة تطوير جديدة تمامًا.
3. استدعاءات العقود عبر السلاسل
يتفاعل المستخدمون (الحسابات المملوكة خارجيًا) مع عقود طبقة 2 (L2) عن طريق إرسال معاملة إلى عقد التجميع أو جعل مُسلسِل أو مُدَقِّق يقوم بذلك نيابة عنهم. تسمح رول أب متفائل أيضًا لحسابات العقود على إيثيريوم بالتفاعل مع عقود طبقة 2 (L2) باستخدام عقود الجسور لنقل الرسائل وتمرير البيانات بين طبقة 1 (L1) وطبقة 2 (L2). هذا يعني أنه يمكنك برمجة عقد طبقة 1 (L1) على شبكة إيثيريوم الرئيسية لاستدعاء الوظائف التابعة للعقود على رول أب متفائل لطبقة 2 (L2).
تحدث استدعاءات العقود عبر السلاسل بشكل غير متزامن—مما يعني أنه يتم بدء الاستدعاء أولاً، ثم تنفيذه في وقت لاحق. هذا يختلف عن الاستدعاءات بين العقدين على إيثيريوم، حيث ينتج الاستدعاء نتائج على الفور.
مثال على استدعاء عقد عبر السلاسل هو إيداع الرمز المميز الموصوف سابقًا. يقوم عقد على طبقة 1 (L1) بوضع رموز المستخدم كضمان ويرسل رسالة إلى عقد طبقة 2 (L2) مقترن لسك كمية متساوية من الرموز المميزة على التجميع.
نظرًا لأن استدعاءات الرسائل عبر السلاسل تؤدي إلى تنفيذ العقد، يُطلب من المرسل عادةً تغطية تكاليف الغاز للحساب. يُنصح بتعيين حد غاز مرتفع لمنع فشل المعاملة على السلسلة المستهدفة. يعد سيناريو جسر الرموز المميزة مثالاً جيدًا؛ إذا نجح جانب طبقة 1 (L1) من المعاملة (إيداع الرموز المميزة)، ولكن فشل جانب طبقة 2 (L2) (سك رموز مميزة جديدة) بسبب انخفاض الغاز، يصبح الإيداع غير قابل للاسترداد.
أخيرًا، يجب أن نلاحظ أن استدعاءات الرسائل من طبقة 2 (L2) إلى طبقة 1 (L1) بين العقود تحتاج إلى حساب التأخيرات (عادةً ما يتم تنفيذ استدعاءات طبقة 1 (L1) إلى طبقة 2 (L2) بعد بضع دقائق). هذا لأن الرسائل المرسلة إلى الشبكة الرئيسية من رول أب متفائل لا يمكن تنفيذها حتى تنتهي نافذة التحدي.
كيف تعمل رسوم رول أب متفائل؟
تستخدم رول أب متفائل مخطط رسوم الغاز، تمامًا مثل إيثيريوم، للإشارة إلى المبلغ الذي يدفعه المستخدمون لكل معاملة. تعتمد الرسوم المفروضة على رول أب متفائل على المكونات التالية:
-
كتابة الحالة: تنشر رول أب متفائل بيانات المعاملات ورؤوس الكتل (تتكون من تجزئة رأس الكتلة السابقة، وجذر الحالة، وجذر الدفعة) إلى إيثيريوم كـ
blob، أو "كائن ثنائي كبير". قدم EIP-4844 (opens in a new tab) حلاً فعالاً من حيث التكلفة لتضمين البيانات على السلسلة.blobهو حقل معاملة جديد يسمح للتجميعات بنشر بيانات انتقال الحالة المضغوطة إلى طبقة 1 (L1) لإيثيريوم. على عكسcalldata، التي تظل بشكل دائم على السلسلة، فإن كتل البيانات قصيرة العمر ويمكن تقليمها من العملاء بعد 4096 حقبة (opens in a new tab) (حوالي 18 يومًا). باستخدام كتل البيانات لنشر دفعات من المعاملات المضغوطة، يمكن لرول أب متفائل تقليل تكلفة كتابة المعاملات إلى طبقة 1 (L1) بشكل كبير. -
غاز كتلة البيانات المستخدم: تستخدم المعاملات التي تحمل كتل بيانات آلية رسوم ديناميكية مشابهة لتلك التي قدمها EIP-1559 (opens in a new tab). تأخذ رسوم الغاز لمعاملات النوع 3 في الاعتبار الرسم الأساسي لكتل البيانات، والذي تحدده الشبكة بناءً على الطلب على مساحة كتل البيانات واستخدام مساحة كتل البيانات للمعاملة المرسلة.
-
رسوم مشغل طبقة 2 (L2): هذا هو المبلغ المدفوع لعقد التجميع كتعويض عن التكاليف الحسابية المتكبدة في معالجة المعاملات، تمامًا مثل رسوم الغاز على إيثيريوم. تفرض عقد التجميع رسوم معاملات أقل نظرًا لأن طبقات 2 (L2) تتمتع بقدرات معالجة أعلى ولا تواجه ازدحام الشبكة الذي يجبر المُدَقِّقين على إيثيريوم على إعطاء الأولوية للمعاملات ذات الرسوم الأعلى.
تطبق رول أب متفائل عدة آليات لتقليل الرسوم للمستخدمين، بما في ذلك التجميع في دفعات للمعاملات وضغط calldata لتقليل تكاليف نشر البيانات. يمكنك التحقق من متتبع رسوم طبقة 2 (L2) (opens in a new tab) للحصول على نظرة عامة في الوقت الفعلي على تكلفة استخدام رول أب متفائل القائمة على إيثيريوم.
كيف تقوم رول أب متفائل بتوسيع إيثيريوم؟
كما أوضحنا، تنشر رول أب متفائل بيانات المعاملات المضغوطة على إيثيريوم لضمان توافر البيانات. تعد القدرة على ضغط البيانات المنشورة على السلسلة أمرًا بالغ الأهمية لتوسيع قدرة المعالجة على إيثيريوم باستخدام رول أب متفائل.
تضع سلسلة إيثيريوم الرئيسية حدودًا لمقدار البيانات التي يمكن أن تحتويها الكتل، مقومة بوحدات الغاز (متوسط حجم الكتلة هو 15 مليون غاز). في حين أن هذا يقيد مقدار الغاز الذي يمكن أن تستخدمه كل معاملة، فإنه يعني أيضًا أنه يمكننا زيادة المعاملات المعالجة لكل كتلة عن طريق تقليل البيانات المتعلقة بالمعاملات—مما يحسن قابلية التوسع بشكل مباشر.
تستخدم رول أب متفائل عدة تقنيات لتحقيق ضغط بيانات المعاملات وتحسين معدلات TPS. على سبيل المثال، تقارن هذه المقالة (opens in a new tab) البيانات التي تنشئها معاملة مستخدم أساسية (إرسال إيثر) على الشبكة الرئيسية مقابل مقدار البيانات التي تنشئها نفس المعاملة على التجميع:
| المعلمة | إيثيريوم (طبقة 1 (L1)) | التجميع (طبقة 2 (L2)) |
|---|---|---|
| رقم فريد | ~3 | 0 |
| سعر الغاز | ~8 | 0-0.5 |
| الغاز | 3 | 0-0.5 |
| إلى | 21 | 4 |
| القيمة | 9 | ~3 |
| التوقيع | ~68 (2 + 33 + 33) | ~0.5 |
| من | 0 (مسترد من التوقيع) | 4 |
| الإجمالي | ~112 بايت | ~12 بايت |
يمكن أن يساعد إجراء بعض الحسابات التقريبية على هذه الأرقام في إظهار تحسينات قابلية التوسع التي توفرها رول أب متفائل:
- الحجم المستهدف لكل كتلة هو 15 مليون غاز ويكلف 16 غازًا للتحقق من بايت واحد من البيانات. تُظهر قسمة متوسط حجم الكتلة على 16 غازًا (15,000,000/16) أن متوسط الكتلة يمكن أن يحتوي على 937,500 بايت من البيانات.
- إذا كانت معاملة التجميع الأساسية تستخدم 12 بايت، فيمكن لمتوسط كتلة إيثيريوم معالجة 78,125 معاملة تجميع (937,500/12) أو 39 دفعة تجميع (إذا كانت كل دفعة تحتوي على متوسط 2,000 معاملة).
- إذا تم إنتاج كتلة جديدة على إيثيريوم كل 15 ثانية، فإن سرعات معالجة التجميع ستبلغ تقريبًا 5,208 معاملة في الثانية. يتم ذلك عن طريق قسمة عدد معاملات التجميع الأساسية التي يمكن أن تحتويها كتلة إيثيريوم (78,125) على متوسط وقت الكتلة (15 ثانية).
هذا تقدير متفائل إلى حد ما، نظرًا لأن معاملات رول أب متفائل لا يمكن أن تشكل كتلة كاملة على إيثيريوم. ومع ذلك، يمكن أن يعطي فكرة تقريبية عن مقدار مكاسب قابلية التوسع التي يمكن أن توفرها رول أب متفائل لمستخدمي إيثيريوم (تقدم التطبيقات الحالية ما يصل إلى 2,000 TPS).
من المتوقع أن يؤدي إدخال تجزئة البيانات على إيثيريوم إلى تحسين قابلية التوسع في رول أب متفائل. نظرًا لأن معاملات التجميع يجب أن تشترك في مساحة الكتلة مع المعاملات الأخرى غير التجميعية، فإن قدرة المعالجة الخاصة بها محدودة بقدرة المعالجة للبيانات على سلسلة إيثيريوم الرئيسية. ستزيد تجزئة دانك من المساحة المتاحة لسلاسل طبقة 2 (L2) لنشر البيانات لكل كتلة، باستخدام تخزين "كتلة بيانات" أرخص وغير دائم بدلاً من CALLDATA باهظة الثمن والدائمة.
إيجابيات وسلبيات رول أب متفائل
| الإيجابيات | السلبيات |
|---|---|
| تقدم تحسينات هائلة في قابلية التوسع دون التضحية بالأمان أو انعدام الحاجة للثقة. | تأخيرات في نهائية المعاملة بسبب تحديات الاحتيال المحتملة. |
| يتم تخزين بيانات المعاملات على سلسلة طبقة 1 (L1)، مما يحسن الشفافية والأمان ومقاومة الرقابة واللامركزية. | يمكن لمشغلي التجميع المركزيين (المُسلسِلين) التأثير على ترتيب المعاملات. |
| يضمن إثبات الاحتيال النهائية منزوعة الثقة ويسمح للأقليات الصادقة بتأمين السلسلة. | إذا لم تكن هناك عقد صادقة، يمكن لمشغل خبيث سرقة الأموال عن طريق نشر كتل والتزامات حالة غير صالحة. |
| حساب إثباتات الاحتيال مفتوح لعقدة طبقة 2 (L2) العادية، على عكس إثباتات الصلاحية (المستخدمة في تجميعات المعرفة الصفرية) التي تتطلب أجهزة خاصة. | يعتمد نموذج الأمان على عقدة صادقة واحدة على الأقل تنفذ معاملات التجميع وترسل إثباتات الاحتيال لتحدي انتقالات الحالة غير الصالحة. |
| تستفيد التجميعات من "الحيوية منزوعة الثقة" (يمكن لأي شخص إجبار السلسلة على التقدم عن طريق تنفيذ المعاملات ونشر التأكيدات) | يجب على المستخدمين الانتظار حتى تنتهي فترة التحدي البالغة أسبوعًا واحدًا قبل سحب الأموال مرة أخرى إلى إيثيريوم. |
| تعتمد رول أب متفائل على حوافز اقتصادية مشفرة مصممة جيدًا لزيادة الأمان على السلسلة. | يجب أن تنشر التجميعات جميع بيانات المعاملات على السلسلة، مما قد يزيد التكاليف. |
| يسمح التوافق مع EVM وSolidity للمطورين بنقل العقود الذكية الأصلية لإيثيريوم إلى التجميعات أو استخدام الأدوات الحالية لإنشاء تطبيقات لامركزية جديدة. |
شرح مرئي لرول أب متفائل
هل تفضل التعلم المرئي؟ شاهد Finematics يشرح رول أب متفائل:
قراءات إضافية حول رول أب متفائل
- كيف تعمل رول أب متفائل (الدليل الشامل) (opens in a new tab)
- الدليل الأساسي لـ أربيتروم (opens in a new tab)
- الدليل العملي لتجميعات إيثيريوم (opens in a new tab)
- حالة إثباتات الاحتيال في طبقات 2 (L2) لإيثيريوم (opens in a new tab)
- كيف يعمل تجميع أوبتيميزم حقًا؟ (opens in a new tab)
- نظرة متعمقة على OVM (opens in a new tab)
- ما هي الآلة الافتراضية المتفائلة؟ (opens in a new tab)
برامج تعليمية: رول أب متفائل والجسور على إيثيريوم
- جولة في عقد جسر أوبتيميزم القياسي – جولة مشروحة في التعليمات البرمجية لجسر أوبتيميزم القياسي لنقل الأصول بين طبقة 1 (L1) وطبقة 2 (L2).