تخطي إلى المحتوى الرئيسي
Change page

توفر البيانات

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

يشير توفر البيانات إلى الثقة التي يمكن أن يتمتع بها المستخدم بأن البيانات المطلوبة للتحقق من كتلة متاحة حقًا لجميع المشاركين في الشبكة. بالنسبة للعقد الكاملة على إيثيريوم طبقة 1 (L1)، هذا بسيط نسبيًا؛ تقوم العقدة الكاملة بتنزيل نسخة من جميع البيانات في كل كتلة - يجب أن تكون البيانات متاحة لكي يكون التنزيل ممكنًا. سيتم تجاهل الكتلة التي تحتوي على بيانات مفقودة بدلاً من إضافتها إلى سلسلة الكتل. هذا هو "توفر البيانات على السلسلة" وهو ميزة في سلاسل الكتل المتجانسة. لا يمكن خداع العقد الكاملة لقبول معاملات غير صالحة لأنها تقوم بتنزيل وتنفيذ كل معاملة بنفسها. ومع ذلك، بالنسبة لسلاسل الكتل المعيارية، وتجميعات طبقة 2 (L2)، والعملاء الخفيفين، فإن مشهد توفر البيانات أكثر تعقيدًا، ويتطلب بعض إجراءات التحقق الأكثر تطورًا.

المتطلبات الأساسية

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

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

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

تعد العقد الخفيفة وتجميعات طبقة 2 (L2) أمثلة مهمة للمشاركين في الشبكة الذين يحتاجون إلى ضمانات قوية لتوفر البيانات ولكن لا يمكنهم تنزيل بيانات المعاملات ومعالجتها بأنفسهم. تجنب تنزيل بيانات المعاملات هو ما يجعل العقد الخفيفة خفيفة ويمكّن التجميعات من أن تكون حلول توسع فعالة.

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

حلول توفر البيانات

أخذ عينات توفر البيانات (DAS)

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

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

لجان توفر البيانات

لجان توفر البيانات (DACs) هي أطراف موثوقة توفر توفر البيانات أو تشهد عليه. يمكن استخدام لجان DAC بدلاً من DAS، أو بالاشتراك معها (opens in a new tab). تعتمد الضمانات الأمنية التي تأتي مع اللجان على الإعداد المحدد. تستخدم إيثيريوم مجموعات فرعية مأخوذة عشوائيًا من المُدَقِّقين للشهادة على توفر البيانات للعقد الخفيفة، على سبيل المثال.

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

توفر البيانات والعقد الخفيفة

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

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

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

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

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

الحل لمشكلة توفر البيانات هذه هو DAS. تقوم العقد الخفيفة بتنزيل أجزاء عشوائية صغيرة جدًا من بيانات الحالة الكاملة وتستخدم العينات للتحقق من توفر مجموعة البيانات الكاملة. يمكن حساب الاحتمال الفعلي لافتراض توفر البيانات الكاملة بشكل غير صحيح بعد تنزيل N من الأجزاء العشوائية (بالنسبة لـ 100 جزء، يكون الاحتمال 10^-30 (opens in a new tab)، أي أنه غير محتمل بشكل لا يصدق).

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

ملاحظة: لم يتم بعد تنفيذ DAS وإثباتات الاحتيال لعملاء إيثيريوم الخفيفين القائمين على إثبات الحصة، لكنها مدرجة في خارطة الطريق، ومن المرجح أن تتخذ شكل إثباتات قائمة على زي كي سنارك (ZK-SNARK). يعتمد العملاء الخفيفون اليوم على شكل من أشكال لجان DAC: فهم يتحققون من هويات لجنة المزامنة ثم يثقون في رؤوس الكتل الموقعة التي يتلقونها.

توفر البيانات وتجميعات طبقة 2 (L2)

تعمل حلول التوسع لطبقة 2 (L2)، مثل ، على تقليل تكاليف المعاملات وزيادة قدرة المعالجة لإيثيريوم عن طريق معالجة المعاملات خارج السلسلة. يتم ضغط معاملات التجميع ونشرها على إيثيريوم في دفعات. تمثل الدفعات الآلاف من المعاملات الفردية خارج السلسلة في معاملة واحدة على إيثيريوم. هذا يقلل من الازدحام على الطبقة الأساسية ويقلل الرسوم للمستخدمين.

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

تنشر التجميعات المتفائلة بيانات المعاملات المضغوطة على إيثيريوم وتنتظر لبعض الوقت (عادةً 7 أيام) للسماح للمدققين المستقلين بالتحقق من البيانات. إذا حدد أي شخص مشكلة، فيمكنه إنشاء إثبات الاحتيال واستخدامه لتحدي التجميع. سيؤدي هذا إلى تراجع السلسلة وحذف الكتلة غير الصالحة. هذا ممكن فقط إذا كانت البيانات متاحة. حاليًا، هناك طريقتان تنشر بهما التجميعات المتفائلة بيانات المعاملات إلى طبقة 1 (L1). تجعل بعض التجميعات البيانات متاحة بشكل دائم كـ CALLDATA والتي تعيش بشكل دائم على السلسلة. مع تنفيذ EIP-4844، تنشر بعض التجميعات بيانات معاملاتها إلى تخزين كتل بيانات (blob) أرخص بدلاً من ذلك. هذا ليس تخزينًا دائمًا. يتعين على المدققين المستقلين الاستعلام عن كتل البيانات ورفع تحدياتهم في غضون ~18 يومًا تقريبًا قبل حذف البيانات من إيثيريوم طبقة 1 (L1). يتم ضمان توفر البيانات فقط بواسطة بروتوكول إيثيريوم لتلك النافذة القصيرة الثابتة. بعد ذلك، تصبح مسؤولية الكيانات الأخرى في نظام إيثيريوم البيئي. يمكن لأي عقدة التحقق من توفر البيانات باستخدام DAS، أي عن طريق تنزيل عينات صغيرة وعشوائية من بيانات كتلة البيانات (blob).

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

توفر البيانات مقابل قابلية استرجاع البيانات

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

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

يهتم بروتوكول إيثيريوم الأساسي في المقام الأول بتوفر البيانات، وليس بقابلية استرجاع البيانات. يمكن توفير قابلية استرجاع البيانات من قبل مجموعة صغيرة من العقد الأرشيفية التي تديرها أطراف ثالثة، أو يمكن توزيعها عبر الشبكة باستخدام تخزين الملفات اللامركزي مثل بورتال نيتوورك (opens in a new tab).

قراءة إضافية