مطورو Vyper يكشفون عن أداة vyupgrade لإعادة كتابة العقود بشكل آمن

إذا سبق لك أن حاولت تحديث قاعدة تعليمات برمجية قديمة دون كسر كل شيء، فأنت تعرف هذا الشعور. تخيل الآن أن قاعدة التعليمات البرمجية تتحكم في سيولة DeFi بملايين الدولارات. قام مطورو Vyper للتو بشحن أداة مصممة لجعل هذه العملية أقل رعبًا بشكل ملحوظ.
تُسمى الأداة vyupgrade، وتم إصدار الإصدار v0.2 منها في 29 مايو. تم تصميمها بشكل أساسي بواسطة المساهم Vyper banteg، وهي تعمل على أتمتة إعادة كتابة عقود Vyper الذكية القديمة إلى بناء الجملة الحديث المتوافق مع إصدارات المترجم حتى الإصدار 0.4.3. وهو يدعم العقود المكتوبة في إصدارات قديمة مثل سلسلة 0.1b*، مما يعني أنه حتى أقدم كود Vyper يمكن جلبه إلى الوقت الحاضر.
كيف تعمل فحوصات السلامة فعليًا
يعالج Vyupgrade مخاطر الترحيل من خلال إعادة تجميع كل من العقد الأصلي والمعدل، ثم إجراء سلسلة من عمليات التحقق من التكافؤ. فهو يقارن ABI ومعرفات الطريقة وتخطيطات التخزين بين الإصدارين. إذا كان هناك أي شيء غير متطابق، أو إذا كان من المحتمل أن تؤدي إعادة الكتابة إلى تغيير السلوك، فإن الأداة تضع علامة عليه بشكل صريح. يتم استدعاء عمليات إعادة الكتابة التي يُحتمل أن تكون غير آمنة بدلاً من تسللها بهدوء.
إعلان
الواجهة واضحة ومباشرة. يمكن للمطورين تشغيله من سطر الأوامر باستخدام شيء مثل عقود uvx vyupgrade/، مع خيارات تتضمن -التحقق من التشغيل الجاف و-الإصدار المستهدف لتحديد إصدار المترجم الذي سيتم استهدافه.
تم اختبارها على بروتوكولات التمويل اللامركزي الرئيسية
تم تشغيل Vyupgrade v0.2 بموجب عقود من Curve وYearn وYield Basis. تم أيضًا تأكيد التوافق مع العقود المبكرة مثل Uniswap v1، والتي يعود تاريخها إلى الأيام الأولى للتداول عبر السلسلة.
بالنسبة لـ Curve على وجه الخصوص، هذا هو السياق ذو الصلة. من المعروف أن عقود Curve الذكية مكتوبة بلغة Vyper بدلاً من Solidity، وهو الاختيار الذي أصبح سلاحًا ذا حدين في يوليو 2023 عندما أدت ثغرة أمنية في مترجم Vyper إلى عمليات استغلال عبر العديد من مجموعات Curve. الأدوات التي تساعد Curve والبروتوكولات المشابهة في الحفاظ على توافق عقودها مع أحدث إصدارات المترجم وأكثرها أمانًا ليس من الجيد امتلاكها. إنها استجابة مباشرة للألم التاريخي.
لماذا تعتبر فجوة أدوات Vyper مهمة؟
تم تصميم Vyper ليكون أبسط وأكثر قابلية للتدقيق من Solidity، مع بناء جملة Pythonic الذي يحد عمدا مما يمكن للمطورين القيام به من أجل تقليل سطح الهجوم. لقد تم تطوير مترجم Vyper نفسه بشكل نشط، حيث قدم الإصدار 0.4.x تغييرات ذات معنى على اللغة. لكن كل ترقية للمترجم تخلق عبء ترحيل للعقود الحالية. تعمل الأداة التي تعمل على أتمتة عملية الترحيل والتحقق من صحتها على إزالة إحدى أكبر نقاط الاحتكاك في الحفاظ على تحديث البروتوكولات المستندة إلى Vyper.
ماذا يعني هذا بالنسبة للمستثمرين
تظل الثغرات الأمنية في العقود الذكية أكبر مصدر منفرد لخسائر الأموال في التمويل اللامركزي، كما أن إصدارات المترجم القديمة هي ناقل هجوم معروف. إن الأداة التي تسهل الاحتفاظ بالعقود على إصدارات المترجم الحالية والمصححة تقلل بشكل مباشر من احتمالية نوع الاستغلال الذي يمكن أن يؤدي إلى إحداث ضرر في TVL للبروتوكول بين عشية وضحاها.
بالنسبة لبروتوكولات مثل Curve وYearn التي تم بالفعل اختبار vyupgrade، يمكن أن يكون اعتمادها بمثابة إشارة مصداقية. أدى هذا الإعلان إلى ظهور إعلامي محدود، وتم نشره بشكل أساسي عبر X ومستودع GitHub الخاص بالمشروع، على الرغم من أن ردود أفعال المجتمع كانت إيجابية للغاية.