Oracles في DeFi

تعد Oracles جزءًا أساسيًا من DeFi نظرًا لأن التمويل لا يمكن أن يوجد في فراغ بدون معلومات. Oracles هي جسور بين blockchain والعالم الحقيقي. يتم استخدامها كواجهات برمجة تطبيقات قابلة للاستعلام على السلسلة للحصول على معلومات في العقود الذكية. يمكن أن تكون البيانات أي شيء من معلومات الأسعار أو تقارير الطقس أو الأرقام العشوائية أو أكثر. يمكن أن تكون Oracles ثنائية الاتجاه ويمكنها “إرسال” البيانات إلى العالم الحقيقي. تم وصفها هنا بمزيد من التفصيل.

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

بعض مصادر أوراكل الشائعة هي Chainlink و Tellor. يتم وصف Chainlink هنا. يمكن لبروتوكولات مثل Uniswap و Maker أن تعمل أيضًا مثل oracles ، حيث يمكنها توفير البيانات من خلاصاتها. في الواقع ، يستخدم Compound Finance بيانات Uniswap v2 بالتزامن مع Chainlink.

الإستخدامات

تستخدم Oracles في DeFi لعدة أسباب مختلفة:

لكي تعمل العديد من خدمات DeFi ولا يتم استغلالها ، يجب أن تكون متصلة بالعالم الحقيقي لتعمل بشكل صحيح. ونتيجة لذلك ، يتم استخدام oracles ضمن البنية التحتية لبروتوكول الإقراض أو المقايضات الرائجة – على سبيل المثال ، يستخدم Bancor Chainlink لتخفيف الخسارة غير الدائمة.

هجمات Oracle في DeFi

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

يمكن التلاعب ببيانات التبادل اللامركزي ، لذا فهي ليست مصادر بيانات لامركزية جيدة ولا تعمل كوسائل لامركزي. ومع ذلك ، هناك استثناءات. على سبيل المثال ، يأخذ Uniswap متوسط ​​السعر عبر فترة زمنية تبلغ حوالي 30 دقيقة ويستخدم ذلك كسعر. يُعرف هذا بالحصول على TWAP (السعر المتوسط ​​المرجح للوقت).

إن استخدام حل لامركزي أكثر قوة مثل Chainlink سيحميك من هجمات التلاعب / قروض الفلاش هذه.

نظرة أخرى على Oracles

يمكنك إنشاء أوراكل الخاصة بك. لفهم كيفية استخدام oracles بشكل عام ، إليك مقال  جيد للمبتدئين. تحقق من البرنامج التعليمي لـ Chainlink للحصول على نظرة أعمق ومشاهدة الفيديو الخاص بهم.

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

مفهرسات

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

Ethereum هي قاعدة بيانات شبكية لامركزية. حتى الآن للاستعلام عن البيانات ، علينا أن ننظر في سجلات الأحداث. ألن يكون من الأفضل لو كانت لدينا لغة يمكننا الاستعلام من خلالها عن البيانات بسهولة؟ يمكننا الآن استخدام TheGraph Protocol ، وهو بروتوكول لامركزي لفهرسة بيانات blockchain والاستعلام عنها والتي تستخدم GraphQL كلغة استعلام. فكر في الأمر على أنه “Google of blockchains” لأن الفهرسة والفرز هما ما تفعله محركات البحث. يحل TheGraph مشكلة الاستعلام عن البيانات على السلسلة مع زيادة حجم dapps. تم شرح بروتوكول TheGraph جيدًا هنا.

تتيح [GraphQL] طريقة أسهل للاستعلام عن البيانات مقارنة بواجهات برمجة تطبيقات REST. بدلاً من الحصول على مجموعة البيانات الكاملة ، تسمح GraphQL بالتخصيص. تمكّنك GraphQL من إرسال استعلامات للحصول على البيانات التي تبحث عنها بدقة في طلب واحد بدلاً من العمل مع نقاط نهاية محددة من قِبل الخادم. لحسن الحظ ، فإنها قريبة من  REST ، و يسهل إلتقاط أساسياتها بسرعة.

يمكنك تعلم كيفية استخدام بروتوكول TheGraph عبر مستندات المطورين وأكاديمية المطورين.

مفهرسات و Oracles

يمكنك استخدام TheGraph و ChainLink الموصوفين في وصف ChainLink  و ورشة عمل بروتوكول TheGraph الخاصة بشركة EthGlobal و مدونة TheGraph.

مصادر إضافية

مقال: Chainlink decentralized data model tutorial درس تعليمي عميق حول تغذية البيانات اللامركزية من Chainlink.

إضافة تعليق