تحليل متعمق لـChainlink: كيف تربط آلة أوراكل البلوكتشين بالعالم الحقيقي

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

آلة أوراكل النظام: العقود الذكية وجسر العالم الحقيقي

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

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

! Chainlink (الجزء 1) من سلسلة Oracle Explainer](https://img-cdn.gateio.im/webp-social/moments-ced3348559da0aabbf1c67c4d84ddc88.webp)

Chainlink: حل آلة أوراكل الرائج

في سوق blockchain الحالي، يعتبر Chainlink المشروع الأكثر هيمنة في مجال آلات الأوراكل. كنظام أوراكل لامركزي، يهدف Chainlink إلى توفير البيانات التي يتم إنتاجها في العالم الحقيقي إلى blockchain بأكثر الطرق أمانًا. على أساس المبادئ الأساسية لآلة الأوراكل، قام Chainlink ببناء نظام بيئي مدفوع بالحوافز الاقتصادية حول رمز LINK.

يتطلب تفعيل آلة أوراكل Chainlink إجراء تحويل رموز LINK. LINK هو عقد ERC677 على شبكة Ethereum، وتعمل وظيفة آلة أوراكل المستندة إلى رموز LINK ERC677 وفقاً لنمط الطلب/الاستجابة.

! Chainlink (الجزء 1) من سلسلة Oracle Explainer](https://img-cdn.gateio.im/webp-social/moments-30dffd84ae22b9fa8f93929cd523ef99.webp0192837465674839201

) آلية transferAndCall لرموز ERC677

عند تصميم إطار آلة أوراكل، كانت Chainlink تأخذ في الاعتبار أولاً كيفية دفع المستخدمين لرسوم الخدمة للآلة أوراكل. نظرًا لأن رموز ERC20 القياسية لا تلبي احتياجات "تقديم الخدمة بعد الدفع"، اقترحت Chainlink معيار ERC677 المناسب لسيناريو خدمات الآلة أوراكل.

تضيف ERC677 طريقة transferAndCall على أساس معيار ERC20. تجمع هذه الطريقة بين الدفع وطلبات الخدمة، مما يلبي احتياجات سيناريوهات أعمال آلة أوراكل. عندما يقوم المستخدم بإجراء تحويل transferAndCall، بالإضافة إلى تحويل ERC20، سيتم التحقق مما إذا كانت عنوان الاستلام هو عنوان عقد، وإذا كان كذلك، سيتم استدعاء طريقة onTokenTransfer لهذا العنوان.

值得注意的是,在请求 آلة أوراكل 服务之前,用户需要先确定该 آلة أوراكل 是否可信,因为 آلة أوراكل 在提供服务前需要先收取费用。

! Chainlink الجزء 1 من سلسلة Oracle Explainer]###https://img-cdn.gateio.im/webp-social/moments-36eedcde4ebee55bf1c0e6c5f02934df.webp(

) عملية طلب آلة أوراكل على السلسلة

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

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

! Chainlink (الجزء 1) من سلسلة Oracle Explainer]###https://img-cdn.gateio.im/webp-social/moments-d05f88f78a86510920ca9cb9cb97fcd6.webp(

) آلية استجابة العقدة خارج السلسلة

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

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

أخيرًا، ستقوم العقد باستدعاء دالة رد النداء لعقد الطالب، وإرجاع البيانات إلى عقد المستهلك. بالنسبة لآلة أوراكل السعر، يتضمن ذلك عادةً تحديث بيانات السعر الحالية.

! Chainlink الجزء 1 من سلسلة Oracle Explainer]###https://img-cdn.gateio.im/webp-social/moments-dae23b36c6a83626aa95ba58fa8dbee5.webp(

استخدام مبسط لآلة أوراكل للأسعار

بالنسبة للمطورين، إذا كان كل ما يحتاجونه هو استخدام بيانات سعر العملات المتاحة، دون الحاجة لتحديد عنوان API بأنفسهم، يمكنهم استخدام خدمة Price Feed التي تقدمها Chainlink مباشرة. كل زوج تداول له خدمة Price Feed مستقلة تُعرف أيضًا باسم Aggregator)، وهو في الواقع عقد AggregatorProxy.

تقدم هذه العقود عادةً عدة طرق استعلام رئيسية كما يلي:

  • decimals(): عدد الأرقام العشرية لبيانات السعر
  • description():إرجاع اسم زوج التداول
  • version(): يحدد نوع المجمع الذي يشير إليه الوكيل
  • getRoundData(_roundId): الحصول على بيانات الأسعار التاريخية بناءً على معرف الجولة
  • latestRoundData():الحصول على بيانات الأسعار الأخيرة

في معظم سيناريوهات التطبيق، قد يحتاج العقد فقط إلى قراءة السعر الأخير، أي استدعاء طريقة latestRoundData(). المعامل answer الذي ترجعها الطريقة هو السعر الأخير.

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

! Chainlink (الجزء 1) من سلسلة Oracle Explainer](https://img-cdn.gateio.im/webp-social/moments-1994fff156354700fda0609f9e317726.webp)

LINK3.64%
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 8
  • مشاركة
تعليق
0/400
Anon32942vip
· 07-15 12:05
آلة أوراكل هذا أفهمه! خزنت بعض link
شاهد النسخة الأصليةرد0
CrossChainBreathervip
· 07-15 11:26
آلة أوراكل أنقذت محفظتي الصغيرة
شاهد النسخة الأصليةرد0
rugdoc.ethvip
· 07-12 12:36
آلة أوراكل أيضًا لم تفهم الأمر جيدًا.
شاهد النسخة الأصليةرد0
HackerWhoCaresvip
· 07-12 12:32
الرابط هو المستقبل ها
شاهد النسخة الأصليةرد0
MetaverseHermitvip
· 07-12 12:23
linkثور哇ثور哇
شاهد النسخة الأصليةرد0
SchrodingerWalletvip
· 07-12 12:17
آلة أوراكل真香...عملة稳了
شاهد النسخة الأصليةرد0
GasWastervip
· 07-12 12:14
ماما آلة أوراكل الليلة رائحتها جميلة
شاهد النسخة الأصليةرد0
bridge_anxietyvip
· 07-12 12:07
لقد حصلت على رائحة جميلة
شاهد النسخة الأصليةرد0
  • تثبيت