مشاريع الاستشراف: WASM - محرك عصر جديد

مبتدئ1/1/2024, 2:25:51 AM
تتناول هذه المقالة بعض العلاقات وحالات الاستخدام بين Wasm و blockchain: العقود الذكية والتفاعلات عبر السلاسل والحساب خارج السلسلة وخصوصية البيانات.

إلى؛ جاف

WebAssembly (Wasm) هو تنسيق تعليمات ثنائي محمول وعالي الأداء يمكن تشغيله في متصفحات الويب. تم تصميمه كهدف تجميع عالمي يمكن استخدامه مع لغات برمجة متعددة وتشغيله على منصات مختلفة.

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

هناك العديد من العلاقات وسيناريوهات التطبيق بين Wasm و blockchain:

  1. العقود الذكية: يمكن أن تعمل Wasm كبيئة تنفيذ للعقود الذكية، مما يسمح بتشغيل العقود على منصات بلوكشين مختلفة. يتيح الأداء العالي وقابلية النقل لـ Wasm تنفيذًا أكثر كفاءة للعقود الذكية وقابلية الاستخدام عبر الأنظمة الأساسية.
  2. قابلية التشغيل البيني عبر السلاسل: يمكن استخدام Wasm لتنفيذ قابلية التشغيل البيني عبر السلاسل. ومن خلال تجميع منطق سلاسل البلوكشين المختلفة في كود Wasm، يمكن تنفيذ نفس المنطق على سلاسل بلوكشين مختلفة، مما يتيح نقل البيانات والتفاعل عبر السلاسل.
  3. الحساب خارج السلسلة: يمكن استخدام Wasm للحساب خارج البلوكشين وإرسال نتائج الحساب إلى البلوكشين. وهذا يسمح بتحسين الكفاءة والمرونة في الحساب مع الحفاظ على أمان البيانات والجدارة بالثقة.
  4. خصوصية البيانات: يمكن استخدام Wasm لتحقيق حماية خصوصية البيانات على blockchain. ومن خلال تجميع منطق معالجة البيانات الحساسة في كود Wasm وتنفيذه على بلوكتشين، يمكن الحفاظ على خصوصية البيانات مع ضمان إمكانية التحقق من الحسابات.

باختصار، يوفر الجمع بين Wasm و blockchain تطبيقات وخدمات بلوكشين أكثر كفاءة وأمانًا ومرونة. إن قابلية النقل والأداء العالي لـ Wasm تجعلها تقنية مهمة في مجال blockchain.

1. ما هي جمعية الويب؟

WebAssembly هو معيار مجموعة تعليمات فعال وخفيف تم تطويره بواسطة اتحاد شبكة الويب العالمية (W3C). يتم الترحيب به باعتباره معطلاً للويب والحوسبة عالية الأداء، مما يدعم التنفيذ عبر المتصفحات. هذا يعني أنه يمكننا تجميع لغات برمجة مختلفة، بما في ذلك C/C ++ و Go و Rust والمزيد، في تنسيق ثنائي قياسي موحد واستخدامه كبديل لجافا سكريبت، يعمل بكفاءة كود شبه أصلية في متصفحات الويب.

WebAssembly، المعروفة أيضًا باسم WASM، هي تقنية آمنة للذاكرة ومستقلة عن النظام الأساسي يمكنها التخطيط بكفاءة لهياكل وحدة المعالجة المركزية المختلفة. يقدم العديد من المزايا الرئيسية:

  • الكفاءة: يحتوي WASM على مجموعة كاملة من ميزات اللغة وهو تنسيق ثنائي مضغوط وسريع التحميل. هدفها هو الاستفادة الكاملة من إمكانيات الأجهزة لتحقيق أداء اللغة الأم.
  • الأمان: يعمل WASM في بيئة تنفيذ آمنة للذاكرة ومحمية، ويمكن أيضًا تنفيذه داخل أجهزة JavaScript الافتراضية الحالية. في بيئة الويب، تلتزم WASM بشكل صارم بسياسة المصدر نفسه وسياسات أمان المتصفح. أثناء التجميع، يحد WASM من الواجهة لتقليل مخاطر الأمان. لا تستطيع معظم تطبيقات WASM الوصول إلى الإنترنت (على سبيل المثال، لا يوجد دعم للمقبس) وتقتصر على الوصول إلى قاعدة البيانات المحلية. تنشأ العديد من مشكلات الأمان من الوصول غير المصرح به للذاكرة، والتي يمكن تخفيفها أثناء التجميع باستخدام WASM.
  • التوافق: تم تصميم WASM ليكون بدون إصدار وقابل لاختبار الميزات ومتوافق مع الإصدارات السابقة في الويب. يمكن استدعاؤها بواسطة JavaScript وإدخال سياق JavaScript والوصول إلى وظائف المتصفح مثل واجهة برمجة تطبيقات الويب. يمكن تشغيل WASM ليس فقط في متصفحات الويب ولكن أيضًا في البيئات غير الويب مثل Node.js، أجهزة دينو وإنترنت الأشياء. على عكس الأساليب التقليدية التي تتطلب تجميعات متعددة، لا يحتاج WASM إلا إلى التجميع مرة واحدة لتنفيذ التوصيل والتشغيل الفوري.

بالإضافة إلى ذلك، فإن الويب هو النظام الأساسي العالمي الحقيقي الوحيد الذي يسمح بالوصول إلى تطبيقاتك على أي جهاز. يتيح لك هذا أيضًا الاحتفاظ بقاعدة بيانات واحدة وتبسيط التحديثات والتأكد من أن جميع المستخدمين يمكنهم الوصول إلى تطبيقاتك. يدعم WASM عمليات الأعداد الصحيحة 64 بت و 32 بت، والتي تتوافق مباشرة مع تعليمات وحدة المعالجة المركزية. من خلال إزالة عمليات الفاصلة العائمة، يمكن تحقيق السلوك الحتمي بسهولة، وهو أمر ضروري لخوارزميات الإجماع. بدعم من مشروع البنية التحتية لمترجم LLVM، يمكن لـ WASM الاستفادة من أكثر من عقد من تحسينات المترجم في LLVM. يتم تطوير WASM بشكل مستمر من قبل الشركات الكبرى مثل Google و Apple و Microsoft و Mozilla و Facebook، وهو مدعوم من خلال الخلفيات للمتصفحات التي طورتها هذه الشركات.

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

2. لماذا نحتاج إلى تجميع الويب؟

2.1 الويب 2

لقد تطور الويب من منصة للمحتوى الثابت ولغات النصوص الصغيرة إلى منصة قوية وشائعة مليئة بالتطبيقات والميزات المذهلة، وذلك بفضل الوظائف المضمنة للمتصفحات والتفاعل الذي يوفره الويب. ومع ذلك، لا تزال تطبيقات الويب مدفوعة في الغالب بنفس لغة البرمجة النصية (JavaScript)، والتي لم يتم تصميمها في البداية لإنجاز هذه المهام.

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

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

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

لذلك، لن يحل WebAssembly محل JavaScript، ولكن هذا لا يعني أنه لن يتم استخدام WASM في المستقبل. في الواقع، سيصبح استخدام WASM أكثر انتشارًا. هذا لأن WASM يمكن أن يجلب قدرات حسابية قوية إلى الويب، مثل معالجة الصور أو الألعاب. باستخدام WASM، يمكنك إنشاء إصدار مستند إلى الويب من Photoshop يعمل بشكل جيد، أو لعبة ثلاثية الأبعاد تعمل بمعدل 60 إطارًا في الثانية أو حتى معدلات إطارات أعلى في المتصفح. تمثل الألعاب، على وجه الخصوص، تحديًا لأنها تتطلب التنفيذ المتزامن لمعالجة الصوت والفيديو، بالإضافة إلى تنسيق التأثيرات الفيزيائية والذكاء الاصطناعي. يتمتع WASM بالقدرة على تشغيل الألعاب بكفاءة في المتصفح، مما يفتح الباب أمام جلب العديد من التطبيقات الأخرى إلى المتصفح.

يوضح الشكل أعلاه مقارنة سير العمل بين جافا سكريبت وWebAssembly (wasm). يمكن ملاحظة أن wasm أكثر إيجازًا مقارنة بـ JavaScript.

2.2 الويب 3

سم 5 سم

في عام 2018، بدأت منظومة إيثريوم في مناقشة استخدام WASM VM كآلة افتراضية للعقود الذكية، حيث اعتُبرت ذات أداء أفضل من EVM. وقد أعرب جافين وود، مخترع EVM، عن جدوى استبداله بـ WASM، وذكر فيتاليك أيضًا أنه سيتم ترقية إيثريوم 2.0 لدعم عقود WASM (eWASM) لتلبية المزيد من احتياجات التطوير. اليوم، بدأ تطوير عقود WASM بالفعل.

2.3 كيف تم تصميم EVM؟ لماذا هي غير فعالة؟

مشكلة حجم البنية

تحتوي أجهزة الكمبيوتر التقليدية على مجموعات تعليمات تقبل إدخال 32 أو 64 بت. ومع ذلك، فإن EVM مختلف وفريد من نوعه لأنه كمبيوتر 256 بت مصمم للتعامل مع خوارزمية التجزئة الخاصة بـ Ethereum بسهولة أكبر، مما ينتج مخرجات واضحة بحجم 256 بت.

ومع ذلك، يحتاج الكمبيوتر الفعلي الذي يقوم بتشغيل برامج EVM إلى تقسيم الكلمات ذات 256 بت إلى بنياتها الأصلية لتنفيذ العقود الذكية، مما يجعل النظام بأكمله غير فعال وغير عملي.

بالإضافة إلى ذلك، إذا كنت ترغب في تنفيذ خوارزمية معقدة مثل SHA256 باستخدام رموز OPCODES الأساسية لـ EVM على Ethereum، فأنت في وقت عصيب! ولمعالجة مشكلة تكلفة الغاز المرتفعة المتمثلة في تشغيل البرامج المعقدة من خلال مجموعة التعليمات، قدمت إيثريوم مفهوم التجميع المسبق، الذي يجمع البرنامج في إدارة القيمة الافتراضية ويستهلك كمية ثابتة من الغاز. ومن بين عمليات التجميع المسبق البارزة خوارزمية تجزئة إيثريوم، حيث إن تنفيذها داخل الجهاز الافتراضي سيؤدي إلى رسوم باهظة للغاية عند استدعاء العقود.

التجميع المسبق المتضخم

تكمن مشكلة التجميع المسبق في أنه يزيد باستمرار من انتفاخ وتعقيد الجهاز الافتراضي، دون معالجة المشكلة الأساسية: التصميم غير الفعال والضعيف لمجموعة التعليمات والمواصفات الحالية.

ماذا لو تمكنا من تحديد مواصفات جديدة ومجموعة تعليمات لا تتطلب التجميع المسبق لهذه البرامج المعقدة، ولكن بدلاً من ذلك تحقق النتائج المرجوة بكفاءة من خلال التعليمات الأساسية؟ هذا هو المكان الذي تلعب فيه WASM دورًا.

2.4 مقارنة بين EVM وWASM VM

  • السرعة: يهدف WASM إلى توفير سرعة تنفيذ أسرع مقارنة بـ EVM. قد تواجه EVM مشكلات تتعلق بالكفاءة في تجميع العقود الذكية وتنفيذها، بينما تعمل WASM على تحسين سرعة التحميل وقدرة المعالجة عن طريق التحويل المباشر إلى التعليمات البرمجية المجمعة.
  • العقود المجمعة مسبقًا: تعتمد EVM على العقود المجمعة مسبقًا من أجل التنفيذ الفعال لحسابات التشفير، ولكن هذا يمكن أن يؤدي إلى مخاطر الانقسام الكلي. يلغي WASM الحاجة إلى العقود المجمعة مسبقًا، مما يسمح للمطورين بإنشاء عقود ذكية فعالة وسريعة.
  • تكاليف المعاملات: مع جهاز WASM الافتراضي الأسرع، تزداد إنتاجية المعاملات بشكل كبير، مما يؤدي إلى تقليل نشر العقود وتكاليف المعاملات. تعالج عقود WASM قضايا رسوم المعاملات المرتفعة والازدحام على شبكة Ethereum.
  • المرونة وقابلية التشغيل البيني: تعمل WASM على توسيع نطاق اللغات المتاحة لتطوير العقود الذكية، مما يدعم استخدام أي لغة عالية المستوى يتم تجميعها إلى WASM، مثل Rust و C ++ و JavaScript. وهذا يعني أنه يمكن للمطورين كتابة العقود الذكية بلغتهم المفضلة، بما في ذلك الأطر الناضجة مثل الحبر! من أجل الصدأ أو اسأل! لسكريبت التجميع.

يقوم فريق EWASM حاليًا بدمج WebAssembly على Ethereum لضمان طبقة تنفيذ أكثر كفاءة وتبسيطًا، مما يجعل Ethereum مناسبة كمنصة حوسبة لامركزية بالكامل. تم اعتماد WASM كمعيار من قبل العديد من المشاريع الأخرى، بما في ذلك Dfinity و EOS، وكلاهما يستخدمه لتحسين طبقات التنفيذ الخاصة بهم.

2.5 قلم (التحكيم)

مشروع Stylus هو مبادرة على شبكة Arbitrum Ethereum Layer 2 التي تهدف إلى تحسين أداء تنفيذ العقود الذكية من خلال تقديم الجهاز الافتراضي WebAssembly (WASM). يمكن تنفيذ العقود بشكل أسرع من Solidity، مع تقليل تكاليف الغاز. هذا يجعل من السهل إنشاء عقود ذكية عالية الأداء على شبكة Arbitrum، ويدعم حاليًا التجميع في C و C ++ و Rust.

دعم الترجمة المسبقة المخصص: يدعم Stylus أيضًا عمليات التجميع المسبق المخصصة، والتي تسمح للمطورين بنشر ملفات Rust أو C ++ المسبقة الخاصة بهم على شبكة Arbitrum. يمكن أن يساعد ذلك في تقديم خوارزميات تشفير جديدة أو وظائف محددة أخرى على السلسلة دون انتظار الترقيات على السلسلة. على سبيل المثال، يمكن تجميع حسابات الموتر مسبقًا لتقليل تكاليف الاستدلال، والتي يمكن أن تكون مفيدة للتعلم الآلي على السلسلة.

قابلية التشغيل البيني مع EVM: تحقق Stylus التكامل مع نظام Ethereum البيئي الحالي من خلال قابلية التشغيل البيني مع آلة Ethereum الافتراضية (EVM). هذا يعني أن عقود Stylus يمكن أن تتفاعل مع عقود EVM الحالية وتشترك في نفس الحالة العالمية مثل EVM.

إعادة الدخول: على عكس Cosmos Wasm، يقدم Stylus Rust SDK ميزة إعادة الدخول ويسمح للمطورين بتمكينها يدويًا. يتيح ذلك للعقود مزيدًا من المرونة في قابلية التشغيل البيني، ولكن يحتاج المطورون إلى إدارة الحالة بعناية لضمان الأمان.

استنادًا إلى النظام البيئي المزدهر لـ Arbitrum، ربما يكون تكامل Stylus هو تكامل WASM الأكثر أهمية. كما أنه يعزز القدرة التنافسية لـ Arbitrum بين حقول ZKrollup.

2.6 جير (بولكادوت)

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

في السابق، كانت تكلفة إطلاق بلوكتشين مرتفعة، لكن Gear يسمح لمطوري dApp بالتركيز على مشاريعهم بدلاً من بناء وتشغيل بلوكتشين بالكامل من الصفر.

المحرك الرئيسي لبروتوكول Gear هو وحدة العقد الذكي. في حالة Gear، فإن أي عقد ذكي هو برنامج WebAssembly تم تجميعه بلغات مختلفة مثل Rust و C و C ++. بالنسبة للمطورين من خارج عالم التشفير، فإن حاجز الدخول منخفض لأنهم يستطيعون إنشاء عقود ذكية في بيئة مألوفة. يجد المطورون أنه من الأسهل تجربة لغات برمجة العقود الذكية.

تستخدم بنية العقد الذكي من Gear نموذج الممثل الموجود أسفل الغطاء وتوفر الوظائف التالية:

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

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

2.7 كوزماس (كوزموس)

CosmWasm عبارة عن منصة عقود ذكية حديثة وقوية قائمة على WASM يمكن أن تتكامل بسهولة مع Cosmos-SDK. يُظهر هذا إحدى المزايا الرئيسية لـ CosmWasm: يتم دمج العقود المكتوبة مع CosmWasm بإحكام مع IBC (Inter-Blockchain Communication) محليًا، مما يسمح للمطورين والمستخدمين بالدخول في مستقبل متعدد السلاسل. حاليًا، يتم دعم Rust فقط.

مزايا كوزمواسم

  1. الأمان: يعزز أمان العقود الذكية باستخدام لغة برمجة Rust
  2. التوافق عبر السلاسل: يدعم بروتوكول IBC (الاتصال بين Blockchain) داخل نظام Cosmos البيئي.
  3. الأداء: يُظهر كفاءة أعلى وتكاليف معاملات أقل في حالات معينة مقارنة بجهاز Ethereum الافتراضي التقليدي (EVM).
  4. سهل الاستخدام للمطورين: تساعد ميزات النوع وأمان الذاكرة في لغة Rust على تقليل أنواع معينة من الأخطاء في العقود الذكية.

التحديات والقيود

  1. منحنى التعلم: قد يحتوي Rust على منحنى تعليمي أكثر حدة مقارنة بلغات العقود الذكية الأكثر استخدامًا مثل Solidity. لزيادة إمكانية التبني على نطاق واسع، يحتاج CosmWasm إلى دعم التجميع بمزيد من اللغات.
  2. النظام البيئي والأدوات: أثناء النمو، قد تظل أدوات التطوير والنظام البيئي لـ CosmWasm محدودة نسبيًا مقارنة بمنصات العقود الذكية الناضجة مثل Ethereum.
  3. حصة السوق والوعي: في مساحة منصة العقود الذكية، قد يكون لدى CosmWasm وعي أقل مقارنة بمنصات مثل Ethereum و Binance Smart Chain، مما يؤثر على قدرتها على جذب المطورين والمستخدمين.
  4. تحديات الصيانة والترقية: بينما توفر CosmWasm وظائف ترقية العقود، لا تزال صيانة وإدارة الترقيات للعقود الذكية مهمة معقدة تحتاج إلى التعامل معها بعناية لتجنب الثغرات الأمنية.
  5. مشاكل التوافق: قد تواجه المشاريع المعتادة على EVM أو بيئات العقود الذكية الأخرى تحديات التوافق عند الترحيل إلى CosmWasm.

2.8 زك-واسم

بالإضافة إلى الجهاز الافتراضي wasm، هناك أيضًا تقنية ناشئة حديثة تسمى ZKWASM. قام المخترع، Delphinus Labs، بفتح مصدر شفرة ZK-WASM على GitHub. يسمح ZKWASM للمطورين بالتحقق من صحة الحسابات المنفذة دون إعادة تنفيذها. من خلال الاستفادة من ZKWASM، يمكن للمطورين إنشاء تطبيقات خالية من المعرفة (ZKP) بمرونة باستخدام لغات برمجة مختلفة. يمكن تنفيذ هذه التطبيقات بسلاسة في متصفحات الويب.

ZKWASM مشتق من ZKSNARK، وهو مزيج من براهين SNARG وأدلة المعرفة الصفرية. دعونا نوضح ذلك أكثر. عادةً، لاستخدام ZKSNARK، تحتاج إلى كتابة برنامج بلغة دائرة حسابية أو لغة صديقة للدوائر مثل بينوكيو، وتيني رام، وبوفيت/بيكوين، وجيبيتو، وإطار XJSnark، وزوكراتس، وما إلى ذلك. هذا يشكل حاجزًا أمام البرامج الحالية، مما يجعل من الصعب عليها الاستفادة من قوة ZKSNARK. ومع ذلك، هناك طريقة أخرى، وهي عدم استخدام ZKSNARK على مستوى الكود المصدري ولكن على مستوى البايت الخاص بجهاز افتراضي، ثم تنفيذ جهاز افتراضي يدعم ZKSNARK. اعتمدت Delphinus Labs النهج الأخير من خلال دمج جهاز WASM الافتراضي بأكمله في دائرة ZKSNARK. ونتيجة لذلك، يمكن تشغيل تطبيقات WASM الحالية مباشرة على ZKWASM دون أي تعديلات. لذلك، يمكن لمقدمي الخدمات السحابية أن يثبتوا لأي مستخدم أن نتائج الحساب يتم حسابها بأمانة ولن تكشف عن أي معلومات خاصة.

يوفر ZKWASM حالات استخدام مختلفة، مثل تمكين التحقق على السلسلة من العمليات التي يتم إجراؤها في المتصفح. يسمح بالتفاعلات المستندة إلى الويب والتي يمكن التحقق منها على blockchain. تشمل حالات الاستخدام الأخرى خدمات أوراكل، والحساب خارج السلسلة، والأتمتة، وسد الفجوة بين Web2 و Web3، وإنشاء أدلة للتعلم الآلي ومعالجة البيانات، وحتى الألعاب والتطبيقات الاجتماعية. مع زيادة الاعتماد، يوسع ZkWasm إمكانيات Web3 ويدمج مطوري Web2 في هذا المشهد التحويلي.

من خلال تطبيق ZKWASM من Delphinus Lab، يمكن للمطورين تسخير قوة البراهين الخالية من المعرفة لتعزيز أمان وخصوصية تطبيقاتهم، مما يمهد الطريق لنظام بيئي رقمي أكثر موثوقية ولامركزية.

3. الخاتمة

يعد أداء الويب ومستقبل طبقة تنفيذ منصة العقود الذكية واعدين. لن تتمتع dApps بأداء أعلى فحسب، بل إن دمج WASM سيسهل أيضًا على أولئك الذين يعرفون اللغات السائدة مثل Rust and Go تطوير العقود الذكية، دون الحاجة إلى تعلم تعقيدات الصلابة أو لغات تطوير blockchain الأخرى. وفقًا لشركة Evans Data Corporation، هناك ما يقرب من 27 مليون مطور في جميع أنحاء العالم، وهذا العدد ينمو بشكل مطرد، مع زيادة متوقعة إلى أكثر من 28.7 مليون بحلول عام 2024. ومع ذلك، لا يزال عدد المطورين في مجال بلوكتشين أقل من ٣٠٠٠٠، وهو ما يمثل فقط حوالي ألف من إجمالي عدد المطورين. وعلى الرغم من أن هذا الرقم يتزايد بشكل مطرد، إلا أن تعلم لغات العقود الذكية الجديدة قد يظل عائقًا أمام المطورين لدخول صناعة بلوكتشين.

لكن المزيد والمزيد من سلاسل الكتل بدأت في دعم Web Assembly كرمز بايت للعقود الذكية المجمعة. توفر WASM الكفاءة وقابلية التشغيل البيني ومجموعة واسعة من حالات الاستخدام إلى سلاسل الكتل. كما أنه بمثابة المفتاح لفتح الباب للمطورين، مما يقلل من حاجز الدخول في تطوير بلوكتشين. فقط تخيل، في المستقبل القريب، عندما يرغب مطورو الويب 2.0 في تجربة أيديهم في تطوير بلوكتشين، يمكنهم استخدام لغات مألوفة مثل Python و C ++ و JavaScript لبناء تطبيقات واسعة النطاق على بلوكتشين، مما يزيد من قيمة الشبكات اللامركزية. أولاً، قم بخفض الحاجز أمام المبدعين (المطورين)، ثم قم بخفض الحاجز للمستخدمين، وانتقل نحو التبني الجماعي.

4. الفهرس

https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html

https://www.notion.so/18f67cee15c147dfae68b06269a455c0?pvs=21

https://wiki.polkadot.network/docs/learn-wasm

https://docs.arbitrum.io/stylus/stylus-gentle-introduction

https://medium.com/@gear_techs/introducing-gear-easy-to-use-polkadot-parachain-9ccd05437a9c

https://medium.com/cosmwasm/cosmwasm-for-ctos-f1ffa19cccb8

https://www.cncf.io/wp-content/uploads/2023/09/The-State-of-WebAssembly-2023.pdf

https://github.com/DelphinusLab/zkWasm

شكرًا لماجي وشينيو جي (CMU) على نصائحهم وإرشاداتهم حول هذه المقالة.

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

إخلاء المسؤولية:

  1. تمت إعادة طباعة هذه المقالة من [Foresight Research]. جميع حقوق التأليف والنشر تنتمي إلى المؤلف الأصلي [Mike@ Foresight Ventures]. إذا كانت هناك اعتراضات على إعادة الطبع هذه، فيرجى الاتصال بفريق Gate Learn ، وسيتعاملون معها على الفور.
  2. إخلاء المسؤولية: الآراء ووجهات النظر الواردة في هذه المقالة هي فقط آراء المؤلف ولا تشكل أي نصيحة استثمارية.
  3. يقوم فريق Gate Learn بترجمة المقالة إلى لغات أخرى. ما لم يُذكر، يُحظر نسخ المقالات المترجمة أو توزيعها أو سرقتها.

مشاريع الاستشراف: WASM - محرك عصر جديد

مبتدئ1/1/2024, 2:25:51 AM
تتناول هذه المقالة بعض العلاقات وحالات الاستخدام بين Wasm و blockchain: العقود الذكية والتفاعلات عبر السلاسل والحساب خارج السلسلة وخصوصية البيانات.

إلى؛ جاف

WebAssembly (Wasm) هو تنسيق تعليمات ثنائي محمول وعالي الأداء يمكن تشغيله في متصفحات الويب. تم تصميمه كهدف تجميع عالمي يمكن استخدامه مع لغات برمجة متعددة وتشغيله على منصات مختلفة.

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

هناك العديد من العلاقات وسيناريوهات التطبيق بين Wasm و blockchain:

  1. العقود الذكية: يمكن أن تعمل Wasm كبيئة تنفيذ للعقود الذكية، مما يسمح بتشغيل العقود على منصات بلوكشين مختلفة. يتيح الأداء العالي وقابلية النقل لـ Wasm تنفيذًا أكثر كفاءة للعقود الذكية وقابلية الاستخدام عبر الأنظمة الأساسية.
  2. قابلية التشغيل البيني عبر السلاسل: يمكن استخدام Wasm لتنفيذ قابلية التشغيل البيني عبر السلاسل. ومن خلال تجميع منطق سلاسل البلوكشين المختلفة في كود Wasm، يمكن تنفيذ نفس المنطق على سلاسل بلوكشين مختلفة، مما يتيح نقل البيانات والتفاعل عبر السلاسل.
  3. الحساب خارج السلسلة: يمكن استخدام Wasm للحساب خارج البلوكشين وإرسال نتائج الحساب إلى البلوكشين. وهذا يسمح بتحسين الكفاءة والمرونة في الحساب مع الحفاظ على أمان البيانات والجدارة بالثقة.
  4. خصوصية البيانات: يمكن استخدام Wasm لتحقيق حماية خصوصية البيانات على blockchain. ومن خلال تجميع منطق معالجة البيانات الحساسة في كود Wasm وتنفيذه على بلوكتشين، يمكن الحفاظ على خصوصية البيانات مع ضمان إمكانية التحقق من الحسابات.

باختصار، يوفر الجمع بين Wasm و blockchain تطبيقات وخدمات بلوكشين أكثر كفاءة وأمانًا ومرونة. إن قابلية النقل والأداء العالي لـ Wasm تجعلها تقنية مهمة في مجال blockchain.

1. ما هي جمعية الويب؟

WebAssembly هو معيار مجموعة تعليمات فعال وخفيف تم تطويره بواسطة اتحاد شبكة الويب العالمية (W3C). يتم الترحيب به باعتباره معطلاً للويب والحوسبة عالية الأداء، مما يدعم التنفيذ عبر المتصفحات. هذا يعني أنه يمكننا تجميع لغات برمجة مختلفة، بما في ذلك C/C ++ و Go و Rust والمزيد، في تنسيق ثنائي قياسي موحد واستخدامه كبديل لجافا سكريبت، يعمل بكفاءة كود شبه أصلية في متصفحات الويب.

WebAssembly، المعروفة أيضًا باسم WASM، هي تقنية آمنة للذاكرة ومستقلة عن النظام الأساسي يمكنها التخطيط بكفاءة لهياكل وحدة المعالجة المركزية المختلفة. يقدم العديد من المزايا الرئيسية:

  • الكفاءة: يحتوي WASM على مجموعة كاملة من ميزات اللغة وهو تنسيق ثنائي مضغوط وسريع التحميل. هدفها هو الاستفادة الكاملة من إمكانيات الأجهزة لتحقيق أداء اللغة الأم.
  • الأمان: يعمل WASM في بيئة تنفيذ آمنة للذاكرة ومحمية، ويمكن أيضًا تنفيذه داخل أجهزة JavaScript الافتراضية الحالية. في بيئة الويب، تلتزم WASM بشكل صارم بسياسة المصدر نفسه وسياسات أمان المتصفح. أثناء التجميع، يحد WASM من الواجهة لتقليل مخاطر الأمان. لا تستطيع معظم تطبيقات WASM الوصول إلى الإنترنت (على سبيل المثال، لا يوجد دعم للمقبس) وتقتصر على الوصول إلى قاعدة البيانات المحلية. تنشأ العديد من مشكلات الأمان من الوصول غير المصرح به للذاكرة، والتي يمكن تخفيفها أثناء التجميع باستخدام WASM.
  • التوافق: تم تصميم WASM ليكون بدون إصدار وقابل لاختبار الميزات ومتوافق مع الإصدارات السابقة في الويب. يمكن استدعاؤها بواسطة JavaScript وإدخال سياق JavaScript والوصول إلى وظائف المتصفح مثل واجهة برمجة تطبيقات الويب. يمكن تشغيل WASM ليس فقط في متصفحات الويب ولكن أيضًا في البيئات غير الويب مثل Node.js، أجهزة دينو وإنترنت الأشياء. على عكس الأساليب التقليدية التي تتطلب تجميعات متعددة، لا يحتاج WASM إلا إلى التجميع مرة واحدة لتنفيذ التوصيل والتشغيل الفوري.

بالإضافة إلى ذلك، فإن الويب هو النظام الأساسي العالمي الحقيقي الوحيد الذي يسمح بالوصول إلى تطبيقاتك على أي جهاز. يتيح لك هذا أيضًا الاحتفاظ بقاعدة بيانات واحدة وتبسيط التحديثات والتأكد من أن جميع المستخدمين يمكنهم الوصول إلى تطبيقاتك. يدعم WASM عمليات الأعداد الصحيحة 64 بت و 32 بت، والتي تتوافق مباشرة مع تعليمات وحدة المعالجة المركزية. من خلال إزالة عمليات الفاصلة العائمة، يمكن تحقيق السلوك الحتمي بسهولة، وهو أمر ضروري لخوارزميات الإجماع. بدعم من مشروع البنية التحتية لمترجم LLVM، يمكن لـ WASM الاستفادة من أكثر من عقد من تحسينات المترجم في LLVM. يتم تطوير WASM بشكل مستمر من قبل الشركات الكبرى مثل Google و Apple و Microsoft و Mozilla و Facebook، وهو مدعوم من خلال الخلفيات للمتصفحات التي طورتها هذه الشركات.

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

2. لماذا نحتاج إلى تجميع الويب؟

2.1 الويب 2

لقد تطور الويب من منصة للمحتوى الثابت ولغات النصوص الصغيرة إلى منصة قوية وشائعة مليئة بالتطبيقات والميزات المذهلة، وذلك بفضل الوظائف المضمنة للمتصفحات والتفاعل الذي يوفره الويب. ومع ذلك، لا تزال تطبيقات الويب مدفوعة في الغالب بنفس لغة البرمجة النصية (JavaScript)، والتي لم يتم تصميمها في البداية لإنجاز هذه المهام.

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

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

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

لذلك، لن يحل WebAssembly محل JavaScript، ولكن هذا لا يعني أنه لن يتم استخدام WASM في المستقبل. في الواقع، سيصبح استخدام WASM أكثر انتشارًا. هذا لأن WASM يمكن أن يجلب قدرات حسابية قوية إلى الويب، مثل معالجة الصور أو الألعاب. باستخدام WASM، يمكنك إنشاء إصدار مستند إلى الويب من Photoshop يعمل بشكل جيد، أو لعبة ثلاثية الأبعاد تعمل بمعدل 60 إطارًا في الثانية أو حتى معدلات إطارات أعلى في المتصفح. تمثل الألعاب، على وجه الخصوص، تحديًا لأنها تتطلب التنفيذ المتزامن لمعالجة الصوت والفيديو، بالإضافة إلى تنسيق التأثيرات الفيزيائية والذكاء الاصطناعي. يتمتع WASM بالقدرة على تشغيل الألعاب بكفاءة في المتصفح، مما يفتح الباب أمام جلب العديد من التطبيقات الأخرى إلى المتصفح.

يوضح الشكل أعلاه مقارنة سير العمل بين جافا سكريبت وWebAssembly (wasm). يمكن ملاحظة أن wasm أكثر إيجازًا مقارنة بـ JavaScript.

2.2 الويب 3

سم 5 سم

في عام 2018، بدأت منظومة إيثريوم في مناقشة استخدام WASM VM كآلة افتراضية للعقود الذكية، حيث اعتُبرت ذات أداء أفضل من EVM. وقد أعرب جافين وود، مخترع EVM، عن جدوى استبداله بـ WASM، وذكر فيتاليك أيضًا أنه سيتم ترقية إيثريوم 2.0 لدعم عقود WASM (eWASM) لتلبية المزيد من احتياجات التطوير. اليوم، بدأ تطوير عقود WASM بالفعل.

2.3 كيف تم تصميم EVM؟ لماذا هي غير فعالة؟

مشكلة حجم البنية

تحتوي أجهزة الكمبيوتر التقليدية على مجموعات تعليمات تقبل إدخال 32 أو 64 بت. ومع ذلك، فإن EVM مختلف وفريد من نوعه لأنه كمبيوتر 256 بت مصمم للتعامل مع خوارزمية التجزئة الخاصة بـ Ethereum بسهولة أكبر، مما ينتج مخرجات واضحة بحجم 256 بت.

ومع ذلك، يحتاج الكمبيوتر الفعلي الذي يقوم بتشغيل برامج EVM إلى تقسيم الكلمات ذات 256 بت إلى بنياتها الأصلية لتنفيذ العقود الذكية، مما يجعل النظام بأكمله غير فعال وغير عملي.

بالإضافة إلى ذلك، إذا كنت ترغب في تنفيذ خوارزمية معقدة مثل SHA256 باستخدام رموز OPCODES الأساسية لـ EVM على Ethereum، فأنت في وقت عصيب! ولمعالجة مشكلة تكلفة الغاز المرتفعة المتمثلة في تشغيل البرامج المعقدة من خلال مجموعة التعليمات، قدمت إيثريوم مفهوم التجميع المسبق، الذي يجمع البرنامج في إدارة القيمة الافتراضية ويستهلك كمية ثابتة من الغاز. ومن بين عمليات التجميع المسبق البارزة خوارزمية تجزئة إيثريوم، حيث إن تنفيذها داخل الجهاز الافتراضي سيؤدي إلى رسوم باهظة للغاية عند استدعاء العقود.

التجميع المسبق المتضخم

تكمن مشكلة التجميع المسبق في أنه يزيد باستمرار من انتفاخ وتعقيد الجهاز الافتراضي، دون معالجة المشكلة الأساسية: التصميم غير الفعال والضعيف لمجموعة التعليمات والمواصفات الحالية.

ماذا لو تمكنا من تحديد مواصفات جديدة ومجموعة تعليمات لا تتطلب التجميع المسبق لهذه البرامج المعقدة، ولكن بدلاً من ذلك تحقق النتائج المرجوة بكفاءة من خلال التعليمات الأساسية؟ هذا هو المكان الذي تلعب فيه WASM دورًا.

2.4 مقارنة بين EVM وWASM VM

  • السرعة: يهدف WASM إلى توفير سرعة تنفيذ أسرع مقارنة بـ EVM. قد تواجه EVM مشكلات تتعلق بالكفاءة في تجميع العقود الذكية وتنفيذها، بينما تعمل WASM على تحسين سرعة التحميل وقدرة المعالجة عن طريق التحويل المباشر إلى التعليمات البرمجية المجمعة.
  • العقود المجمعة مسبقًا: تعتمد EVM على العقود المجمعة مسبقًا من أجل التنفيذ الفعال لحسابات التشفير، ولكن هذا يمكن أن يؤدي إلى مخاطر الانقسام الكلي. يلغي WASM الحاجة إلى العقود المجمعة مسبقًا، مما يسمح للمطورين بإنشاء عقود ذكية فعالة وسريعة.
  • تكاليف المعاملات: مع جهاز WASM الافتراضي الأسرع، تزداد إنتاجية المعاملات بشكل كبير، مما يؤدي إلى تقليل نشر العقود وتكاليف المعاملات. تعالج عقود WASM قضايا رسوم المعاملات المرتفعة والازدحام على شبكة Ethereum.
  • المرونة وقابلية التشغيل البيني: تعمل WASM على توسيع نطاق اللغات المتاحة لتطوير العقود الذكية، مما يدعم استخدام أي لغة عالية المستوى يتم تجميعها إلى WASM، مثل Rust و C ++ و JavaScript. وهذا يعني أنه يمكن للمطورين كتابة العقود الذكية بلغتهم المفضلة، بما في ذلك الأطر الناضجة مثل الحبر! من أجل الصدأ أو اسأل! لسكريبت التجميع.

يقوم فريق EWASM حاليًا بدمج WebAssembly على Ethereum لضمان طبقة تنفيذ أكثر كفاءة وتبسيطًا، مما يجعل Ethereum مناسبة كمنصة حوسبة لامركزية بالكامل. تم اعتماد WASM كمعيار من قبل العديد من المشاريع الأخرى، بما في ذلك Dfinity و EOS، وكلاهما يستخدمه لتحسين طبقات التنفيذ الخاصة بهم.

2.5 قلم (التحكيم)

مشروع Stylus هو مبادرة على شبكة Arbitrum Ethereum Layer 2 التي تهدف إلى تحسين أداء تنفيذ العقود الذكية من خلال تقديم الجهاز الافتراضي WebAssembly (WASM). يمكن تنفيذ العقود بشكل أسرع من Solidity، مع تقليل تكاليف الغاز. هذا يجعل من السهل إنشاء عقود ذكية عالية الأداء على شبكة Arbitrum، ويدعم حاليًا التجميع في C و C ++ و Rust.

دعم الترجمة المسبقة المخصص: يدعم Stylus أيضًا عمليات التجميع المسبق المخصصة، والتي تسمح للمطورين بنشر ملفات Rust أو C ++ المسبقة الخاصة بهم على شبكة Arbitrum. يمكن أن يساعد ذلك في تقديم خوارزميات تشفير جديدة أو وظائف محددة أخرى على السلسلة دون انتظار الترقيات على السلسلة. على سبيل المثال، يمكن تجميع حسابات الموتر مسبقًا لتقليل تكاليف الاستدلال، والتي يمكن أن تكون مفيدة للتعلم الآلي على السلسلة.

قابلية التشغيل البيني مع EVM: تحقق Stylus التكامل مع نظام Ethereum البيئي الحالي من خلال قابلية التشغيل البيني مع آلة Ethereum الافتراضية (EVM). هذا يعني أن عقود Stylus يمكن أن تتفاعل مع عقود EVM الحالية وتشترك في نفس الحالة العالمية مثل EVM.

إعادة الدخول: على عكس Cosmos Wasm، يقدم Stylus Rust SDK ميزة إعادة الدخول ويسمح للمطورين بتمكينها يدويًا. يتيح ذلك للعقود مزيدًا من المرونة في قابلية التشغيل البيني، ولكن يحتاج المطورون إلى إدارة الحالة بعناية لضمان الأمان.

استنادًا إلى النظام البيئي المزدهر لـ Arbitrum، ربما يكون تكامل Stylus هو تكامل WASM الأكثر أهمية. كما أنه يعزز القدرة التنافسية لـ Arbitrum بين حقول ZKrollup.

2.6 جير (بولكادوت)

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

في السابق، كانت تكلفة إطلاق بلوكتشين مرتفعة، لكن Gear يسمح لمطوري dApp بالتركيز على مشاريعهم بدلاً من بناء وتشغيل بلوكتشين بالكامل من الصفر.

المحرك الرئيسي لبروتوكول Gear هو وحدة العقد الذكي. في حالة Gear، فإن أي عقد ذكي هو برنامج WebAssembly تم تجميعه بلغات مختلفة مثل Rust و C و C ++. بالنسبة للمطورين من خارج عالم التشفير، فإن حاجز الدخول منخفض لأنهم يستطيعون إنشاء عقود ذكية في بيئة مألوفة. يجد المطورون أنه من الأسهل تجربة لغات برمجة العقود الذكية.

تستخدم بنية العقد الذكي من Gear نموذج الممثل الموجود أسفل الغطاء وتوفر الوظائف التالية:

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

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

2.7 كوزماس (كوزموس)

CosmWasm عبارة عن منصة عقود ذكية حديثة وقوية قائمة على WASM يمكن أن تتكامل بسهولة مع Cosmos-SDK. يُظهر هذا إحدى المزايا الرئيسية لـ CosmWasm: يتم دمج العقود المكتوبة مع CosmWasm بإحكام مع IBC (Inter-Blockchain Communication) محليًا، مما يسمح للمطورين والمستخدمين بالدخول في مستقبل متعدد السلاسل. حاليًا، يتم دعم Rust فقط.

مزايا كوزمواسم

  1. الأمان: يعزز أمان العقود الذكية باستخدام لغة برمجة Rust
  2. التوافق عبر السلاسل: يدعم بروتوكول IBC (الاتصال بين Blockchain) داخل نظام Cosmos البيئي.
  3. الأداء: يُظهر كفاءة أعلى وتكاليف معاملات أقل في حالات معينة مقارنة بجهاز Ethereum الافتراضي التقليدي (EVM).
  4. سهل الاستخدام للمطورين: تساعد ميزات النوع وأمان الذاكرة في لغة Rust على تقليل أنواع معينة من الأخطاء في العقود الذكية.

التحديات والقيود

  1. منحنى التعلم: قد يحتوي Rust على منحنى تعليمي أكثر حدة مقارنة بلغات العقود الذكية الأكثر استخدامًا مثل Solidity. لزيادة إمكانية التبني على نطاق واسع، يحتاج CosmWasm إلى دعم التجميع بمزيد من اللغات.
  2. النظام البيئي والأدوات: أثناء النمو، قد تظل أدوات التطوير والنظام البيئي لـ CosmWasm محدودة نسبيًا مقارنة بمنصات العقود الذكية الناضجة مثل Ethereum.
  3. حصة السوق والوعي: في مساحة منصة العقود الذكية، قد يكون لدى CosmWasm وعي أقل مقارنة بمنصات مثل Ethereum و Binance Smart Chain، مما يؤثر على قدرتها على جذب المطورين والمستخدمين.
  4. تحديات الصيانة والترقية: بينما توفر CosmWasm وظائف ترقية العقود، لا تزال صيانة وإدارة الترقيات للعقود الذكية مهمة معقدة تحتاج إلى التعامل معها بعناية لتجنب الثغرات الأمنية.
  5. مشاكل التوافق: قد تواجه المشاريع المعتادة على EVM أو بيئات العقود الذكية الأخرى تحديات التوافق عند الترحيل إلى CosmWasm.

2.8 زك-واسم

بالإضافة إلى الجهاز الافتراضي wasm، هناك أيضًا تقنية ناشئة حديثة تسمى ZKWASM. قام المخترع، Delphinus Labs، بفتح مصدر شفرة ZK-WASM على GitHub. يسمح ZKWASM للمطورين بالتحقق من صحة الحسابات المنفذة دون إعادة تنفيذها. من خلال الاستفادة من ZKWASM، يمكن للمطورين إنشاء تطبيقات خالية من المعرفة (ZKP) بمرونة باستخدام لغات برمجة مختلفة. يمكن تنفيذ هذه التطبيقات بسلاسة في متصفحات الويب.

ZKWASM مشتق من ZKSNARK، وهو مزيج من براهين SNARG وأدلة المعرفة الصفرية. دعونا نوضح ذلك أكثر. عادةً، لاستخدام ZKSNARK، تحتاج إلى كتابة برنامج بلغة دائرة حسابية أو لغة صديقة للدوائر مثل بينوكيو، وتيني رام، وبوفيت/بيكوين، وجيبيتو، وإطار XJSnark، وزوكراتس، وما إلى ذلك. هذا يشكل حاجزًا أمام البرامج الحالية، مما يجعل من الصعب عليها الاستفادة من قوة ZKSNARK. ومع ذلك، هناك طريقة أخرى، وهي عدم استخدام ZKSNARK على مستوى الكود المصدري ولكن على مستوى البايت الخاص بجهاز افتراضي، ثم تنفيذ جهاز افتراضي يدعم ZKSNARK. اعتمدت Delphinus Labs النهج الأخير من خلال دمج جهاز WASM الافتراضي بأكمله في دائرة ZKSNARK. ونتيجة لذلك، يمكن تشغيل تطبيقات WASM الحالية مباشرة على ZKWASM دون أي تعديلات. لذلك، يمكن لمقدمي الخدمات السحابية أن يثبتوا لأي مستخدم أن نتائج الحساب يتم حسابها بأمانة ولن تكشف عن أي معلومات خاصة.

يوفر ZKWASM حالات استخدام مختلفة، مثل تمكين التحقق على السلسلة من العمليات التي يتم إجراؤها في المتصفح. يسمح بالتفاعلات المستندة إلى الويب والتي يمكن التحقق منها على blockchain. تشمل حالات الاستخدام الأخرى خدمات أوراكل، والحساب خارج السلسلة، والأتمتة، وسد الفجوة بين Web2 و Web3، وإنشاء أدلة للتعلم الآلي ومعالجة البيانات، وحتى الألعاب والتطبيقات الاجتماعية. مع زيادة الاعتماد، يوسع ZkWasm إمكانيات Web3 ويدمج مطوري Web2 في هذا المشهد التحويلي.

من خلال تطبيق ZKWASM من Delphinus Lab، يمكن للمطورين تسخير قوة البراهين الخالية من المعرفة لتعزيز أمان وخصوصية تطبيقاتهم، مما يمهد الطريق لنظام بيئي رقمي أكثر موثوقية ولامركزية.

3. الخاتمة

يعد أداء الويب ومستقبل طبقة تنفيذ منصة العقود الذكية واعدين. لن تتمتع dApps بأداء أعلى فحسب، بل إن دمج WASM سيسهل أيضًا على أولئك الذين يعرفون اللغات السائدة مثل Rust and Go تطوير العقود الذكية، دون الحاجة إلى تعلم تعقيدات الصلابة أو لغات تطوير blockchain الأخرى. وفقًا لشركة Evans Data Corporation، هناك ما يقرب من 27 مليون مطور في جميع أنحاء العالم، وهذا العدد ينمو بشكل مطرد، مع زيادة متوقعة إلى أكثر من 28.7 مليون بحلول عام 2024. ومع ذلك، لا يزال عدد المطورين في مجال بلوكتشين أقل من ٣٠٠٠٠، وهو ما يمثل فقط حوالي ألف من إجمالي عدد المطورين. وعلى الرغم من أن هذا الرقم يتزايد بشكل مطرد، إلا أن تعلم لغات العقود الذكية الجديدة قد يظل عائقًا أمام المطورين لدخول صناعة بلوكتشين.

لكن المزيد والمزيد من سلاسل الكتل بدأت في دعم Web Assembly كرمز بايت للعقود الذكية المجمعة. توفر WASM الكفاءة وقابلية التشغيل البيني ومجموعة واسعة من حالات الاستخدام إلى سلاسل الكتل. كما أنه بمثابة المفتاح لفتح الباب للمطورين، مما يقلل من حاجز الدخول في تطوير بلوكتشين. فقط تخيل، في المستقبل القريب، عندما يرغب مطورو الويب 2.0 في تجربة أيديهم في تطوير بلوكتشين، يمكنهم استخدام لغات مألوفة مثل Python و C ++ و JavaScript لبناء تطبيقات واسعة النطاق على بلوكتشين، مما يزيد من قيمة الشبكات اللامركزية. أولاً، قم بخفض الحاجز أمام المبدعين (المطورين)، ثم قم بخفض الحاجز للمستخدمين، وانتقل نحو التبني الجماعي.

4. الفهرس

https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html

https://www.notion.so/18f67cee15c147dfae68b06269a455c0?pvs=21

https://wiki.polkadot.network/docs/learn-wasm

https://docs.arbitrum.io/stylus/stylus-gentle-introduction

https://medium.com/@gear_techs/introducing-gear-easy-to-use-polkadot-parachain-9ccd05437a9c

https://medium.com/cosmwasm/cosmwasm-for-ctos-f1ffa19cccb8

https://www.cncf.io/wp-content/uploads/2023/09/The-State-of-WebAssembly-2023.pdf

https://github.com/DelphinusLab/zkWasm

شكرًا لماجي وشينيو جي (CMU) على نصائحهم وإرشاداتهم حول هذه المقالة.

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

إخلاء المسؤولية:

  1. تمت إعادة طباعة هذه المقالة من [Foresight Research]. جميع حقوق التأليف والنشر تنتمي إلى المؤلف الأصلي [Mike@ Foresight Ventures]. إذا كانت هناك اعتراضات على إعادة الطبع هذه، فيرجى الاتصال بفريق Gate Learn ، وسيتعاملون معها على الفور.
  2. إخلاء المسؤولية: الآراء ووجهات النظر الواردة في هذه المقالة هي فقط آراء المؤلف ولا تشكل أي نصيحة استثمارية.
  3. يقوم فريق Gate Learn بترجمة المقالة إلى لغات أخرى. ما لم يُذكر، يُحظر نسخ المقالات المترجمة أو توزيعها أو سرقتها.
ابدأ التداول الآن
اشترك وتداول لتحصل على جوائز ذهبية بقيمة
100 دولار أمريكي
و
5500 دولارًا أمريكيًا
لتجربة الإدارة المالية الذهبية!