مقال لفهم دور Validity Rollups و Cairo VM

تعد مجموعات الصلاحية هي أكثر الطرق الواعدة لزيادة إنتاجية Ethereum بطريقة آمنة ولا مركزية ؛ zkEVM و Cairo VM (CVM) هما نوعان من الأجهزة الافتراضية المستخدمة في Validity Rollups.

** بقلم: **** StarkWare **

** تجميع: Bump Man **

TL ؛ DR

  • تعد مجموعات الصلاحية هي أكثر الطرق الواعدة لزيادة إنتاجية Ethereum بطريقة آمنة ولا مركزية ؛ zkEVM و Cairo VM (CVM) هما نوعان من الأجهزة الافتراضية المستخدمة في Validity Rollups.
  • يركز zkEVM على توافق Ethereum على حساب الأداء وقابلية التوسع.
  • يعطي Cairo VM المستخدم في Starknet الأولوية للأداء وقابلية التوسع على التوافق.

التراكمية موضوع ساخن هذا العام عند الحديث عن توسيع نطاق Ethereum. من بين الأنواع المختلفة من القوائم ، نعتقد أن Validity Rollups (VRs) ، والمعروفة أيضًا باسم zk-rollups ، هي أكثر الطرق الواعدة لزيادة إنتاجية Ethereum بطريقة آمنة ولا مركزية. في قلب حل القياس هذا ، يوجد حساب يمكن التحقق منه باستخدام براهين على الصلاحية. إليك طريقة عملها:

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

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

  • مجموعات الصلاحية *

  • ملاحظة: غالبًا ما يُطلق على مجموعات الصلاحية التراكمية اسم Zero-Knowledge Rollups بشكل غير صحيح ، ولكن هذا ليس دقيقًا. معظم مجموعات الصلاحية لا تستخدم ملفات ZKP ، ولا تستخدم لأغراض الخصوصية. لذلك ، فإن المصطلح "Validity Rollup" أكثر دقة. *

آلة افتراضية خارج السلسلة

قبل الانتقال ، السؤال الأول الذي نحتاج إلى الإجابة عليه هو: ما هو الجهاز الظاهري (VM)؟ ببساطة ، إنها بيئة يمكن تشغيل البرامج فيها ، تمامًا مثل Mac الذي يعمل بنظام التشغيل Windows. ينتقل بين الحالات بعد إجراء الحسابات على بعض المدخلات. جهاز Ethereum Virtual Machine (EVM) هو الجهاز الظاهري الذي يدير عقود Ethereum الذكية.

آلة افتراضية بدون معرفة (zkVM) هي بيئة تنفيذ برنامج تتيح ، جنبًا إلى جنب مع إخراج البرنامج ، إنشاء أدلة على الصلاحية يمكن التحقق منها بسهولة. يثبت إثبات الصلاحية هذا أن البرنامج قد تم تنفيذه بشكل صحيح. عند استخدام المصطلح "zkEVM" ، فإنه يشير عمومًا إلى التجميع الذي يستخدم جهاز Ethereum Virtual Machine (EVM) ويمكن أن يشهد على تنفيذ EVM. يمكن أن تكون هذه المصطلحات مضللة لأن EVM نفسه لا يولد هذه البراهين ؛ بدلاً من ذلك ، يتم إنشاء البراهين بواسطة آلية إثبات منفصلة تبدأ بنتائج تنفيذ EVM. أيضًا ، هذه البراهين تتعلق بالصلاحية ، وليس الخصوصية ، لذا فهي ليست براهين على المعرفة الصفرية تمامًا. ومع ذلك ، من أجل الاتساق ، سوف نتمسك بالمصطلح التقليدي "zkEVM" في جميع أنحاء هذه المقالة.

بينما تهدف جميع مجموعات Validity إلى توسيع نطاق Ethereum مع إثبات الصلاحية ، فإنها تختلف في اختيار VMs لتنفيذ المعاملات خارج السلسلة. تختار العديد من مجموعات الصلاحية لتكرار تصميم EVM (ومن هنا جاء مصطلح "مجموعات zkEVM") ، في محاولة لتكرار Ethereum على مجموعات L2. تستخدم Starknet نوعًا جديدًا من الأجهزة الافتراضية - Cairo VM (CVM) - مصمم خصيصًا لتحسين كفاءة إثبات الصلاحية.

هاتان الطريقتان لهما مزايا وعيوب خاصة بهما ، لكن zkEVM يتاجر بالأداء من أجل توافق Ethereum ، بينما يعطي Cairo VM الأولوية للأداء على التوافق وقابلية التوسع.

نهج zkEVM

zkEVM عبارة عن مجموعة صحة تهدف إلى تقديم تجربة Ethereum بالكامل إلى blockchains Layer-2. يهدف إلى تكرار بيئة مطور Ethereum كمجموعة تحديثات. مع zkEVM ، لا يحتاج المطورون إلى تغيير التعليمات البرمجية الخاصة بهم أو التخلي عن أدوات EVM (والعقود الذكية) عند كتابة العقود الذكية أو تحويل العقود الذكية إلى حلول أكثر قابلية للتوسع.

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

إمكانية إثبات EVM

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

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

يعتمد تخطيط تخزين Ethereum بشكل كبير على Keccak وشجرة Merkle Patricia Tree الكبيرة ، وكلاهما سيئ لإثباتات الصلاحية ويفرضان عبء إثبات كبير. على سبيل المثال ، Keccak سريع جدًا بالنسبة لمعمارية x86 (التي نستخدمها عادةً لتشغيل EVM) ، ولكنها تستغرق 90 ألف خطوة لإثباتها (بناء خاص مدمج). بينما تتطلب Pedersen (دالة تجزئة متوافقة مع zk) 32 خطوة. حتى مع الضغط المتكرر ، فإن استخدام Keccak في zkEVM يعني الكثير من موارد المثقف التي يدفعها المستخدم في النهاية.

نتيجة لذلك ، تم تصميم العديد من zkEVMs لتوفير مستويات مختلفة من الدعم لأدوات Ethereum - كلما كان zkEVM أكثر توافقًا مع Ethereum ، انخفض أدائها. (لمزيد من المعلومات حول أنواع zkEVM ، انتقل إلى نهاية المقالة.)

نهج القاهرة VM

يضع حل zkEVM الكثير من وقت التطوير في "جعل EVM يعمل من أجل Validity Rollups" ، مع إعطاء الأولوية للتوافق على الأداء طويل المدى وقابلية التوسع. هناك خيار آخر: استخدام آلة افتراضية مخصصة جديدة تمامًا وإضافة دعم لأدوات Ethereum في الأعلى كطبقة إضافية. هذا هو النهج الذي اتبعته Starknet ، تم إطلاق مجموعة Validity Rollup غير المصرح بها في نوفمبر 2021. Starknet هي أول مجموعة Validity تقدم منصة عقد ذكية للأغراض العامة على شبكة قابلة للتكوين بالكامل.

يستخدم Starknet لغة Cairo-VM (CVM) ، وهي لغة عالية المستوى تحمل الاسم نفسه. Cairo-VM هو جهاز افتراضي مصمم لتوليد براهين فعالة على صحة تنفيذ البرنامج.

باستخدام القاهرة (آلة ولغة افتراضية) ، لدينا:

  1. إثبات فعالية التحسين - لكل تعليمات تمثيل جبري صالح

  2. لغة تشبه الصدأ في كتابة برامج يمكن إثباتها

  3. التمثيل الوسيط (سييرا) بين التجمع القاهرة والقاهرة رفيع المستوى (تعليمات VM) ، مما يسمح بالتنفيذ الفعال لكود القاهرة

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

القاهرة والتعددية الترميزية

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

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

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

اكتب الكود محليًا في القاهرة: مع إصدار Cairo 1.0 ، يمكن للمطورين الآن استخدام لغة Rust المريحة والآمنة ، مما يجعل كتابة منطق البرنامج أسهل وأقل عرضة للخطأ.

التوافق مع Solidity: يمكن لمطوري Solidity كتابة كود يمكن استخدامه بواسطة Cairo VM. يوفر هذا النهج تجربة مطور مشابهة لـ Ethereum ويجعل عقود Solidity الذكية محمولة إلى Starknet. هناك طريقتين لاداء ذلك:

الترجمة: الترجمة تشير إلى عملية تحويل التعليمات البرمجية المصدر المكتوبة بلغة برمجة واحدة إلى لغة أخرى. قام فريق Nethermind بإنشاء مترجم Warp لتحويل كود Solidity إلى القاهرة. تجعل Warp عقود Solidity الذكية محمولة على Starknet ، مما يجعلها فعالة من النوع 4 zkEVM. تم استخدامه لترجمة ونشر عقود Uniswap مع الحد الأدنى من التغييرات.

zkEVM على Starknet: يمكن استخدام جهاز Cairo VM لإثبات تنفيذ جهاز افتراضي آخر. Kakarot هو zkEVM مكتوب في القاهرة ويمكن استخدامه لتشغيل عقود Ethereum الذكية على Starknet. Cairo VM و zkEVM ليسا نهجين متنافسين ، يمكننا الحصول على كل من Cairo VM و zkEVM بدلاً من الاختيار بين Cairo VM و zkEVM!

على الرغم من قصر وجودها ، إلا أن القاهرة هي رابع أشهر لغة عقود ذكية من قبل TVL وحصلت على تمويل يزيد عن 350 مليون دولار.

لخص

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

تم تصميم Cairo VM لأنظمة إثبات الصلاحية دون قيود EVM. إنه مدعوم بلغة برمجة جديدة وآمنة ومريحة مستوحاة من الصدأ تسمى Cairo 1.0 ، مما يشكل أداة قوية تهدف إلى اكتساب أقصى قدر من الكفاءة من خلال توسيع نطاق Ethereum باستخدام براهين STARK.

لقد كان من المثير رؤية ما تحققه القاهرة كل أسبوع ، ونمو الخيارات المختلفة للمطورين ، مثل Kakarot zkEVM و Warp. مع دخول Starknet dApp في الإنتاج ، مما يدل على قوة القاهرة ، نعتقد أنه سيتم استخدامه لمشاريع أكثر طموحًا في المستقبل.

بفضل الطرق الثلاثة لتوسيع نطاق STARK الموضحة أعلاه ، وغيرها من الطرق التي ستتاح بلا شك في الأشهر المقبلة ، يتمتع المطورون الآن بتحكم غير مسبوق في توسيع نطاق blockchain.

شاهد النسخة الأصلية
المحتوى هو للمرجعية فقط، وليس دعوة أو عرضًا. لا يتم تقديم أي مشورة استثمارية أو ضريبية أو قانونية. للمزيد من الإفصاحات حول المخاطر، يُرجى الاطلاع على إخلاء المسؤولية.
  • أعجبني
  • تعليق
  • مشاركة
تعليق
0/400
لا توجد تعليقات
  • تثبيت