البلوكتشين والعقود الذكية

مقدمة عن الـ Web 3.0 للمبتدئين

مصطلح الويب3 أو Web 3.0 وهو مكتبة java script للتفاعل مع عقد ذكي على بلوكتشين الإثيريوم، أي أنه عندما نقوم ببناء تطبيق لامركزي نظرياً, فسوف نرغب في إنشاء واجهة مستخدم لطيفة بحيث يمكن للمستخدم التفاعل بسهولة مع العقد الذكي.

IMG 20240407 174834 704

ولكننا تحتاج إلى دمج واجهة المستخدم مع العقد الذكي ولهذا تم اختراع ال Web 3.1 حتى نتمكن من الاتصال مباشرة بواجهة التطبيقات.

كما هناك العديد من البرامج التعليمية التي عفا عليها الزمن، لأن إصدار مجموعة الويب قد تغير كثيراً، لذا فإن واجهة برمجة التطبيقات بين Web 3.1 والإصدار السابق Web 3.0 مختلف جداً، ولذلك ترى الكثير من البرامج التعليمية التي تعلمك واجهة برمجة التطبيقات (API) القديمة Web 3.0 وهي غريبة جداً، وسوف نقوم في هذه السلسلة بشرح واجهة برمجة التطبيقات الجديدة لل Web 3.1.

قبل أن ننتقل إلى Web 3.1 نحتاج إلى فهم كيف يمكننا التفاعل مع عقد ذكي في شبكة الإثيريوم.

التفاعل مع العقود الذكية على شبكة الإثيريوم

إن بلوكتشين الإثيريوم يحتوي على واجهة برمجة تطبيقات API يسمح لنا بالتفاعل مع العقد الذكي، لذا سنضطر إلى استخدام واجهة برمجة التطبيقات هذه، وتوجد في واجهة برمجة التطبيقات هذه طريقتان رئيسيتان للعمل:

الطريقة الأولى: تسمح لنا بقراءة البيانات من عقد ذكي ونسميه استدعاء واجهة برمجة التطبيقات

والطريقة الثانية: تسمح لنا بتعديل البيانات في العقد الذكي

ونحن بحاجة إلى تحديد بعض الأشياء:

  • نحتاج إلى تحديد عنوان العقد الذكي الذي نريد التفاعل معه
  • نحتاج إلى تحديد اسم الوظيفة التي نريد الاتصال بها (smart contract function)
  • نحتاج إلى تحديد الإثباتات التي سنقدمها لهذه الوظيفة (function arguments)
  • نحتاج إلى تحديد ما إذا كنت ترسل بعض عملات الأثيريوم
  • ولدينا معلمات أخرى خاصة بالمعاملة
  • نحتاج أيضاً إلى بعض المال من أجل استخدام ال API وذلك لتغطية تكلفة المعاملات

بروتوكول JSON-RPC

تستخدم واجهة برمجة تطبيقات الإثيريوم بروتوكول JSON-RPC الذي لديه نقطة نهاية واحدة وعندما ترسل البيانات إلى نقطة النهاية هذه, تحدد الإجراء الذي تريد اتخاذه, ولذلك يبدو الأمر كما لو كان لديك نقطة نهاية واحدة يمكن مضاعفتها في العديد من نقاط النهاية الأخرى.

قام مطوري الإثيريوم باستخدام بروتوكول JSON-RPC الذي يسمح بإنشاء العديد من نقاط النهاية بشكل ديناميكي، ويتطلب ترميز معين لإرسال البيانات إلى وظيفة العقد الفوري.

كيف تعمل مكتبة Web 3.1؟

كما ذكرنا فإن ال Web 3.1 عبارة عن مكتبة جافا سكريبت يمكننا تثبيتها بسهولة, ولكن هذا لا يعني أنه يمكننا استخدامها في النهاية مع node.js أو في الواجهة الأمامية في المتصفح, ولكي تعمل مكتبة ال Web 3.1 يجب أن يكون لدينا وصول إلى عقدة إثيريوم.

ولدينا العديد من الحلول يتمثل أحدها في تشغيل عقدة الإثيريوم الخاصة بنا وهذا مكلف جداً, أو نقوم مثلاً باستخدام خدمات infura التي تقدم كل ما نحتاجه لبدء العمل على Web 3.1.

وحتى نستورد مكتبة Web 3.1 في مشروعنا وننشئ اتصالاً بعقدة الأثيريوم سنقوم بإنشاء بعض العقود الذكية, لذا فإن الطريقة التي سنعمل بها على تكوين العقد الذكي هي عن طريق واجهة API تصف جميع الوظائف التي يمكن استدعاؤها من خارج البلوكتشين.

ونحتاج أيضاً إلى العنوان الخاص بالعقد حتى نقوم باستخدامه في Web 3.1 وبذلك سنتمكن من التفاعل مع العقد الذكي, وبالإضافة إلى التفاعل مع العقد الذكي, فإن ال API لها أيضاً إمكانيات أخرى مثل بعض المعلومات حول الشبكة والعديد من المعلومات الأخرى.

سيتم توضيح كل ما سبق بشكل أفضل في تتمة هذه السلسلة حول تعلم ال Web 3.1.

Add a subheading 970 × 150

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني.

زر الذهاب إلى الأعلى