في البداية، كان لدى إثيريوم استراتيجيتان لتوسيع القدرات في خريطة طريقه. واحدة (مثلا، انظر هذه الورقة المبكرةمن أهم الابتكارات (منذ عام 2015) كانت "التجزئة": بدلاً من التحقق وتخزين جميع المعاملات في السلسلة، يحتاج كل عقد فقط للتحقق وتخزين جزء صغير من المعاملات. هذا هو كيفية عمل أي شبكة ند للند أخرى (على سبيل المثال، BitTorrent) أيضًا، لذا بالتأكيد يمكننا جعل البلوكشين يعمل بنفس الطريقة. كانت واحدة أخرى بروتوكولات الطبقة 2: شبكات تجلس على رأس إثيريوم بطريقة تتيح لها الاستفادة بشكل كامل من أمانه، مع الاحتفاظ بمعظم البيانات والحسابات خارج السلسلة الرئيسية. "بروتوكولات الطبقة 2" تعنيقنوات الحالة في عام 2015، بلازمافي عام 2017، ثمرولابسفي عام 2019. تكون اللفات أكثر قوة من القنوات الحالية أو البلازما، ولكنها تتطلب كمية كبيرة من عرض الباندويث في البيانات على السلسلة. لحسن الحظ، بحلول عام 2019، قد حل بحث التشظيمشكلة التحقق من "توفر البيانات" على نطاق واسعنتيجة لذلك تقاربت المسارات الاثنان، وحصلنا على الخارطة طريق متمحورة حول الرول ابالتي تظل استراتيجية توسيع إثيريوم حتى اليوم.
الارتفاع، إصدار خريطة الطريق 2023.
يقترح خريطة العمل المركزة على الRollup تقسيمًا بسيطًا للعمل: يركز Ethereum L1 على كونه طبقة أساسية قوية ولامركزية، بينما تتولى L2s مهمة مساعدة النظام البيئي على التوسع. هذا نمط يتكرر في كل مكان في المجتمع: نظام المحاكم (L1) ليس هنا ليكون سريعًا للغاية وفعالًا، بل هو هنا لحماية العقود وحقوق الملكية، ويتوقف الأمر على رجال الأعمال (L2) لبناء فوق ذلكمتينقاعدةطبقةويأخذ البنية البشرية إلى (مجازي وحرفي) المريخ.
هذا العام، شهدت الخريطة الطريقية المركزة على الRollup نجاحات هامة: تزايد كبير في عرض النطاق الترددي لبيانات Ethereum L1 معالكتل EIP-4844, والعديد من الحلول الأسطوانية للآر إف إم الآن مرحلة 1. A very تنفيذ متنوع وتعددي للتجزئة، حيث يعمل كل L2 ك "شظية" لها قواعدها الداخلية ومنطقها ، أصبح الآن حقيقة واقعة. ولكن كما رأينا ، فإن اتخاذ هذا المسار ينطوي على بعض التحديات الفريدة الخاصة به. ولذا فإن مهمتنا الآن هي الانتهاء من خارطة الطريق التي تركز على التجميع ، وحل هذه المشكلات ، مع الحفاظ على المتانة واللامركزية التي تجعل Ethereum L1 مميزا.
كانت مشكلة قابلية التوسع مفهومًاتم إطلاقه في عام 2017, الذي اعتبر أن هناك توتر بين ثلاث خصائص للبلوكشين: اللامركزية (بشكل أكثر تحديدًا: تكلفة منخفضة لتشغيل عقدة)، التوسعة (بشكل أكثر تحديدًا: عدد عالٍ من المعاملات المعالجة)، والأمان (بشكل أكثر تحديدًا: الحاجة إلى أن يفسد المهاجم جزءًا كبيرًا من العقد في الشبكة بأكملها لجعل حتى معاملة واحدة تفشل).
بشكل ملحوظ، الثلاثية ليست نظرية رياضية، ولم يتم إرفاق البريد الإلكتروني الذي يقدم الثلاثية بدليل رياضي. لقد قدم حجة رياضية استنتاجية: إذا كان بإمكان جهاز العميل اللابتوب (على سبيل المثال) التحقق من N معاملات في الثانية، وكان لديك سلسلة تعالج k*N معاملة في الثانية، فإما (i) أن ترى كل معاملة فقط من قبل 1/k من العقد، وهو ما يعني أن المهاجم يحتاج فقط إلى تلفيق عدد قليل من العقد لتمرير معاملة سيئة، أو (ii) سيؤدي ذلك إلى أن تكون عقدك قوية وسلسلتك غير مركزية. الغرض من البريد لم يكن أبدًا لإظهار أن كسر الثلاثية مستحيل؛ بل كان الهدف منه إظهار أن كسر الثلاثية صعب - فإنه يتطلب التفكير بطريقة مبتكرة خارج الصندوق الذي تقترحه الحجة.
لسنوات عديدة، كان من الشائع بالنسبة لبعض السلاسل عالية الأداء أن تدعي أنها تحل معضلة الثلاثية دون القيام بأي شيء ذكي على مستوى الهندسة المعمارية الأساسية، عادةً عن طريق استخدام حيل هندسة البرمجيات لتحسين العقد. هذا مضلل دائمًا، وتشغيل عقد في مثل هذه السلاسل ينتهي دائمًا بصعوبة أكبر بكثير مما هو عليه في إيثيريوم.هذا المنشوريدخل في بعض التفاصيل الدقيقة التي تشير إلى سبب هذا (وبالتالي، لماذا لا يمكن لهندسة برمجيات العميل L1 أن توسع Ethereum بمفردها).
ومع ذلك، فإن الجمع بين أخذ عينات من توافر البيانات و SNARKs لا يحل المعضلة الثلاثية: إذ يسمح للعميل بالتحقق من توافر كمية معينة من البيانات، وتمت إجراء عدد معين من خطوات الحساب بشكل صحيح، بينما يتم تنزيل جزء صغير فقط من تلك البيانات وتشغيل كمية أقل بكثير من الحسابات. SNARKs هي بدون ثقة. تمتلك عينة توافر البيانات تفاصيل دقيقةنموذج الثقة على أساس عدد قليل من N, ولكنه يحافظ على الخاصية الأساسية التي تتمتع بها الشبكات غير القابلة للتوسيع، وهي أنه حتى هجوم بنسبة 51% لا يمكن أن يجبر الكتل السيئة على القبول من قبل الشبكة.
طريقة أخرى لحل المعضلة الثلاثية هي تركيبات البلازما، التي تستخدم تقنيات ذكية لنقل المسؤولية لمراقبة توافر البيانات إلى المستخدم بطريقة متوافقة مع الحوافز. في الفترة بين عامي 2017 و 2019، عندما كان كل ما كان لدينا لتوسيع عمليات الحساب هو إثباتات الاحتيال، كانت البلازما محدودة جدًا فيما يمكنها فعله بأمان، ولكن توسيع استخدام تقنية SNARKs جعل تركيبات البلازماأكثر قابلية للتحقيق بكثيرلمجموعة أوسع من حالات الاستخدام مما كان عليه في السابق.
اعتبارًا من 13 مارس 2024، عندما ترقية دينكونعندما يتم تشغيله، يحتوي سلسلة تشفير إثيريوم على ثلاث "كتل" بحجم 125 كيلوبايت تقريبًا في كل فتحة زمنية بمعدل 12 ثانية، أو 375 كيلوبايت تقريبًا في كل فتحة زمنية من عرض البيانات المتاحة. بافتراض نشر بيانات المعاملات على السلسلة مباشرة، فإن نقل ERC20 يستهلك حوالي 180 بايتًا، وبالتالي، أقصى عدد للمعاملات في الثانية للتقنيات المتقدمة على سلسلة تشفير إثيريوم هو:
375000 / 12 / 180 = 173.6 TPS
إذا قمنا بإضافة بيانات Ethereum (الحد النظري: 30 مليون وحدة غاز لكل فتحة / 16 وحدة غاز لكل بايت = 1،875،000 بايت لكل فتحة)، سيصبح ذلك 607 TPS. مع PeerDAS، الخطة هي زيادة هدف عدد البلوب إلى 8-16، وهو ما سيمنحنا 463-926 TPS في بيانات Ethereum.
هذه زيادة كبيرة على إثيريوم L1، ولكنها ليست كافية. نريد المزيد من قابلية التوسع. هدفنا في المدى الطويل هو 16 ميجابايت لكل فتحة، وهو ما إذا تم دمجه مع تحسينات في ضغط بيانات الرول أب سيمنحنا حوالي 58،000 TPS.
PeerDAS هو تنفيذ مبسط نسبيًا لعينة "1D". كل كتلة في إثيريوم هي متعددة الحدود من الدرجة 4096 فوق حقل أساسي بحجم 253 بت. نبث "حصصًا" من المتعدد، حيث يتكون كل حصة من 16 تقييمًا في 16 إحداثيًا متجاورًا مأخوذة من مجموعة إجمالية من 8192 إحداثيًا. أي 4096 من التقييمات الإجمالية (بمعلمات مقترحة حاليًا: أي 64 من العينات الممكنة 128) يمكن أن تسترد الكتلة.
يعمل PeerDAS عن طريق الاستماع كل عميل على عدد صغير من الشبكات الفرعية، حيث تبث الشبكة الفرعية الثانية عينة البلوك الثانية من أي بلوب، وتطلب أيضًا بلوبات على شبكات فرعية أخرى يحتاجها من خلال طلب نظرائه في شبكة p2p العالمية (الذين سيكونون يستمعون إلى شبكات فرعية مختلفة). إصدار أكثر تحفظًا، SubnetDAS, يستخدم آلية الشبكة الفرعية فقط، دون الطبقة الإضافية لطلب المساعدة من الأقران. الاقتراح الحالي هو أن تستخدم العقد المشاركة في الحصة النسبية SubnetDAS، وأن تستخدم العقد الأخرى (أي "العملاء") PeerDAS.
نظريًا، يمكننا توسيع عينة 1D إلى حد بعيد: إذا قمنا بزيادة الحد الأقصى لعدد الكتل إلى 256 (بالتالي، الهدف إلى 128)، فإننا سنصل إلى هدفنا من 16 ميجابايت بينما ستكلف عينة توفر البيانات كل عقدة فقط 16 عينة 128 blobs 512 بايت لكل عينة لكل كتلة = 1 ميجابايت من عرض البيانات لكل فتحة. هذا يكاد يكون ضمن نطاق تحملنا: يمكن القيام به، ولكن ذلك سيعني أن العملاء المحددين بعرض النطاق لا يمكنهم العينة. يمكننا تحسين هذا إلى حد ما عن طريق تقليل عدد الكتل وزيادة حجم الكتلة، ولكن هذا سيجعل عملية الإعادة أكثر تكلفة.
وبالتالي نريد في النهاية أن نذهب أبعد من ذلك، ونفعلعينات ثنائية الأبعاد، الذي يعمل عن طريق أخذ عينات عشوائية ليس فقط داخل الكتل، ولكن أيضًا بين الكتل. تُستخدم الخصائص الخطية لالتزامات KZG لـ "توسيع" مجموعة الكتل في كتلة مع قائمة من "الكتل الافتراضية" الجديدة التي تُشفر بشكل متكرر نفس المعلومات.
عينة ثنائية الأبعاد. المصدر: a16z crypto
من الضروري بشكل حاسم حساب تمديد الالتزامات دون الحاجة إلى وجود الكتل، لذلك النظام ودية بشكل أساسي لإنشاء كتل موزعة. العقدة التي تقوم فعليًا ببناء الكتلة ستحتاج فقط إلى وجود الالتزامات KZG للكتلة، ويمكن لها الاعتماد على DAS للتحقق من توفر الكتل. يعمل DAS بشكل طبيعي أيضًا على إنشاء كتل موزعة.
الخطوة التالية الفورية هي إكمال تنفيذ ونشر PeerDAS. من هناك، إنها عملية تدريجية لزيادة عدد البلوك على PeerDAS بحذر مع مراقبة الشبكة وتحسين البرنامج لضمان الأمان. في الوقت نفسه، نريد المزيد من العمل الأكاديمي على تشكيل PeerDAS وإصدارات أخرى من DAS وتفاعلاتها مع قضايا مثل سلامة قاعدة اختيار الفورك.
علاوة على ذلك في المستقبل ، نحتاج إلى مزيد من العمل لمعرفة الإصدار المثالي من 2D DAS وإثبات خصائص السلامة الخاصة به. نريد أيضا الانتقال في النهاية بعيدا عن KZG إلى بديل مقاوم للكم وخالي من الإعداد الموثوق به. حاليا ، لا نعرف مرشحين ودودين لبناء الكتل الموزعة. حتى تقنية "القوة الغاشمة" باهظة الثمن لاستخدام STARKs العودية لإنشاء أدلة على الصلاحية لإعادة بناء الصفوف والأعمدة لا تكفي ، لأنه في حين أن STARK من الناحية الفنية هي O (log (n) * log (log (n)) تجزئت في الحجم (مع STIR), في الواقع، يكاد يكون STARK بحجم كبير تقريبًا مثل كتلة كاملة.
المسارات الواقعية التي أراها على المدى الطويل هي:
يمكننا عرض هذه على طول الطيف التضحية:
لاحظ أن هذا الاختيار موجود حتى لو قررنا توسيع التنفيذ على L1 مباشرة. هذا لأنه إذا كان يجب على L1 معالجة العديد من TPS ، فستصبح الكتل L1 كبيرة جدًا ، وسيود العملاء طريقة فعالة للتحقق من صحتها ، لذا سنحتاج إلى استخدام نفس التكنولوجيا التي تدعم ال rollups (ZK-EVM و DAS) في L1.
يقلل الحاجة إلى 2D DAS إلى حد ما، أو على الأقل يتم تأخيرها، إذا تم تنفيذ ضغط البيانات (انظر أدناه)، ويقلل أكثر إذا استخدم بلازما على نطاق واسع. كما تشكل DAS تحدياً لبروتوكولات وآليات بناء الكتل الموزعة: بينما نظرياً يعتبر DAS ودي لإعادة البناء الموزعة، إلا أن هذا يحتاج إلى توحيد في الممارسة.قائمة الإدراجالاقتراحات وميكانيكيات اختيار الشوكة المحيطة بها.
كل عملية في اللف من البيانات تأخذ كمية كبيرة من مساحة البيانات على السلسلة: تأخذ عملية نقل ERC20 حوالي 180 بايت. حتى مع أخذ عينات مثالية لتوافر البيانات، يتم وضع حد لقدرة التوسع لبروتوكولات الطبقة 2. مع 16 ميجابايت لكل فتحة، نحصل على:
16000000 / 12 / 180 = 7407 TPS
ماذا لو كان بالإضافة إلى معالجة البسط ، يمكننا أيضا معالجة المقام ، وجعل كل معاملة في مجموعة التحديثات تأخذ عددا أقل من البايتات على السلسلة؟
أفضل تفسير في رأيي هوهذا الرسم البياني منذ عامين:
أبسط مكاسب هي مجرد ضغط بايت صفري: استبدال كل تسلسل طويل من بايتات الصفر ببايتين يمثلان كم من بايتات صفر هناك. للذهاب أبعد من ذلك، نستفيد من الخصائص الخاصة للمعاملات:
الشيء الرئيسي المتبقي هو تنفيذ الخطط أعلاه. التضحيات الرئيسية هي:
اعتماد ERC-4337، وفي نهاية المطاف تأصيل أجزاء منه في L2 EVMs، يمكن أن يسرع بشكل كبير نشر تقنيات التجميع. تأصيل أجزاء من ERC-4337 على L1 يمكن أن يسرع نشرها على L2s.
حتى مع وجود 16 ميغابايت من النقط وضغط البيانات ، فإن 58,000 TPS ليست بالضرورة كافية للاستيلاء الكامل على مدفوعات المستهلك أو القطاعات الاجتماعية اللامركزية أو غيرها من القطاعات ذات النطاق الترددي العالي ، ويصبح هذا صحيحا بشكل خاص إذا بدأنا في أخذ الخصوصية في الاعتبار ، مما قد يؤدي إلى انخفاض قابلية التوسع بمقدار 3-8x. بالنسبة للتطبيقات ذات الحجم الكبير والقيمة المنخفضة ، فإن أحد الخيارات اليوم هو ملف validium، الذي يحتفظ بالبيانات خارج السلسلة ولديه نموذج أمان مثير للاهتمام حيث لا يمكن للمشغل سرقة أموال المستخدمين، ولكن يمكن أن يختفي مؤقتًا أو دائمًا ويجمد جميع أموال المستخدمين. ولكن يمكننا أن نفعل أفضل.
Plasma هو حلاً لتوسيع الذي يشمل مشغل نشر كتل خارج السلسلة، ووضع جذور Merkle لتلك الكتل على السلسلة (على عكس rollups، حيث يتم وضع الكتلة الكاملة على السلسلة). لكل كتلة، يرسل المشغل إلى كل مستخدم فرع Merkle يثبت ما حدث، أو لم يحدث، لأصول تلك المستخدم. يمكن للمستخدمين سحب أصولهم عن طريق تقديم فرع Merkle. من الأهمية بمكان، هذا الفرع لا يجب أن يكون متأصلاً في آخر حالة - لهذا السبب، حتى إذا فشلت توافر البيانات، يمكن للمستخدم استعادة أصولهم عن طريق سحب أحدث حالة متاحة لديهم. إذا قدم مستخدم فرعًا غير صالح (على سبيل المثال الخروج من أصل قام بإرساله بالفعل إلى شخص آخر، أو المشغل نفسه إنشاء أصل من العدم)، يمكن لآلية تحدي على السلسلة أن تقضي بمن ينتمي بحق إلى الأصل.
رسم بياني لسلسلة بلازما كاش. يتم وضع المعاملات التي تنفق عملة i في الموقع i في الشجرة. في هذا المثال، وبناءً على افتراض صحة جميع الشجيرات السابقة، نعلم أن إيف تمتلك حاليًا عملة 1، ديفيد يمتلك عملة 4، وجورج يمتلك عملة 6.
كانت الإصدارات المبكرة من البلازما قادرة فقط على التعامل مع حالة استخدام المدفوعات ، ولم تكن قادرة على التعميم بشكل فعال. إذا طلبنا التحقق من كل جذر باستخدام SNARK ، فإن البلازما تصبح أكثر قوة. يمكن تبسيط كل لعبة تحدي بشكل كبير ، لأننا نأخذ معظم المسارات الممكنة للمشغل للغش. تفتح مسارات جديدة أيضا للسماح بتوسيع تقنيات البلازما لتشمل فئة أكثر عمومية من الأصول. أخيرا ، في حالة عدم قيام المشغل بالغش ، يمكن للمستخدمين سحب أموالهم على الفور ، دون الحاجة إلى الانتظار لفترة تحدي مدتها أسبوع واحد.
طريقة واحدة (ليست الطريقة الوحيدة) لإنشاء سلسلة بلازما EVM: استخدم ZK-SNARK لبناء شجرة UTXO موازية تعكس تغييرات التوازن التي أجراها EVM ، وتحدد تخطيطا فريدا لما هو "نفس العملة" في نقاط مختلفة من التاريخ. يمكن بعد ذلك بناء بناء البلازما فوق ذلك.
إحدى الرؤى الرئيسية هي أن نظام البلازما لا يحتاج إلى أن يكون مثاليًا. حتى لو كنت تستطيع حماية مجموعة فرعية من الأصول (على سبيل المثال، حتى العملات التي لم تتحرك في الأسبوع الماضي فقط)، فقد قمت بتحسين الوضع الراهن بشكل كبير بالفعل على نظام EVM فائق القابلية للتطوير، وهو نظام فاليديوم صالح.
فئة أخرى من البناء هي الهجين بلازما/رول أب، مثل Intmaxتضع هذه البنى كمية بيانات صغيرة جدًا لكل مستخدم على السلسلة (على سبيل المثال 5 بايت)، وبذلك تحصل على خصائص تقع بين البلازما والرولبس: في حالة Intmax، تحصل على مستوى عالٍ جدًا من التوسيع والخصوصية، على الرغم من أن القدرة في عالم 16 ميجابايت محدودة نظريًا إلى حوالي 266،667 TPS.
المهمة الرئيسية المتبقية هي جلب أنظمة البلازما إلى الإنتاج. كما ذُكر أعلاه، فإن "البلازما مقابل الفاليديوم" ليس ثنائيًا: يمكن تحسين خصائص سلامة أي فاليديوم على الأقل قليلًا عن طريق إضافة ميزات البلازما إلى آلية الخروج. الجزء البحثي هو الحصول على خصائص مثلى (من حيث متطلبات الثقة وتكلفة الغاز L1 في أسوأ الحالات، والعرضة للهجوم الضاري) لـ EVM، فضلاً عن البناء البديل لتطبيقات محددة. بالإضافة إلى ذلك، يجب معالجة التعقيد المفهومي الأكبر للبلازما مقارنة بالروبوتات مباشرة، سواء من خلال البحث أو من خلال بناء أطر عامة أفضل بشكل مباشر.
أبرز التضحيات في استخدام تصاميم البلازما هو أنها تعتمد أكثر على المشغلين وأصعب في التنفيذاستنادا اليعلى الرغم من أن التصاميم الهجينة للبلازما/الرول أب غالبًا ما تتجنب هذه الضعف.
كلما كانت حلول Plasma أكثر فعالية، كلما كانت أقل الضغط على L1 لديه وظيفة توافر بيانات عالية الأداء. نقل النشاط إلى L2 يقلل أيضًا من الضغط MEV على L1.
اليوم، معظم الروابط ليست بعد غير موثوقة بالفعل؛ هناك مجلس أمن يمتلك القدرة على تجاوز سلوك (التفاؤلي أو الصحيح)نظام الإثبات. في بعض الحالات ، لا يكون نظام الإثبات مباشرا على الإطلاق ، أو إذا كان لديه وظيفة "استشارية" فقط. الأبعد إلى الأمام هي (i) عدد قليل من عمليات التجميع الخاصة بالتطبيقات ، مثل Fuel ، والتي لا يمكن ثقتها ، و (ii) اعتبارا من وقت كتابة هذه السطور ، Optimism و Arbitrum ، وهما مجموعتان كاملتان ل EVM حققتا علامة فارقة جزئية في انعدام الثقة تعرف باسم "المرحلة 1". السبب في أن عمليات التجميع لم تذهب إلى أبعد من ذلك هو القلق بشأن الأخطاء في الكود. نحن بحاجة إلى تراكمات غير موثوقة ، ولذا نحتاج إلى معالجة هذه المشكلة وجها لوجه.
أولا ، دعونا نلخص نظام "المرحلة" ، الذي تم تقديمه في الأصل في هذا المنشور. هناك متطلبات أكثر تفصيلا ، ولكن الملخص هو:
الهدف هو الوصول إلى المرحلة 2. التحدي الرئيسي في الوصول إلى المرحلة 2 هو الحصول على ثقة كافية بأن نظام الإثبات جدير بالثقة بدرجة كافية. هناك طريقتان رئيسيتان للقيام بذلك:
مخطط مُزخرف لنظام متعدد الإثبات، يجمع بين نظام إثبات متفائل واحد، ونظام إثبات الصحة ومجلس أمان.
للتحقق الرسمي ، الكثير. نحتاج إلى إنشاء نسخة تم التحقق منها رسميا من بروفير SNARK كامل ل EVM. هذا مشروع معقد بشكل لا يصدق ، على الرغم من أنه مشروع لقد بدأنا بالفعل. هناك خدعة واحدة تبسط بشكل كبير المهمة: يمكننا أن نصنع منفي SNARK موثق رسميًا لـ VM أدنى، على سبيل المثال. RISC-Vأوالقاهرة، ثم قم بكتابة تنفيذ لـ EVM في تلك الآلة الظاهرية الدنيا (وأثبت بشكل رسمي مكافأته لبعض مواصفات EVM الأخرى).
لدى العديد من المثبتين، هناك قطعتان رئيسيتان متبقيتان. أولاً، نحتاج إلى الحصول على ثقة كافية في ما لا يقل عن نظامي دليل مختلفين، كلاهما آمن بشكل معقول بشكل فردي وأنه إذا تم كسر أحدهما، فإنه سيتم كسره لأسباب مختلفة وغير متصلة (وبالتالي لن يتم كسرها في نفس الوقت). ثانيًا، نحتاج إلى الحصول على مستوى عالٍ جدًا من الثقة في اللوجيك الأساسي الذي يدمج أنظمة الدليل. هذه قطعة صغيرة جدًا من الشيفرة. هناك طرق لجعلها صغيرة للغاية - ما عليك سوى تخزين الأموال في عقد متعدد التوقيع الآمنالذين يوقعون العقود التي تمثل أنظمة البرهان الفردية - ولكن هذا يأتي على حساب تكاليف الغاز العالية في السلسلة. سيحتاج إلى العثور على توازن بين الكفاءة والسلامة.
نقل النشاط إلى L2 يقلل من ضغط MEV على L1.
تحد كبير واجهه النظام البيئي L2 اليوم هو أنه من الصعب على المستخدمين التنقل. وعلاوة على ذلك، تعيد طرق القيام بذلك كثيرًا فترضي افتراضات الثقة: الجسور المركزية، وعملاء RPC، وهلم جرا. إذا كنا جادين بالفكرة أن L2s هي جزء من إثيريوم، فيجب علينا أن نجعل استخدام بيئة L2 يشعر وكأنه استخدام بيئة إثيريوم موحدة.
مثال على سوء (وحتى خطورة: لقد خسرت شخصيًا 100 دولار بسبب خطأ في اختيار السلسلة هنا) تجربة مستخدم عبر L2 مرضية - على الرغم من أن هذا ليس خطأ Polymarket، ينبغي أن تكون توافقية L2 عبر المسؤولية الخاصة بالمحافظ ومجتمع معايير إيثيريوم (ERC). في نظام بيئي إيثيريوم يعمل بشكل جيد، يجب أن يشعر إرسال العملات من L1 إلى L2، أو من L2 إلى آخر، تمامًا كما لو كنت ترسل العملات داخل نفس L1.
هناك العديد من فئات تحسينات التوافق عبر L2. بشكل عام، الطريقة للتوصل إلى هذه هي أن نلاحظ أنه في نظرية،Ethereum المرتكزة على التراكمي هي نفس الشيء مثل تجزئة تنفيذ L1، ثم اسأل حيث ينقص الكون الفرعي الحالي لإثيريوم من تلك الفكرة في التطبيق العملي. إليك بعض الأمثلة:
كيف يمكن لعميل خفيف تحديث رؤيته لسلسلة رؤوس إيثيريوم. بمجرد الحصول على سلسلة الرؤوس، يمكنك استخدام دلائل Merkle للتحقق من أي كائن حالة. وبمجرد الحصول على كائنات الحالة L1 الصحيحة، يمكنك استخدام دلائل Merkle (وربما التواقيع، إذا كنت ترغب في التحقق من التأكيدات السابقة) للتحقق من أي كائن حالة على L2. يقوم Helios بالفعل بالسابق. توسيع ذلك إلى الأخير هو تحدي توحيد.
رسم تخطيطي مُزخرف لكيفية عمل محافظ متجر المفاتيح.
تواجه العديد من الأمثلة المذكورة أعلاه معضلات قياسية حول وقت التوحيد والطبقات التي يجب توحيدها. إذا قمت بالتوحيد في وقت مبكر جدا ، فإنك تخاطر بترسيخ حل أدنى. إذا قمت بالتوحيد بعد فوات الأوان ، فإنك تخاطر بخلق تجزئة لا داعي لها. في بعض الحالات ، هناك حل قصير الأجل له خصائص أضعف ولكنه أسهل في التنفيذ ، وحل طويل الأجل "صحيح في النهاية" ولكنه سيستغرق بضع سنوات للوصول إلى هناك.
طريقة واحدة يتميز بها هذا القسم هو أن هذه المهام ليست مجرد مشاكل تقنية: بل هي أيضًا (ربما حتى في المقام الأول!) مشاكل اجتماعية. إنها تتطلب من L2s والمحافظ و L1 أن يتعاونوا. قدرتنا على التعامل مع هذه المشكلة بنجاح هي اختبار لقدرتنا على البقاء معًا كمجتمع.
معظم هذه المقترحات عبارة عن إنشاءات "طبقة أعلى" ، وبالتالي لا تؤثر بشكل كبير على اعتبارات L1. استثناء واحد هو التسلسل المشترك ، والذي له تأثيرات شديدة على MEV.
إذا أصبحت L2s قابلة للتوسع بشكل كبير وناجحة ولكن L1 لا تزال قادرة على معالجة حجم قليل جدًا من المعاملات، فهناك العديد من المخاطر التي قد تنشأ تجاه إثيريوم:
لهذه الأسباب، فمن القيمة مواصلة توسيع L1 نفسه، والتأكد من أنه يمكنه مواصلة استيعاب عدد متزايد من الاستخدامات.
أسهل طريقة للتوسع هي ببساطة زيادة حد الغاز. ومع ذلك، يعرض هذا الأمر تمركز L1 للخطر، وبالتالي يضعف الخاصية الهامة الأخرى التي تجعل Ethereum L1 قوية: مصداقيتها كطبقة أساسية قوية. هناك جدل مستمر حول مدى الزيادة البسيطة في حد الغاز التي يمكن أن تكون مستدامة، ويتغير هذا أيضًا استنادًا إلى التقنيات الأخرى المُنفَّذة لجعل الكتل الأكبر أسهل في التحقق (على سبيل المثال، انتهاء الصلاحية التاريخية، عدم الاعتماد على الحالة، إثباتات صحة L1 EVM). شيء آخر مهم للارتقاء به هو ببساطة كفاءة برامج عميل Ethereum، والتي تم تحسينها بشكل أفضل اليوم مما كانت عليه قبل خمس سنوات. ستشمل استراتيجية فعالة لزيادة حد الغاز في L1 تسريع هذه التقنيات التحقق.
استراتيجية توسيع أخرى تتضمن تحديد الميزات وأنواع معينة من الحسابات التي يمكن جعلها أرخص دون التأثير على تمركزية الشبكة أو خصائص أمانها. أمثلة على ذلك تشمل:
ستتم مناقشة هذه التحسينات بمزيد من التفصيل في منشور مستقبلي حول التفاخر.
أخيرًا، الاستراتيجية الثالثة هي اللفات الأصلية (أو "اللفات الموضوعة"): وهي في الأساس إنشاء العديد من نسخ EVM التي تعمل بشكل متوازي، مما يؤدي إلى نموذج يكمل ما يمكن أن توفره اللفات، ولكن بشكل متكامل بشكل أكثر في البروتوكول.
هناك ثلاث استراتيجيات لتحسين L1، يمكن متابعتها بشكل فردي أو متوازي:
يجدر بنا أن نفهم أن هذه تقنيات مختلفة لها مقايضات مختلفة. على سبيل المثال ، تحتوي عمليات التجميع الأصلية على العديد من نقاط الضعف نفسها في قابلية التركيب مثل عمليات التجميع العادية: لا يمكنك إرسال معاملة واحدة تقوم بتنفيذ العمليات بشكل متزامن عبر العديد منها ، كما يمكنك مع العقود على نفس L1 (أو L2). يؤدي رفع حد الغاز إلى الابتعاد عن الفوائد الأخرى التي يمكن تحقيقها من خلال تسهيل التحقق من L1 ، مثل زيادة جزء المستخدمين الذين يقومون بتشغيل عقد التحقق ، وزيادة التخزين الفردي. يمكن أن يؤدي جعل عمليات محددة في EVM أرخص ، اعتمادا على كيفية إجرائها ، إلى زيادة تعقيد EVM الكلي.
السؤال الكبير الذي تحتاج أي خارطة طريق لتوسيع نطاق L1 إلى الإجابة عليه هو: ما هي الرؤية النهائية لما ينتمي إلى L1 وما ينتمي إلى L2؟ من الواضح أنه من السخف أن يستمر كل شيء على L1: تدخل حالات الاستخدام المحتملة في مئات الآلاف من المعاملات في الثانية ، وهذا من شأنه أن يجعل L1 غير قابل للتحقق تماما (ما لم نذهب إلى مسار التجميع الأصلي). لكننا نحتاج إلى بعض المبادئ التوجيهية ، حتى نتمكن من التأكد من أننا لا نخلق وضعا نزيد فيه حد الغاز بمقدار 10 أضعاف ، ونلحق أضرارا جسيمة باللامركزية في Ethereum L1 ، ونجد أننا وصلنا فقط إلى عالم حيث بدلا من 99٪ من النشاط على L2 ، 90٪ من النشاط على L2 ، وبالتالي فإن النتيجة تبدو متشابهة تقريبا ، باستثناء خسارة لا رجعة فيها لكثير مما يجعل Ethereum L1 مميزا.
واحدة من الآراء المقترحة حول 'تقسيم العمل' بين L1 و L2s،مصدر.
جلب المزيد من المستخدمين إلى L1 يعني تحسين ليس فقط الحجم، ولكن أيضًا جوانب أخرى من L1. يعني أن المزيد من MEV سيظل على L1 (بدلاً من أن يصبح مشكلة فقط لـ L2)، وسيكون هناك حاجة أكبر حتى أكثر إلحاحًا للتعامل معه بشكل صريح. إنه يزيد بشكل كبير من قيمة وجود أوقات فتح سريعة على L1. وهو أيضًا يعتمد بشكل كبير على التحقق من L1 (“الحافة”) بشكل جيد.
في البداية، كان لدى إثيريوم استراتيجيتان لتوسيع القدرات في خريطة طريقه. واحدة (مثلا، انظر هذه الورقة المبكرةمن أهم الابتكارات (منذ عام 2015) كانت "التجزئة": بدلاً من التحقق وتخزين جميع المعاملات في السلسلة، يحتاج كل عقد فقط للتحقق وتخزين جزء صغير من المعاملات. هذا هو كيفية عمل أي شبكة ند للند أخرى (على سبيل المثال، BitTorrent) أيضًا، لذا بالتأكيد يمكننا جعل البلوكشين يعمل بنفس الطريقة. كانت واحدة أخرى بروتوكولات الطبقة 2: شبكات تجلس على رأس إثيريوم بطريقة تتيح لها الاستفادة بشكل كامل من أمانه، مع الاحتفاظ بمعظم البيانات والحسابات خارج السلسلة الرئيسية. "بروتوكولات الطبقة 2" تعنيقنوات الحالة في عام 2015، بلازمافي عام 2017، ثمرولابسفي عام 2019. تكون اللفات أكثر قوة من القنوات الحالية أو البلازما، ولكنها تتطلب كمية كبيرة من عرض الباندويث في البيانات على السلسلة. لحسن الحظ، بحلول عام 2019، قد حل بحث التشظيمشكلة التحقق من "توفر البيانات" على نطاق واسعنتيجة لذلك تقاربت المسارات الاثنان، وحصلنا على الخارطة طريق متمحورة حول الرول ابالتي تظل استراتيجية توسيع إثيريوم حتى اليوم.
الارتفاع، إصدار خريطة الطريق 2023.
يقترح خريطة العمل المركزة على الRollup تقسيمًا بسيطًا للعمل: يركز Ethereum L1 على كونه طبقة أساسية قوية ولامركزية، بينما تتولى L2s مهمة مساعدة النظام البيئي على التوسع. هذا نمط يتكرر في كل مكان في المجتمع: نظام المحاكم (L1) ليس هنا ليكون سريعًا للغاية وفعالًا، بل هو هنا لحماية العقود وحقوق الملكية، ويتوقف الأمر على رجال الأعمال (L2) لبناء فوق ذلكمتينقاعدةطبقةويأخذ البنية البشرية إلى (مجازي وحرفي) المريخ.
هذا العام، شهدت الخريطة الطريقية المركزة على الRollup نجاحات هامة: تزايد كبير في عرض النطاق الترددي لبيانات Ethereum L1 معالكتل EIP-4844, والعديد من الحلول الأسطوانية للآر إف إم الآن مرحلة 1. A very تنفيذ متنوع وتعددي للتجزئة، حيث يعمل كل L2 ك "شظية" لها قواعدها الداخلية ومنطقها ، أصبح الآن حقيقة واقعة. ولكن كما رأينا ، فإن اتخاذ هذا المسار ينطوي على بعض التحديات الفريدة الخاصة به. ولذا فإن مهمتنا الآن هي الانتهاء من خارطة الطريق التي تركز على التجميع ، وحل هذه المشكلات ، مع الحفاظ على المتانة واللامركزية التي تجعل Ethereum L1 مميزا.
كانت مشكلة قابلية التوسع مفهومًاتم إطلاقه في عام 2017, الذي اعتبر أن هناك توتر بين ثلاث خصائص للبلوكشين: اللامركزية (بشكل أكثر تحديدًا: تكلفة منخفضة لتشغيل عقدة)، التوسعة (بشكل أكثر تحديدًا: عدد عالٍ من المعاملات المعالجة)، والأمان (بشكل أكثر تحديدًا: الحاجة إلى أن يفسد المهاجم جزءًا كبيرًا من العقد في الشبكة بأكملها لجعل حتى معاملة واحدة تفشل).
بشكل ملحوظ، الثلاثية ليست نظرية رياضية، ولم يتم إرفاق البريد الإلكتروني الذي يقدم الثلاثية بدليل رياضي. لقد قدم حجة رياضية استنتاجية: إذا كان بإمكان جهاز العميل اللابتوب (على سبيل المثال) التحقق من N معاملات في الثانية، وكان لديك سلسلة تعالج k*N معاملة في الثانية، فإما (i) أن ترى كل معاملة فقط من قبل 1/k من العقد، وهو ما يعني أن المهاجم يحتاج فقط إلى تلفيق عدد قليل من العقد لتمرير معاملة سيئة، أو (ii) سيؤدي ذلك إلى أن تكون عقدك قوية وسلسلتك غير مركزية. الغرض من البريد لم يكن أبدًا لإظهار أن كسر الثلاثية مستحيل؛ بل كان الهدف منه إظهار أن كسر الثلاثية صعب - فإنه يتطلب التفكير بطريقة مبتكرة خارج الصندوق الذي تقترحه الحجة.
لسنوات عديدة، كان من الشائع بالنسبة لبعض السلاسل عالية الأداء أن تدعي أنها تحل معضلة الثلاثية دون القيام بأي شيء ذكي على مستوى الهندسة المعمارية الأساسية، عادةً عن طريق استخدام حيل هندسة البرمجيات لتحسين العقد. هذا مضلل دائمًا، وتشغيل عقد في مثل هذه السلاسل ينتهي دائمًا بصعوبة أكبر بكثير مما هو عليه في إيثيريوم.هذا المنشوريدخل في بعض التفاصيل الدقيقة التي تشير إلى سبب هذا (وبالتالي، لماذا لا يمكن لهندسة برمجيات العميل L1 أن توسع Ethereum بمفردها).
ومع ذلك، فإن الجمع بين أخذ عينات من توافر البيانات و SNARKs لا يحل المعضلة الثلاثية: إذ يسمح للعميل بالتحقق من توافر كمية معينة من البيانات، وتمت إجراء عدد معين من خطوات الحساب بشكل صحيح، بينما يتم تنزيل جزء صغير فقط من تلك البيانات وتشغيل كمية أقل بكثير من الحسابات. SNARKs هي بدون ثقة. تمتلك عينة توافر البيانات تفاصيل دقيقةنموذج الثقة على أساس عدد قليل من N, ولكنه يحافظ على الخاصية الأساسية التي تتمتع بها الشبكات غير القابلة للتوسيع، وهي أنه حتى هجوم بنسبة 51% لا يمكن أن يجبر الكتل السيئة على القبول من قبل الشبكة.
طريقة أخرى لحل المعضلة الثلاثية هي تركيبات البلازما، التي تستخدم تقنيات ذكية لنقل المسؤولية لمراقبة توافر البيانات إلى المستخدم بطريقة متوافقة مع الحوافز. في الفترة بين عامي 2017 و 2019، عندما كان كل ما كان لدينا لتوسيع عمليات الحساب هو إثباتات الاحتيال، كانت البلازما محدودة جدًا فيما يمكنها فعله بأمان، ولكن توسيع استخدام تقنية SNARKs جعل تركيبات البلازماأكثر قابلية للتحقيق بكثيرلمجموعة أوسع من حالات الاستخدام مما كان عليه في السابق.
اعتبارًا من 13 مارس 2024، عندما ترقية دينكونعندما يتم تشغيله، يحتوي سلسلة تشفير إثيريوم على ثلاث "كتل" بحجم 125 كيلوبايت تقريبًا في كل فتحة زمنية بمعدل 12 ثانية، أو 375 كيلوبايت تقريبًا في كل فتحة زمنية من عرض البيانات المتاحة. بافتراض نشر بيانات المعاملات على السلسلة مباشرة، فإن نقل ERC20 يستهلك حوالي 180 بايتًا، وبالتالي، أقصى عدد للمعاملات في الثانية للتقنيات المتقدمة على سلسلة تشفير إثيريوم هو:
375000 / 12 / 180 = 173.6 TPS
إذا قمنا بإضافة بيانات Ethereum (الحد النظري: 30 مليون وحدة غاز لكل فتحة / 16 وحدة غاز لكل بايت = 1،875،000 بايت لكل فتحة)، سيصبح ذلك 607 TPS. مع PeerDAS، الخطة هي زيادة هدف عدد البلوب إلى 8-16، وهو ما سيمنحنا 463-926 TPS في بيانات Ethereum.
هذه زيادة كبيرة على إثيريوم L1، ولكنها ليست كافية. نريد المزيد من قابلية التوسع. هدفنا في المدى الطويل هو 16 ميجابايت لكل فتحة، وهو ما إذا تم دمجه مع تحسينات في ضغط بيانات الرول أب سيمنحنا حوالي 58،000 TPS.
PeerDAS هو تنفيذ مبسط نسبيًا لعينة "1D". كل كتلة في إثيريوم هي متعددة الحدود من الدرجة 4096 فوق حقل أساسي بحجم 253 بت. نبث "حصصًا" من المتعدد، حيث يتكون كل حصة من 16 تقييمًا في 16 إحداثيًا متجاورًا مأخوذة من مجموعة إجمالية من 8192 إحداثيًا. أي 4096 من التقييمات الإجمالية (بمعلمات مقترحة حاليًا: أي 64 من العينات الممكنة 128) يمكن أن تسترد الكتلة.
يعمل PeerDAS عن طريق الاستماع كل عميل على عدد صغير من الشبكات الفرعية، حيث تبث الشبكة الفرعية الثانية عينة البلوك الثانية من أي بلوب، وتطلب أيضًا بلوبات على شبكات فرعية أخرى يحتاجها من خلال طلب نظرائه في شبكة p2p العالمية (الذين سيكونون يستمعون إلى شبكات فرعية مختلفة). إصدار أكثر تحفظًا، SubnetDAS, يستخدم آلية الشبكة الفرعية فقط، دون الطبقة الإضافية لطلب المساعدة من الأقران. الاقتراح الحالي هو أن تستخدم العقد المشاركة في الحصة النسبية SubnetDAS، وأن تستخدم العقد الأخرى (أي "العملاء") PeerDAS.
نظريًا، يمكننا توسيع عينة 1D إلى حد بعيد: إذا قمنا بزيادة الحد الأقصى لعدد الكتل إلى 256 (بالتالي، الهدف إلى 128)، فإننا سنصل إلى هدفنا من 16 ميجابايت بينما ستكلف عينة توفر البيانات كل عقدة فقط 16 عينة 128 blobs 512 بايت لكل عينة لكل كتلة = 1 ميجابايت من عرض البيانات لكل فتحة. هذا يكاد يكون ضمن نطاق تحملنا: يمكن القيام به، ولكن ذلك سيعني أن العملاء المحددين بعرض النطاق لا يمكنهم العينة. يمكننا تحسين هذا إلى حد ما عن طريق تقليل عدد الكتل وزيادة حجم الكتلة، ولكن هذا سيجعل عملية الإعادة أكثر تكلفة.
وبالتالي نريد في النهاية أن نذهب أبعد من ذلك، ونفعلعينات ثنائية الأبعاد، الذي يعمل عن طريق أخذ عينات عشوائية ليس فقط داخل الكتل، ولكن أيضًا بين الكتل. تُستخدم الخصائص الخطية لالتزامات KZG لـ "توسيع" مجموعة الكتل في كتلة مع قائمة من "الكتل الافتراضية" الجديدة التي تُشفر بشكل متكرر نفس المعلومات.
عينة ثنائية الأبعاد. المصدر: a16z crypto
من الضروري بشكل حاسم حساب تمديد الالتزامات دون الحاجة إلى وجود الكتل، لذلك النظام ودية بشكل أساسي لإنشاء كتل موزعة. العقدة التي تقوم فعليًا ببناء الكتلة ستحتاج فقط إلى وجود الالتزامات KZG للكتلة، ويمكن لها الاعتماد على DAS للتحقق من توفر الكتل. يعمل DAS بشكل طبيعي أيضًا على إنشاء كتل موزعة.
الخطوة التالية الفورية هي إكمال تنفيذ ونشر PeerDAS. من هناك، إنها عملية تدريجية لزيادة عدد البلوك على PeerDAS بحذر مع مراقبة الشبكة وتحسين البرنامج لضمان الأمان. في الوقت نفسه، نريد المزيد من العمل الأكاديمي على تشكيل PeerDAS وإصدارات أخرى من DAS وتفاعلاتها مع قضايا مثل سلامة قاعدة اختيار الفورك.
علاوة على ذلك في المستقبل ، نحتاج إلى مزيد من العمل لمعرفة الإصدار المثالي من 2D DAS وإثبات خصائص السلامة الخاصة به. نريد أيضا الانتقال في النهاية بعيدا عن KZG إلى بديل مقاوم للكم وخالي من الإعداد الموثوق به. حاليا ، لا نعرف مرشحين ودودين لبناء الكتل الموزعة. حتى تقنية "القوة الغاشمة" باهظة الثمن لاستخدام STARKs العودية لإنشاء أدلة على الصلاحية لإعادة بناء الصفوف والأعمدة لا تكفي ، لأنه في حين أن STARK من الناحية الفنية هي O (log (n) * log (log (n)) تجزئت في الحجم (مع STIR), في الواقع، يكاد يكون STARK بحجم كبير تقريبًا مثل كتلة كاملة.
المسارات الواقعية التي أراها على المدى الطويل هي:
يمكننا عرض هذه على طول الطيف التضحية:
لاحظ أن هذا الاختيار موجود حتى لو قررنا توسيع التنفيذ على L1 مباشرة. هذا لأنه إذا كان يجب على L1 معالجة العديد من TPS ، فستصبح الكتل L1 كبيرة جدًا ، وسيود العملاء طريقة فعالة للتحقق من صحتها ، لذا سنحتاج إلى استخدام نفس التكنولوجيا التي تدعم ال rollups (ZK-EVM و DAS) في L1.
يقلل الحاجة إلى 2D DAS إلى حد ما، أو على الأقل يتم تأخيرها، إذا تم تنفيذ ضغط البيانات (انظر أدناه)، ويقلل أكثر إذا استخدم بلازما على نطاق واسع. كما تشكل DAS تحدياً لبروتوكولات وآليات بناء الكتل الموزعة: بينما نظرياً يعتبر DAS ودي لإعادة البناء الموزعة، إلا أن هذا يحتاج إلى توحيد في الممارسة.قائمة الإدراجالاقتراحات وميكانيكيات اختيار الشوكة المحيطة بها.
كل عملية في اللف من البيانات تأخذ كمية كبيرة من مساحة البيانات على السلسلة: تأخذ عملية نقل ERC20 حوالي 180 بايت. حتى مع أخذ عينات مثالية لتوافر البيانات، يتم وضع حد لقدرة التوسع لبروتوكولات الطبقة 2. مع 16 ميجابايت لكل فتحة، نحصل على:
16000000 / 12 / 180 = 7407 TPS
ماذا لو كان بالإضافة إلى معالجة البسط ، يمكننا أيضا معالجة المقام ، وجعل كل معاملة في مجموعة التحديثات تأخذ عددا أقل من البايتات على السلسلة؟
أفضل تفسير في رأيي هوهذا الرسم البياني منذ عامين:
أبسط مكاسب هي مجرد ضغط بايت صفري: استبدال كل تسلسل طويل من بايتات الصفر ببايتين يمثلان كم من بايتات صفر هناك. للذهاب أبعد من ذلك، نستفيد من الخصائص الخاصة للمعاملات:
الشيء الرئيسي المتبقي هو تنفيذ الخطط أعلاه. التضحيات الرئيسية هي:
اعتماد ERC-4337، وفي نهاية المطاف تأصيل أجزاء منه في L2 EVMs، يمكن أن يسرع بشكل كبير نشر تقنيات التجميع. تأصيل أجزاء من ERC-4337 على L1 يمكن أن يسرع نشرها على L2s.
حتى مع وجود 16 ميغابايت من النقط وضغط البيانات ، فإن 58,000 TPS ليست بالضرورة كافية للاستيلاء الكامل على مدفوعات المستهلك أو القطاعات الاجتماعية اللامركزية أو غيرها من القطاعات ذات النطاق الترددي العالي ، ويصبح هذا صحيحا بشكل خاص إذا بدأنا في أخذ الخصوصية في الاعتبار ، مما قد يؤدي إلى انخفاض قابلية التوسع بمقدار 3-8x. بالنسبة للتطبيقات ذات الحجم الكبير والقيمة المنخفضة ، فإن أحد الخيارات اليوم هو ملف validium، الذي يحتفظ بالبيانات خارج السلسلة ولديه نموذج أمان مثير للاهتمام حيث لا يمكن للمشغل سرقة أموال المستخدمين، ولكن يمكن أن يختفي مؤقتًا أو دائمًا ويجمد جميع أموال المستخدمين. ولكن يمكننا أن نفعل أفضل.
Plasma هو حلاً لتوسيع الذي يشمل مشغل نشر كتل خارج السلسلة، ووضع جذور Merkle لتلك الكتل على السلسلة (على عكس rollups، حيث يتم وضع الكتلة الكاملة على السلسلة). لكل كتلة، يرسل المشغل إلى كل مستخدم فرع Merkle يثبت ما حدث، أو لم يحدث، لأصول تلك المستخدم. يمكن للمستخدمين سحب أصولهم عن طريق تقديم فرع Merkle. من الأهمية بمكان، هذا الفرع لا يجب أن يكون متأصلاً في آخر حالة - لهذا السبب، حتى إذا فشلت توافر البيانات، يمكن للمستخدم استعادة أصولهم عن طريق سحب أحدث حالة متاحة لديهم. إذا قدم مستخدم فرعًا غير صالح (على سبيل المثال الخروج من أصل قام بإرساله بالفعل إلى شخص آخر، أو المشغل نفسه إنشاء أصل من العدم)، يمكن لآلية تحدي على السلسلة أن تقضي بمن ينتمي بحق إلى الأصل.
رسم بياني لسلسلة بلازما كاش. يتم وضع المعاملات التي تنفق عملة i في الموقع i في الشجرة. في هذا المثال، وبناءً على افتراض صحة جميع الشجيرات السابقة، نعلم أن إيف تمتلك حاليًا عملة 1، ديفيد يمتلك عملة 4، وجورج يمتلك عملة 6.
كانت الإصدارات المبكرة من البلازما قادرة فقط على التعامل مع حالة استخدام المدفوعات ، ولم تكن قادرة على التعميم بشكل فعال. إذا طلبنا التحقق من كل جذر باستخدام SNARK ، فإن البلازما تصبح أكثر قوة. يمكن تبسيط كل لعبة تحدي بشكل كبير ، لأننا نأخذ معظم المسارات الممكنة للمشغل للغش. تفتح مسارات جديدة أيضا للسماح بتوسيع تقنيات البلازما لتشمل فئة أكثر عمومية من الأصول. أخيرا ، في حالة عدم قيام المشغل بالغش ، يمكن للمستخدمين سحب أموالهم على الفور ، دون الحاجة إلى الانتظار لفترة تحدي مدتها أسبوع واحد.
طريقة واحدة (ليست الطريقة الوحيدة) لإنشاء سلسلة بلازما EVM: استخدم ZK-SNARK لبناء شجرة UTXO موازية تعكس تغييرات التوازن التي أجراها EVM ، وتحدد تخطيطا فريدا لما هو "نفس العملة" في نقاط مختلفة من التاريخ. يمكن بعد ذلك بناء بناء البلازما فوق ذلك.
إحدى الرؤى الرئيسية هي أن نظام البلازما لا يحتاج إلى أن يكون مثاليًا. حتى لو كنت تستطيع حماية مجموعة فرعية من الأصول (على سبيل المثال، حتى العملات التي لم تتحرك في الأسبوع الماضي فقط)، فقد قمت بتحسين الوضع الراهن بشكل كبير بالفعل على نظام EVM فائق القابلية للتطوير، وهو نظام فاليديوم صالح.
فئة أخرى من البناء هي الهجين بلازما/رول أب، مثل Intmaxتضع هذه البنى كمية بيانات صغيرة جدًا لكل مستخدم على السلسلة (على سبيل المثال 5 بايت)، وبذلك تحصل على خصائص تقع بين البلازما والرولبس: في حالة Intmax، تحصل على مستوى عالٍ جدًا من التوسيع والخصوصية، على الرغم من أن القدرة في عالم 16 ميجابايت محدودة نظريًا إلى حوالي 266،667 TPS.
المهمة الرئيسية المتبقية هي جلب أنظمة البلازما إلى الإنتاج. كما ذُكر أعلاه، فإن "البلازما مقابل الفاليديوم" ليس ثنائيًا: يمكن تحسين خصائص سلامة أي فاليديوم على الأقل قليلًا عن طريق إضافة ميزات البلازما إلى آلية الخروج. الجزء البحثي هو الحصول على خصائص مثلى (من حيث متطلبات الثقة وتكلفة الغاز L1 في أسوأ الحالات، والعرضة للهجوم الضاري) لـ EVM، فضلاً عن البناء البديل لتطبيقات محددة. بالإضافة إلى ذلك، يجب معالجة التعقيد المفهومي الأكبر للبلازما مقارنة بالروبوتات مباشرة، سواء من خلال البحث أو من خلال بناء أطر عامة أفضل بشكل مباشر.
أبرز التضحيات في استخدام تصاميم البلازما هو أنها تعتمد أكثر على المشغلين وأصعب في التنفيذاستنادا اليعلى الرغم من أن التصاميم الهجينة للبلازما/الرول أب غالبًا ما تتجنب هذه الضعف.
كلما كانت حلول Plasma أكثر فعالية، كلما كانت أقل الضغط على L1 لديه وظيفة توافر بيانات عالية الأداء. نقل النشاط إلى L2 يقلل أيضًا من الضغط MEV على L1.
اليوم، معظم الروابط ليست بعد غير موثوقة بالفعل؛ هناك مجلس أمن يمتلك القدرة على تجاوز سلوك (التفاؤلي أو الصحيح)نظام الإثبات. في بعض الحالات ، لا يكون نظام الإثبات مباشرا على الإطلاق ، أو إذا كان لديه وظيفة "استشارية" فقط. الأبعد إلى الأمام هي (i) عدد قليل من عمليات التجميع الخاصة بالتطبيقات ، مثل Fuel ، والتي لا يمكن ثقتها ، و (ii) اعتبارا من وقت كتابة هذه السطور ، Optimism و Arbitrum ، وهما مجموعتان كاملتان ل EVM حققتا علامة فارقة جزئية في انعدام الثقة تعرف باسم "المرحلة 1". السبب في أن عمليات التجميع لم تذهب إلى أبعد من ذلك هو القلق بشأن الأخطاء في الكود. نحن بحاجة إلى تراكمات غير موثوقة ، ولذا نحتاج إلى معالجة هذه المشكلة وجها لوجه.
أولا ، دعونا نلخص نظام "المرحلة" ، الذي تم تقديمه في الأصل في هذا المنشور. هناك متطلبات أكثر تفصيلا ، ولكن الملخص هو:
الهدف هو الوصول إلى المرحلة 2. التحدي الرئيسي في الوصول إلى المرحلة 2 هو الحصول على ثقة كافية بأن نظام الإثبات جدير بالثقة بدرجة كافية. هناك طريقتان رئيسيتان للقيام بذلك:
مخطط مُزخرف لنظام متعدد الإثبات، يجمع بين نظام إثبات متفائل واحد، ونظام إثبات الصحة ومجلس أمان.
للتحقق الرسمي ، الكثير. نحتاج إلى إنشاء نسخة تم التحقق منها رسميا من بروفير SNARK كامل ل EVM. هذا مشروع معقد بشكل لا يصدق ، على الرغم من أنه مشروع لقد بدأنا بالفعل. هناك خدعة واحدة تبسط بشكل كبير المهمة: يمكننا أن نصنع منفي SNARK موثق رسميًا لـ VM أدنى، على سبيل المثال. RISC-Vأوالقاهرة، ثم قم بكتابة تنفيذ لـ EVM في تلك الآلة الظاهرية الدنيا (وأثبت بشكل رسمي مكافأته لبعض مواصفات EVM الأخرى).
لدى العديد من المثبتين، هناك قطعتان رئيسيتان متبقيتان. أولاً، نحتاج إلى الحصول على ثقة كافية في ما لا يقل عن نظامي دليل مختلفين، كلاهما آمن بشكل معقول بشكل فردي وأنه إذا تم كسر أحدهما، فإنه سيتم كسره لأسباب مختلفة وغير متصلة (وبالتالي لن يتم كسرها في نفس الوقت). ثانيًا، نحتاج إلى الحصول على مستوى عالٍ جدًا من الثقة في اللوجيك الأساسي الذي يدمج أنظمة الدليل. هذه قطعة صغيرة جدًا من الشيفرة. هناك طرق لجعلها صغيرة للغاية - ما عليك سوى تخزين الأموال في عقد متعدد التوقيع الآمنالذين يوقعون العقود التي تمثل أنظمة البرهان الفردية - ولكن هذا يأتي على حساب تكاليف الغاز العالية في السلسلة. سيحتاج إلى العثور على توازن بين الكفاءة والسلامة.
نقل النشاط إلى L2 يقلل من ضغط MEV على L1.
تحد كبير واجهه النظام البيئي L2 اليوم هو أنه من الصعب على المستخدمين التنقل. وعلاوة على ذلك، تعيد طرق القيام بذلك كثيرًا فترضي افتراضات الثقة: الجسور المركزية، وعملاء RPC، وهلم جرا. إذا كنا جادين بالفكرة أن L2s هي جزء من إثيريوم، فيجب علينا أن نجعل استخدام بيئة L2 يشعر وكأنه استخدام بيئة إثيريوم موحدة.
مثال على سوء (وحتى خطورة: لقد خسرت شخصيًا 100 دولار بسبب خطأ في اختيار السلسلة هنا) تجربة مستخدم عبر L2 مرضية - على الرغم من أن هذا ليس خطأ Polymarket، ينبغي أن تكون توافقية L2 عبر المسؤولية الخاصة بالمحافظ ومجتمع معايير إيثيريوم (ERC). في نظام بيئي إيثيريوم يعمل بشكل جيد، يجب أن يشعر إرسال العملات من L1 إلى L2، أو من L2 إلى آخر، تمامًا كما لو كنت ترسل العملات داخل نفس L1.
هناك العديد من فئات تحسينات التوافق عبر L2. بشكل عام، الطريقة للتوصل إلى هذه هي أن نلاحظ أنه في نظرية،Ethereum المرتكزة على التراكمي هي نفس الشيء مثل تجزئة تنفيذ L1، ثم اسأل حيث ينقص الكون الفرعي الحالي لإثيريوم من تلك الفكرة في التطبيق العملي. إليك بعض الأمثلة:
كيف يمكن لعميل خفيف تحديث رؤيته لسلسلة رؤوس إيثيريوم. بمجرد الحصول على سلسلة الرؤوس، يمكنك استخدام دلائل Merkle للتحقق من أي كائن حالة. وبمجرد الحصول على كائنات الحالة L1 الصحيحة، يمكنك استخدام دلائل Merkle (وربما التواقيع، إذا كنت ترغب في التحقق من التأكيدات السابقة) للتحقق من أي كائن حالة على L2. يقوم Helios بالفعل بالسابق. توسيع ذلك إلى الأخير هو تحدي توحيد.
رسم تخطيطي مُزخرف لكيفية عمل محافظ متجر المفاتيح.
تواجه العديد من الأمثلة المذكورة أعلاه معضلات قياسية حول وقت التوحيد والطبقات التي يجب توحيدها. إذا قمت بالتوحيد في وقت مبكر جدا ، فإنك تخاطر بترسيخ حل أدنى. إذا قمت بالتوحيد بعد فوات الأوان ، فإنك تخاطر بخلق تجزئة لا داعي لها. في بعض الحالات ، هناك حل قصير الأجل له خصائص أضعف ولكنه أسهل في التنفيذ ، وحل طويل الأجل "صحيح في النهاية" ولكنه سيستغرق بضع سنوات للوصول إلى هناك.
طريقة واحدة يتميز بها هذا القسم هو أن هذه المهام ليست مجرد مشاكل تقنية: بل هي أيضًا (ربما حتى في المقام الأول!) مشاكل اجتماعية. إنها تتطلب من L2s والمحافظ و L1 أن يتعاونوا. قدرتنا على التعامل مع هذه المشكلة بنجاح هي اختبار لقدرتنا على البقاء معًا كمجتمع.
معظم هذه المقترحات عبارة عن إنشاءات "طبقة أعلى" ، وبالتالي لا تؤثر بشكل كبير على اعتبارات L1. استثناء واحد هو التسلسل المشترك ، والذي له تأثيرات شديدة على MEV.
إذا أصبحت L2s قابلة للتوسع بشكل كبير وناجحة ولكن L1 لا تزال قادرة على معالجة حجم قليل جدًا من المعاملات، فهناك العديد من المخاطر التي قد تنشأ تجاه إثيريوم:
لهذه الأسباب، فمن القيمة مواصلة توسيع L1 نفسه، والتأكد من أنه يمكنه مواصلة استيعاب عدد متزايد من الاستخدامات.
أسهل طريقة للتوسع هي ببساطة زيادة حد الغاز. ومع ذلك، يعرض هذا الأمر تمركز L1 للخطر، وبالتالي يضعف الخاصية الهامة الأخرى التي تجعل Ethereum L1 قوية: مصداقيتها كطبقة أساسية قوية. هناك جدل مستمر حول مدى الزيادة البسيطة في حد الغاز التي يمكن أن تكون مستدامة، ويتغير هذا أيضًا استنادًا إلى التقنيات الأخرى المُنفَّذة لجعل الكتل الأكبر أسهل في التحقق (على سبيل المثال، انتهاء الصلاحية التاريخية، عدم الاعتماد على الحالة، إثباتات صحة L1 EVM). شيء آخر مهم للارتقاء به هو ببساطة كفاءة برامج عميل Ethereum، والتي تم تحسينها بشكل أفضل اليوم مما كانت عليه قبل خمس سنوات. ستشمل استراتيجية فعالة لزيادة حد الغاز في L1 تسريع هذه التقنيات التحقق.
استراتيجية توسيع أخرى تتضمن تحديد الميزات وأنواع معينة من الحسابات التي يمكن جعلها أرخص دون التأثير على تمركزية الشبكة أو خصائص أمانها. أمثلة على ذلك تشمل:
ستتم مناقشة هذه التحسينات بمزيد من التفصيل في منشور مستقبلي حول التفاخر.
أخيرًا، الاستراتيجية الثالثة هي اللفات الأصلية (أو "اللفات الموضوعة"): وهي في الأساس إنشاء العديد من نسخ EVM التي تعمل بشكل متوازي، مما يؤدي إلى نموذج يكمل ما يمكن أن توفره اللفات، ولكن بشكل متكامل بشكل أكثر في البروتوكول.
هناك ثلاث استراتيجيات لتحسين L1، يمكن متابعتها بشكل فردي أو متوازي:
يجدر بنا أن نفهم أن هذه تقنيات مختلفة لها مقايضات مختلفة. على سبيل المثال ، تحتوي عمليات التجميع الأصلية على العديد من نقاط الضعف نفسها في قابلية التركيب مثل عمليات التجميع العادية: لا يمكنك إرسال معاملة واحدة تقوم بتنفيذ العمليات بشكل متزامن عبر العديد منها ، كما يمكنك مع العقود على نفس L1 (أو L2). يؤدي رفع حد الغاز إلى الابتعاد عن الفوائد الأخرى التي يمكن تحقيقها من خلال تسهيل التحقق من L1 ، مثل زيادة جزء المستخدمين الذين يقومون بتشغيل عقد التحقق ، وزيادة التخزين الفردي. يمكن أن يؤدي جعل عمليات محددة في EVM أرخص ، اعتمادا على كيفية إجرائها ، إلى زيادة تعقيد EVM الكلي.
السؤال الكبير الذي تحتاج أي خارطة طريق لتوسيع نطاق L1 إلى الإجابة عليه هو: ما هي الرؤية النهائية لما ينتمي إلى L1 وما ينتمي إلى L2؟ من الواضح أنه من السخف أن يستمر كل شيء على L1: تدخل حالات الاستخدام المحتملة في مئات الآلاف من المعاملات في الثانية ، وهذا من شأنه أن يجعل L1 غير قابل للتحقق تماما (ما لم نذهب إلى مسار التجميع الأصلي). لكننا نحتاج إلى بعض المبادئ التوجيهية ، حتى نتمكن من التأكد من أننا لا نخلق وضعا نزيد فيه حد الغاز بمقدار 10 أضعاف ، ونلحق أضرارا جسيمة باللامركزية في Ethereum L1 ، ونجد أننا وصلنا فقط إلى عالم حيث بدلا من 99٪ من النشاط على L2 ، 90٪ من النشاط على L2 ، وبالتالي فإن النتيجة تبدو متشابهة تقريبا ، باستثناء خسارة لا رجعة فيها لكثير مما يجعل Ethereum L1 مميزا.
واحدة من الآراء المقترحة حول 'تقسيم العمل' بين L1 و L2s،مصدر.
جلب المزيد من المستخدمين إلى L1 يعني تحسين ليس فقط الحجم، ولكن أيضًا جوانب أخرى من L1. يعني أن المزيد من MEV سيظل على L1 (بدلاً من أن يصبح مشكلة فقط لـ L2)، وسيكون هناك حاجة أكبر حتى أكثر إلحاحًا للتعامل معه بشكل صريح. إنه يزيد بشكل كبير من قيمة وجود أوقات فتح سريعة على L1. وهو أيضًا يعتمد بشكل كبير على التحقق من L1 (“الحافة”) بشكل جيد.