الطاووس: عيون التمويل اللامركزي، وهو أيضًا نقطة ضعفه

robot
إنشاء الملخص قيد التقدم

بقلم: Zhang Qianwen

في نوفمبر 2020، قام شخص ما باستخدام مبلغٍ اقترضه، وفي غضون 15 ثانية، بسرقة ما يقارب 1 مليون دولار من بروتوكول DeFi.

أولًا، قام بالاقتراض بكميات كبيرة من ETH عبر القروض السريعة (Flash Loans)، ثم ركّز الشراء على sETH داخل مجمّع سيولة منخفض جدًا، ليرفع السعر بشكل حاد خلال بضع ثوانٍ فقط.

بعد ذلك، أودع هذه sETH كضمان لدى بروتوكول bZx. ما “يراَه” البروتوكول هو السعر المرتفع صناعيًا في تلك اللحظة نفسها؛ إذ يعتبر أن قيمة sETH مرتفعة للغاية، ثم، وفقًا للقواعد، يطلق قرض WBTC يفوق قيمته الحقيقية بكثير.

بعد حصول المهاجم على WBTC، قام بسداد القرض السريع بسرعة، ثم غادر وهو يحمل فرقًا شاسعًا في السعر.

لم تتضمن العملية اختراقًا من قِبل القراصنة، ولا ثغرات في الشيفرة، ولا إساءة صلاحيات. نفّذ العقد كل خطوة بدقة وفقًا للقواعد. المشكلة الوحيدة تكمن في:

فالعالم الذي “يراه” هو عالم خاطئ.

وهذا واحد من القيود الكامنة في طبقة DeFi الأدنى—فالعقود الذكية على السلسلة هي، من حيث الجوهر، نظام لا يرى العالم الحقيقي.

01 العقود على السلسلة كـ “الأعمى”

تعيش العقود الذكية في عالم مغلق.

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

لكنها لا ترى إطلاقًا العالم خارج السلسلة: ما هو سعر ETH اليوم؟ هل تجاوزت البيتكوين قمة جديدة؟ هل حدثت “فكّ ربط” (de-peg) لرمز مستقر معيّن؟ هل ارتفع سوق الأسهم في نيويورك اليوم أم انخفض؟ العقد لا يعرف شيئًا.

في إقراض و اقتراض DeFi، هذه مفارقة قاتلة.

التصفية (liquidation) تعتمد على السعر الحالي للأصول المضمونة؛ لكن العقد لا يمكنه رؤية السعر بنفسه، ويجب أن يخبره أحد به.

ولهذا السبب توجد الأنظمة التي تُسمّى “الـ Oracles” (النبّازات/الأوراكل): فهي “عين” للعقود الذكية على السلسلة، مسؤولة عن نقل المعلومات الحقيقية من خارج السلسلة إلى داخلها، كي يتمكن العقد من قراءتها واستخدامها. لكن تظهر مشكلة بعد ذلك:

من يضمن أن هذه المعلومات صحيحة؟

02 الأوراكل: رسول عالم السلسلة

الأوراكل، في جوهره، هو بنية تحتية لنقل المعلومات؛ إذ يكتب بيانات العالم الحقيقي (مثل الأسعار، وأسعار الفائدة، ونتائج الأحداث… إلخ) في بلوك تشين بصيغة يمكن للعقود قراءتها.

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

ولحل هذه المشكلة، تشكّلت في السوق فكرتان رئيسيتان.

الأولى هي “سعر على السلسلة”، أي قراءة سعر التداول مباشرة من البورصات اللامركزية (DEX). الأكثر نموذجية هو متوسط السعر المرجّح زمنيًا لدى Uniswap (TWAP)—لا يعتمد على السعر اللحظي في وقت محدد، بل على متوسط السعر خلال فترة سابقة، وبذلك تُخفَّف تقلبات السعر قصيرة الأجل عبر الزمن.

أما الثانية فهي شبكات الأوراكل اللامركزية، وChainlink هي المثال الأبرز. يحصل عدة عقد بيانات مستقلة على الأسعار من قنوات مختلفة، ثم تُجمَّع النتائج ويُؤخذ الوسيط (median) ويُكتب على السلسلة، دون أن يتمكن أي عقد واحد من تحديد النتيجة النهائية بمفرده.

كلتا الطريقتين لهما تنازلاتهما، لكنهما تحاولان الإجابة عن السؤال نفسه: كيف تجعل العقود على السلسلة تثق برقمٍ قادم من خارج السلسلة؟

03 لماذا لا نستخدم السعر اللحظي مباشرة؟

عندما يطّلع معظم الناس على الأوراكل لأول مرة، تراودهم بديهية: بما أن السعر يأتي من السوق، فلماذا لا تتم قراءة السعر اللحظي من البورصات مباشرة؟

المشكلة هي أن: السعر اللحظي ليس بالضرورة هو السعر الحقيقي.

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

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

وهذا هو سبب تحقق حادثة تعرض بروتوكول bZx للهجوم التي ذكرتها مقدمة المقال، وكذلك تكلفة استخدام السعر اللحظي: الأوراكل يتعامل مع “رقم يمكن التلاعب به لفترة قصيرة” على أنه الواقع نفسه.

04 حل Chainlink: جعل السعر لامركزيًا

إذا كان نظام ما يعتمد فقط على مصدر بيانات واحد، ففي حال أخطأ هذا المصدر أو تم التلاعب به، سيتم تحريف البروتوكول بأكمله. إن أكثر طريقة مباشرة لتقليل هذا الخطر ليست أن تثق بشخص “أقوى”، بل أن تجعل عدة عقد مستقلة تُبلّغ كلٌ منها بالأرقام، ثم تستخرج من بينها نتيجة أكثر ثباتًا.

حل Chainlink يتبع بالضبط هذا المنطق: عدة عقد بيانات مستقلة تحصل على الأسعار من مصادر بيانات مختلفة، ثم تُبلّغ كل واحدة عنها، ويأخذ النظام الوسيط كقيمة نهائية. وبهذه الطريقة، حتى لو أخطأ عقد واحد، أو تأثر بسبب مهاجم، فلن يكون قادرًا على التأثير على السعر النهائي؛ وفي المقابل، فإن مهاجمًا يريد السيطرة على أكثر من نصف العقد في الوقت نفسه—فهو، من الناحية الاقتصادية، شبه مستحيل.

تقلل هذه الآلية بشكل فعال من مشكلة التلاعب بنقطة واحدة (single point of manipulation).

لكنها تُدخل أيضًا تكلفة جديدة: وجود تأخير في التحديث.

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

وهذا هو سبب حديثنا في لماذا يتعين على إقراض DeFi أن يكون مفرط الضمان؟ عن ضرورة وضع “وسادة/هامش مفرط الضمان” في بروتوكولات إقراض DeFi: ليس فقط للتعامل مع تقلبات الأسعار بحد ذاتها، بل أيضًا لضمان وجود هامش أمان كافٍ في الفترة التي لم يُحدّث فيها الأوراكل بعد، حتى يتمكن النظام من تفعيل التصفية.

05 هجوم الأوراكل: أغلى أزمة ثقة

لم تختفِ مشكلة الأوراكل تمامًا بمجرد ظهور Chainlink.

في تاريخ DeFi، كانت ثغرات مرتبطة بالأوراكل واحدة من فئات الهجمات الأكثر خسارة. بين عامي 2021 و2023، وبحسب السجلات المتاحة فقط، تجاوزت الخسائر التراكمية الناتجة عن هجمات التلاعب بالأوراكل عدة مئات من ملايين الدولارات.

تشترك هذه الخسائر في سمة واحدة: لا يحتاج المهاجم إلى العثور على ثغرات في الشيفرة. كل ما عليهم فعله هو إيجاد الفجوة بين سعر الأوراكل والسعر الحقيقي في السوق، ثم استخدام الأموال لتوسيع هذه الفجوة، بحيث ينفّذ العقد عملية لصالح المهاجم وفقًا للسعر المُشوَّه. إنها مخاطرة أصعب في الدفاع من ثغرات الشيفرة—لأنه لا يمكنك كتابة قاعدة داخل الشيفرة لتحديد: “هل هذا السعر حقيقي أم لا”.

مشكلة الأوراكل، في جوهرها، ليست ثغرة في مكوّن بعينه، بل هي نوع من المقايضة (trade-off):

إذا استخدمت مصادر بيانات أكثر لمقاومة التلاعب، فسيتوجب عليك قبول تأخير أعلى؛

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

لا توجد حل مثالي لهذه المقايضة.

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

ETH7.96%
WBTC5.2%
BTC5.52%
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • تعليق
  • إعادة النشر
  • مشاركة
تعليق
إضافة تعليق
إضافة تعليق
لا توجد تعليقات
  • تثبيت