شراء العملات المشفرة
الأسواق
العقود الفورية
العقود الآجلةBTC
مدخرات
مركز الأحداث
مركز المكافآت
المزيد
مهرجان صفر رسوم
EVM (آلة Ethereum الافتراضية): ما هي EVM؟تُعد EVM، أو آلة Ethereum الافتراضية، بيئة التنفيذ التي تعالج المعاملات وتشغّل شيفرات العقود الذكية على Ethereum.وهي بمثابة حاسوب افتراضي مشترك تلتزم قواعده عملاء التنفيذ على Ethereum حول الEVM (آلة Ethereum الافتراضية): ما هي EVM؟تُعد EVM، أو آلة Ethereum الافتراضية، بيئة التنفيذ التي تعالج المعاملات وتشغّل شيفرات العقود الذكية على Ethereum.وهي بمثابة حاسوب افتراضي مشترك تلتزم قواعده عملاء التنفيذ على Ethereum حول ال

EVM (آلة Ethereum الافتراضية)

2026/10/14 17:15
#Intermediate
Humanity
H$0.05672-2.52%
PX
PX$0.0113--%
AINFT
NFT$0.0000002367-0.12%
Ethereum
ETH$2,410.08-2.41%
Smart Blockchain
SMART$0.004313+1.14%

ما هي EVM؟

تُعد EVM، أو آلة Ethereum الافتراضية، بيئة التنفيذ التي تعالج المعاملات وتشغّل شيفرات العقود الذكية على Ethereum.

وهي بمثابة حاسوب افتراضي مشترك تلتزم قواعده عملاء التنفيذ على Ethereum حول العالم.

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

لا توجد EVM في شكل جهاز مادي واحد أو خادم واحد.

بل تطبق كل عقدة مشاركة في Ethereum قواعد التنفيذ نفسها بشكل مستقل على المعاملات المرتبة ذاتها.

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

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

تُعد EVM جزءًا أساسيًا من طبقة التنفيذ في Ethereum، لكنها لا تمثل شبكة Ethereum بأكملها.

تعتمد Ethereum أيضًا على الإجماع، وشبكات النظير إلى النظير، وتخزين البيانات، وإنتاج الكتل، والمدققين، ومكونات بروتوكول أخرى.

تركز EVM تحديدًا على العمليات الحسابية وانتقالات الحالة.

ما وظيفة EVM؟

تقرأ EVM تعليمات المعاملات، وتشغّل الشيفرة الثنائية للعقود الذكية، وتحسب استهلاك الغاز، وتحدد التغييرات التي ينبغي أن تطرأ على حالة Ethereum.

يمكنها تحويل ETH، أو استدعاء دالة في عقد، أو نشر عقد جديد، أو تحديث بيانات العقد، أو إنشاء سجلات أحداث، أو إرجاع البيانات المطلوبة.

قبل تطبيق المعاملة، يتحقق نظام التنفيذ في Ethereum من متطلبات مثل توقيع المرسل، ورقم nonce، والرصيد المتاح، وحد الغاز، وتنسيق المعاملة.

إذا استدعت المعاملة عقدًا ذكيًا، تنفذ EVM تعليمات العقد بالترتيب المحدد في الشيفرة الثنائية.

وقد تستدعي EVM عقودًا أخرى أثناء المعاملة نفسها.

تتيح هذه الإمكانية للتطبيقات اللامركزية دمج عدة بروتوكولات وأنظمة توكنات في عملية ذرية واحدة.

بعد التنفيذ، تُحدث EVM تغييرًا ناجحًا في الحالة أو تُبلغ عن فشل.

إذا جرى التراجع عن التنفيذ، تُلغى عادةً تغييرات حالة العقد المقصودة، مع أن المرسل يظل عمومًا مسؤولًا عن دفع تكلفة العمل الحسابي المنفذ بالفعل.

قد تتضمن نتيجة التنفيذ النهائية أرصدة محدّثة، وبيانات معدّلة، وسجلات أحداث صادرة، وبيانات مُعادة، وإيصال المعاملة.

أهمية EVM في عالم الكريبتو

تكمن أهمية EVM في أنها تحوّل Ethereum من شبكة بسيطة لتحويل العملات المشفرة إلى منصة بلوكشين قابلة للبرمجة.

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

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

يمكن للعقود الذكية التي تعمل على EVM الاحتفاظ بالأصول وتطبيق القواعد دون الحاجة إلى مسؤول مركزي تقليدي للموافقة على كل إجراء.

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

يدعم هذا الهيكل المفتوح تطبيقات كريبتو يمكنها التفاعل مع بعضها.

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

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

هل EVM بلوكشين؟

ليست EVM بلوكشين بحد ذاتها.

إنها نظام التنفيذ الافتراضي المستخدم لحساب آثار معاملات البلوكشين.

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

يمكن تشبيه Ethereum بالشبكة الكاملة، بينما تمثل EVM محرك الحسابات داخل طبقة التنفيذ فيها.

يمكن لشبكات بلوكشين أخرى تطبيق EVM من دون مشاركة تاريخ بلوكشين Ethereum أو مدققيها أو أرصدتها أو ميزانيتها الأمنية أو أصلها الأصلي.

لهذا السبب، يمكن لسلسلتي بلوكشين قائمتين على EVM تشغيل شيفرات عقود ذكية متشابهة مع بقائهما شبكتين منفصلتين تمامًا.

كيف تعالج EVM المعاملة؟

تبدأ معاملة EVM عادةً عندما يختار المستخدم إجراءً في محفظة عملات مشفرة أو تطبيق لامركزي.

تنشئ المحفظة معاملة تتضمن تفاصيل مثل عنوان الوجهة، والقيمة المحوّلة، وبيانات الإدخال، ورقم nonce، وحد الغاز، وإعدادات الرسوم.

يوقّع المستخدم المعاملة باستخدام مفتاح خاص.

يثبت التوقيع أن المعاملة حظيت بموافقة المتحكم في الحساب المُرسل.

تُرسل المعاملة الموقعة إلى عقدة Ethereum وقد تدخل مجمع المعاملات المعلّقة.

يختار منتج الكتلة المعاملات ويدرجها في حمولة كتلة مرتبة.

تعالج EVM كل معاملة استنادًا إلى الحالة الناتجة عن جميع المعاملات السابقة في الكتلة.

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

بعد معالجة الكتلة بالكامل، تحسب عملاء التنفيذ حالة Ethereum الناتجة.

وتعيد العقد الأخرى تنفيذ العمل نفسه للتأكد من أن الكتلة المقترحة تتبع قواعد Ethereum.

تشرح الوثائق الرسمية لمعاملات Ethereum كيف يمكن للتعليمات الموقعة تحويل القيمة أو إنشاء العقود أو استدعاء العقود الموجودة.

انتقالات الحالة في EVM

انتقال الحالة هو التغيير من حالة Ethereum صالحة إلى حالة Ethereum صالحة أخرى.

تشمل حالة Ethereum الحسابات، وأرصدة ETH، وشيفرات العقود الذكية، وبيانات العقود، وأرقام nonce للحسابات.

تأخذ EVM الحالة الحالية ومعاملة مرتبة كمدخلات.

ثم تطبق قواعد التنفيذ في Ethereum لحساب الحالة التالية.

في التحويل الأساسي لـ ETH، يخفض انتقال الحالة رصيد المرسل ويزيد رصيد المستلم.

في مبادلة التوكنات، قد يحدّث الانتقال أرصدة التوكنات، والتفويضات، واحتياطيات مجمع السيولة، وسجلات الرسوم، وسجلات الأحداث.

وفي معاملة إقراض، قد يحدّث مبالغ الضمانات، وأرصدة الديون، ومؤشرات الفائدة، ومقاييس مخاطر الحساب.

ينبغي لكل عميل تنفيذ صادق أن يحسب انتقال الحالة نفسه انطلاقًا من ظروف البداية ذاتها.

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

حسابات Ethereum وEVM

تضم Ethereum حسابات مملوكة خارجيًا وحسابات العقود.

يُتحكم في الحساب المملوك خارجيًا باستخدام مفتاح خاص.

أما حساب العقد، فتتحكم فيه شيفرة عقد ذكي.

يمكن لكلا النوعين الاحتفاظ بـ ETH، لكن سلوكهما مختلف.

يمكن للحساب المملوك خارجيًا بدء معاملة بعد أن يوقّعها المتحكم فيه.

ولا يوقّع حساب العقد معاملة عادية بشكل مستقل باستخدام مفتاح خاص.

تعمل شيفرته عند تلقي استدعاء صالح عبر معاملة أخرى أو تفاعل مع عقد.

توضح الوثائق الرسمية لحسابات Ethereum أن الحسابات قد تكون تحت تحكم المستخدمين أو منشورة كعقود ذكية.

تقرأ EVM معلومات الحساب عند التحقق من المعاملات، وتحويل القيمة، وتحميل شيفرة العقد، وتحديث بيانات التخزين.

العقود الذكية وEVM

العقد الذكي برنامج مخزّن على عنوان Ethereum.

تنفذ EVM هذا البرنامج عندما تستدعي معاملة أو عقد آخر إحدى دواله.

قد تتضمن العقود الذكية متغيرات ودوال وصلاحيات وأحداثًا وأخطاءً وقواعد للتعامل مع الأصول الرقمية.

غالبًا ما يكتب المطورون عقود Ethereum الذكية باستخدام Solidity أو Vyper.

تُحوّل الشيفرة المصدرية إلى شيفرة EVM الثنائية منخفضة المستوى قبل النشر.

يوضح الدليل الرسمي لعقود Ethereum الذكية أن نشر العقود والتفاعل معها يتطلب معاملات ورسوم غاز.

بعد نشر العقد، تُخزن شيفرته الثنائية وقت التشغيل ضمن حساب العقد.

تقرأ EVM هذه الشيفرة الثنائية وتنفذها، ولا تفهم مباشرةً الشيفرة المصدرية الأصلية المكتوبة بـ Solidity أو Vyper.

هذا التمييز مهم لأن الشيفرة الثنائية المنشورة هي التي تتحكم فعليًا في السلوك على السلسلة.

ما هي الشيفرة الثنائية لـ EVM؟

شيفرة EVM الثنائية هي تسلسل تعليمات قابل للقراءة آليًا تنفذه آلة Ethereum الافتراضية.

غالبًا ما تظهر على هيئة قيمة سداسية عشرية طويلة.

يمثل كل جزء من الشيفرة الثنائية رمزًا تشغيليًا أو قيمة بيانات أو معلومات تنفيذ أخرى.

تكون الشيفرة المصدرية للعقد الذكي أسهل قراءةً للبشر، بينما صُممت الشيفرة الثنائية لمعالجتها بواسطة EVM.

يتضمن العقد المنشور عادةً شيفرة الإنشاء وشيفرة وقت التشغيل.

تعمل شيفرة الإنشاء مرة واحدة أثناء النشر، وتُرجع شيفرة وقت التشغيل التي تبقى على عنوان العقد.

تعمل شيفرة وقت التشغيل كلما تفاعل المستخدمون أو العقود الأخرى مع العقد المنشور.

يوضح مقدمة Solidity للعقود الذكية أن EVM تقرأ البايتات المخزنة في مساحة شيفرة العقد وتفسرها وتنفذها.

غالبًا ما ينشر المطورون الشيفرة المصدرية ويتحققون منها كي يتمكن المستخدمون من مقارنة العقد المقروء بالشيفرة الثنائية المنشورة.

ما هي الرموز التشغيلية لـ EVM؟

الرموز التشغيلية هي التعليمات الفردية منخفضة المستوى التي تفهمها EVM.

ينفذ كل رمز تشغيلي عملية محددة.

تنفذ بعض الرموز العمليات الحسابية أو المقارنة أو الحسابات المنطقية على مستوى البتات.

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

تشمل الأمثلة ADD للجمع، وSLOAD لقراءة بيانات العقد، وSSTORE لتغييرها، وCALL لاستدعاء حساب آخر، وREVERT لإيقاف التنفيذ مع إرجاع خطأ.

يسرد المرجع الرسمي للرموز التشغيلية في Ethereum EVM التعليمات المتاحة وتكاليف الغاز الخاصة بها.

تُنفذ الرموز التشغيلية بالتتابع ما لم تغيّر إحدى التعليمات عداد البرنامج أو تنهي التنفيذ.

قد تضيف ترقيات Ethereum تعليمات، أو تعدّل تكاليف الغاز، أو تغيّر طريقة عمل عمليات معينة.

لذلك يجب ضبط إعدادات المترجم لاستهداف إصدار EVM تدعمه الشبكة الوجهة.

آلية عمل المكدس في EVM

غالبًا ما توصف EVM بأنها آلة افتراضية تعتمد على المكدس.

المكدس بنية بيانات مؤقتة تعمل وفق مبدأ «الأخير دخولًا، الأول خروجًا».

عادةً ما تأخذ الرموز التشغيلية في EVM القيم من أعلى المكدس وتعيد النتيجة إلى أعلاه.

على سبيل المثال، تزيل تعليمة الجمع قيمتين من المكدس، وتجمعهما، ثم تضع الناتج مجددًا على المكدس.

تستخدم EVM كلمات بحجم 256 بت في العديد من العمليات.

يلائم حجم الكلمة هذا العمليات التشفيرية وقيم الحسابات في Ethereum.

للمكدس عمق محدود، لذا يجب على المترجمات والمطورين تنظيم الحسابات المعقدة بعناية.

قد يؤدي خطأ في المكدس إلى فشل التنفيذ.

ذاكرة EVM

ذاكرة EVM مساحة مؤقتة يمكن عنونتها بالبايت، ومتاحة أثناء استدعاء العقد.

يمكن أن تحتوي على وسائط الدوال، والبيانات المعادة، والمصفوفات المؤقتة، والقيم المشفّرة، ونتائج الحسابات الوسيطة.

تُمسح الذاكرة بعد انتهاء سياق التنفيذ الحالي.

ولا تُستخدم للتخزين الدائم على السلسلة.

قد ترتفع تكلفة الغاز للذاكرة كلما وصل العقد إلى نطاقات ذاكرة أكبر.

لذلك قد يقلل الاستخدام الفعال للذاكرة تكلفة المعاملات المعقدة.

يجب على المطورين التمييز بين الذاكرة والتخزين، لأن لكل منهما عمرًا وغرضًا وتكلفة غاز مختلفة.

التخزين في EVM

تخزين EVM هو مساحة البيانات الدائمة المرتبطة بعقد ذكي.

تظل قيم التخزين جزءًا من حالة Ethereum بعد انتهاء المعاملة.

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

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

يُنظّم التخزين في خانات بحجم 256 بت.

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

قد تؤدي التغييرات غير الآمنة في تخطيط التخزين لعقد قابل للترقية إلى إتلاف البيانات الموجودة.

لذلك يُعد تصميم التخزين جزءًا مهمًا من أمان العقود الذكية وتحسين استهلاك الغاز.

Calldata والبيانات المعادة

Calldata هي بيانات الإدخال للقراءة فقط التي تُمرر إلى استدعاء عقد خارجي.

تتضمن عادةً محدد دالة تليه وسائط الدالة المشفّرة.

تستخدم EVM هذه المعلومات لتحديد الدالة التي ينبغي تشغيلها والقيم التي ينبغي تمريرها إليها.

تختلف Calldata عن الذاكرة، إذ لا يمكن للعقد المستقبِل تعديلها مباشرةً.

يمكن للعقود أيضًا إرجاع بيانات إلى الحساب أو العقد المستدعي.

قد تتضمن البيانات المعادة رصيد توكن، أو سعرًا محسوبًا، أو نتيجة معاملة، أو خطأً مشفّرًا.

غالبًا ما تستخدم التطبيقات الخارجية استدعاءات للقراءة فقط لمحاكاة دوال العقود واسترجاع البيانات المعادة من دون إنشاء معاملة على السلسلة.

الغاز وEVM

الغاز وحدة قياس العمل الحسابي الذي تنفذه EVM.

لكل رمز تشغيلي تكلفة غاز محددة.

يتطلب تحويل ETH بسيط عادةً غازًا أقل من معاملة معقدة تشمل عدة عقود ذكية وتغييرات في التخزين.

يختار المرسل حدًا للغاز يحدد الحد الأقصى الذي يمكن أن تستهلكه المعاملة.

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

ويظل المرسل مسؤولًا عن دفع تكلفة الحسابات التي أُنجزت بالفعل.

توضح الوثائق الرسمية لرسوم الغاز في Ethereum أن معاملات العقود الذكية الأكثر تعقيدًا تتطلب عملًا حسابيًا أكبر وحدًا أعلى للغاز.

يمنع الغاز البرامج من استهلاك موارد الشبكة بلا حدود.

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

حد الغاز مقابل سعر الغاز

حد الغاز هو أقصى كمية من الغاز الحسابي المسموح للمعاملة باستخدامها.

ويحدد سعر الغاز المبلغ الذي يرغب المرسل في دفعه مقابل كل وحدة غاز وفق قواعد الرسوم المعمول بها.

لا يعني حد الغاز المرتفع أن المعاملة ستستهلك حتمًا كل هذه الكمية.

يدفع المرسل عمومًا وفق الكمية المستهلكة فعليًا، مع مراعاة قواعد رسوم المعاملات السارية.

قد يؤدي تحديد حد غاز منخفض جدًا إلى فشل المعاملة قبل اكتمال التنفيذ.

وقد يؤدي ضبط الرسوم على مستوى منخفض جدًا إلى بقاء المعاملة معلّقة عندما يكون الطلب على مساحة الكتل مرتفعًا.

تقدّر المحافظ عادةً القيمتين، لكن التقديرات قد تتغير لأن حالة Ethereum والطلب على الشبكة قد يتغيران قبل إدراج المعاملة.

العقود المسبقة التجميع

العقود المسبقة التجميع هي وظائف خاصة على مستوى البروتوكول، متاحة على عناوين Ethereum محجوزة.

يمكن استدعاؤها بطريقة تشبه استدعاء عقد ذكي عادي.

لكن عملها يُنفذ مباشرةً بواسطة عملاء التنفيذ، وليس عبر شيفرة EVM الثنائية العادية المخزنة على العنوان.

تُستخدم العقود المسبقة التجميع عادةً للعمليات التشفيرية التي سيكون تنفيذها عبر تسلسل عادي من الرموز التشغيلية غير فعال.

توضح وثائق Solidity الخاصة بالعقود المسبقة التجميع أن سلوكها واستهلاكها للغاز يُنفذان داخل بيئة تنفيذ EVM.

يمكن ترقيات Ethereum إضافة عقود مسبقة التجميع عند حاجة الشبكة إلى عمليات موحدة وفعالة.

استدعاءات الرسائل

استدعاء الرسائل هو تفاعل في EVM يستدعي فيه حسابٌ حسابًا آخر.

يمكن لحساب مملوك خارجيًا بدء العملية بإرسال معاملة موقعة.

بعد ذلك، يمكن لعقد ذكي استدعاء عقد آخر أثناء التنفيذ.

يمكن لاستدعاء الرسائل تحويل ETH، وتوفير بيانات الإدخال، وتخصيص الغاز، وطلب تنفيذ شيفرة العقد.

تتيح الاستدعاءات المتداخلة تفاعل عدة تطبيقات ضمن معاملة واحدة.

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

ينبغي للعقود الآمنة إدارة الاستدعاءات الخارجية بعناية وحماية الحالة المهمة من إعادة الدخول وغيرها من مخاطر التفاعل.

إنشاء العقود

يمكن لـ EVM إنشاء عقد ذكي جديد عند معالجة معاملة إنشاء عقد أو رمز تشغيلي مخصص لذلك.

يبدأ النشر بشيفرة التهيئة.

يمكن لشيفرة التهيئة معالجة وسائط المُنشئ، وإعداد قيم التخزين الأولية، وإرجاع شيفرة وقت التشغيل الثنائية.

بعد ذلك تُخزن شيفرة وقت التشغيل على عنوان العقد الجديد.

يتطلب نشر العقد غازًا لأن على EVM تنفيذ شيفرة الإنشاء وإضافة شيفرة وحالة دائمة إلى Ethereum.

عادةً ما تكون تكلفة نشر العقود الأكبر حجمًا والمُنشئات الأكثر تعقيدًا أعلى.

قد يفشل النشر إذا نفد الغاز، أو خالف قواعد التنفيذ، أو تراجعت التهيئة.

الأحداث والسجلات

يمكن للعقود الذكية إنشاء سجلات أثناء تنفيذ EVM.

عادةً ما يتيح المطورون هذه السجلات باستخدام أحداث Solidity.

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

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

وهي مفيدة للمحافظ، ومستكشفات البلوكشين، وأنظمة التحليلات، وواجهات التطبيقات اللامركزية.

لا تستطيع العقود قراءة سجلات الأحداث القديمة مباشرةً بالطريقة نفسها التي تقرأ بها بيانات التخزين.

لذلك ينبغي عدم استخدام الحدث كمصدر المعلومات الوحيد الذي يحتاج إليه تنفيذ العقد مستقبلًا.

التراجع وفشل معاملات EVM

قد تفشل معاملة EVM لأسباب متعددة.

قد يكون التوقيع غير صالح، أو رقم nonce غير صحيح، أو الرصيد غير كافٍ، أو الغاز غير كافٍ، أو التنسيق غير مدعوم.

وقد يتراجع عقد ذكي عمدًا عند عدم استيفاء شرط مطلوب.

على سبيل المثال، قد تتراجع معاملة تحويل التوكنات إذا لم يكن لدى المرسل عدد كافٍ منها.

وقد تتراجع مبادلة لامركزية إذا كان المبلغ المستلَم أقل من الحد الأدنى الذي حدده المستخدم.

وقد يتراجع فحص صلاحيات العقد إذا لم يكن المستدعي مخولًا.

يلغي التراجع عادةً تغييرات الحالة التي أُجريت ضمن مسار التنفيذ الفاشل.

ولا يُرد عمومًا الغاز المستهلك بالفعل، لأن عملاء التنفيذ أدوا العمل المطلوب.

لا يعني فشل المعاملة بالضرورة وجود خلل في Ethereum أو EVM.

غالبًا ما يعني أن المعاملة المحددة لم تتمكن من استيفاء قواعد العقد أو البروتوكول في ظل الحالة الحالية.

التنفيذ الذري

تتميز معاملات EVM بأنها ذرية، أي إن تغييرات الحالة تنجح معًا أو تفشل معًا ضمن نطاق تنفيذ المعاملة.

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

على سبيل المثال، قد تقترض معاملة تمويل لامركزي أصلًا، وتجري مبادلة، وتسدد التزامًا آخر، وتحدّث الضمان في تنفيذ واحد.

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

تقلل الذرية بعض مخاطر التسوية، لكنها لا تضمن أن تكون المعاملة مفيدة ماليًا أو آمنة.

لا يزال بإمكان عقد خبيث إتمام معاملة ذرية تنقل الأصول بعيدًا عن مستخدم منحه الموافقة.

التنفيذ الحتمي

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

الحتمية ضرورية للتحقق اللامركزي.

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

لذلك لا تستطيع العقود الذكية طلب معلومات خارجية متغيرة مباشرةً من مواقع عادية أو قواعد بيانات خاصة أثناء تنفيذ EVM.

عادةً ما تُدخل البيانات الخارجية عبر Oracle أو معاملة أخرى على السلسلة.

عندها يمكن لكل عقدة معالجة القيمة المقدمة نفسها وفق قواعد العقد ذاتها.

EVM والإجماع

تنفذ EVM المعاملات، بينما يساعد نظام الإجماع في Ethereum المدققين على الاتفاق على الترتيب المقبول للكتل ونهائيتها.

يحدد التنفيذ ما إذا كانت المعاملات وتغييرات الحالة الناتجة عنها تتبع قواعد Ethereum.

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

بعد انتقال Ethereum إلى إثبات الحصة، تستخدم العقدة الكاملة عميل تنفيذ وعميل إجماع.

يشغّل عميل التنفيذ المعاملات ويحافظ على حالة التنفيذ في Ethereum.

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

تشرح الوثائق الرسمية لعقد Ethereum وعملائها كيفية عمل مكونات العملاء هذه معًا.

لا تستطيع EVM أن تقرر بمفردها أي كتلة مقترحة ستصبح الكتلة المعتمدة.

ولا يستطيع الإجماع بمفرده حساب نتائج العقود الذكية المعقدة من دون طبقة التنفيذ.

عملاء تنفيذ EVM

عميل التنفيذ برنامج يطبق قواعد التنفيذ في Ethereum.

يتحقق من المعاملات، ويعالج الشيفرة الثنائية لـ EVM، ويحافظ على حالة البلوكشين، ويتواصل مع الأقران، ويوفر واجهات للتطبيقات.

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

يعزز تنوع العملاء مرونة الشبكة، إذ لا تعتمد Ethereum اعتمادًا كاملًا على قاعدة شيفرة واحدة.

لكن يجب على كل عميل تنفيذ متوافق أن يحسب النتيجة الصالحة نفسها.

توفر مواصفات طبقة التنفيذ في Ethereum مرجعًا تنفيذيًا مقروءًا لسلوك التنفيذ وترقيات الشبكة في Ethereum.

تساعد اختبارات مواصفات التنفيذ المطورين على التأكد من أن العملاء المختلفين يتعاملون مع الظروف غير المعتادة باتساق.

EVM وJSON-RPC

تتواصل المحافظ والتطبيقات اللامركزية عادةً مع عملاء التنفيذ عبر أساليب JSON-RPC.

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

تصف مواصفات واجهة التنفيذ في Ethereum JSON-RPC بأنها الواجهة المعتمدة بين المستخدمين والبنية التحتية وعملاء التنفيذ.

يمكن لاستدعاء RPC للقراءة فقط مطالبة عميل التنفيذ بمحاكاة سلوك EVM من دون إضافة معاملة إلى البلوكشين.

أما أسلوب إرسال معاملة موقعة، فيبث معاملة قد تُدرج لاحقًا في كتلة.

تسهّل مزودات RPC استخدام التطبيقات، لكن المستخدمين الذين يعتمدون على مزود بعيد يثقون به لتقديم بيانات دقيقة ومتاحة.

يمكن أن يوفر تشغيل عقدة شخصية وصولًا أكثر مباشرة واستقلالية إلى معلومات التنفيذ في Ethereum.

السلاسل المتوافقة مع EVM والمكافئة لها

تدعم السلسلة المتوافقة مع EVM العقود الذكية والأدوات المصممة لآلة Ethereum الافتراضية.

أما السلسلة المكافئة لـ EVM، فتهدف عمومًا إلى محاكاة سلوك التنفيذ في Ethereum على نحو أكثر تطابقًا.

يمكن لكلا النموذجين إتاحة استخدام Solidity وعناوين Ethereum والمحافظ المألوفة ومعايير التوكنات الشائعة للمطورين.

لكن قد تختلف شبكة EVM أخرى في مدققيها ورسومها وقواعد نهائيتها وأوقات الكتل والجسور وعقود النظام وافتراضاتها الأمنية.

قد يظل العقد الذي يعمل على Ethereum بحاجة إلى اختبارات قبل نشره على شبكة EVM أخرى.

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

تحذر وثائق مترجم Solidity من أن التجميع لإصدار EVM غير صحيح قد يؤدي إلى سلوك خاطئ أو فاشل.

تحسّن التوافقية مع EVM قابلية النقل، لكنها لا تجعل السلاسل المنفصلة متطابقة.

ترقيات EVM

يمكن أن تتغير EVM عبر ترقيات بروتوكول Ethereum.

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

غالبًا ما تُوثق تغييرات البروتوكول المقترحة عبر مقترحات تحسين Ethereum.

بعد المراجعة والاختبار والتنسيق واعتماد المجتمع، يمكن إدراج تغييرات مختارة في ترقية للشبكة.

يجب على عملاء التنفيذ تحديث برامجهم لاتباع القواعد الجديدة عند نقطة التفعيل.

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

ينبغي للعقود تجنب الاعتماد على سلوك غير موثق لـ EVM قد لا يظل ثابتًا عبر الترقيات.

مخاطر أمان EVM

تنفذ EVM الشيفرة الثنائية الصالحة باتساق، لكنها لا تضمن أن تكون الشيفرة آمنة أو منصفة.

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

قد تنفذ EVM هذه التعليمات الضارة على نحو صحيح لأن التعليمات نفسها صالحة.

تشمل مخاطر العقود الذكية الشائعة إعادة الدخول، وأخطاء التحكم بالوصول، والتلاعب بـ Oracle، والأخطاء الحسابية، وسوء استخدام التوقيعات، وتعارضات التخزين، والاستدعاءات الخارجية غير الآمنة.

وقد تؤثر أخطاء المترجم أيضًا في الشيفرة الثنائية المنشورة.

تساعد قائمة أخطاء مترجم Solidity المعروفة الرسمية المطورين على تحديد المشكلات الأمنية المرتبطة بإصدارات المترجم.

يمكن للتدقيق والاختبار والتحقق الرسمي ومراجعة الشيفرة وتقييد الصلاحيات وضوابط الترقية الحذرة أن تقلل المخاطر.

لا يستطيع أي تدقيق ضمان ألا يفشل عقد EVM أو يتعرض للاستغلال مطلقًا.

مخاطر EVM لمستخدمي الكريبتو

يتفاعل مستخدمو الكريبتو مع EVM كلما وافقوا على استخدام توكنات، أو وقّعوا معاملات، أو استخدموا عقدًا ذكيًا على Ethereum.

قد يجيز توقيع المحفظة أكثر من مجرد تحويل بسيط.

فقد يوافق على إنفاق توكنات، أو يستدعي عقدًا، أو ينشئ تفويضًا، أو يمنح نوعًا آخر من الصلاحيات.

ينبغي للمستخدمين قراءة مطالبات المعاملات والتحقق من عقد الوجهة قبل التوقيع.

يثبت نجاح تنفيذ EVM فقط أن المعاملة اتبعت قواعد الشيفرة والبروتوكول.

ولا يثبت أن المستخدم قصد النتيجة أو أن التطبيق جدير بالثقة.

يمكن للتطبيقات اللامركزية الخبيثة استخدام استدعاءات EVM صالحة لتحويل الأصول التي تمت الموافقة عليها.

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

مخاطر EVM لمتداولي الكريبتو

قد يواجه متداولو الكريبتو مخاطر مرتبطة بـ EVM عند استخدام بروتوكولات التداول اللامركزي أو الإقراض أو Staking أو الجسور أو التصفية.

قد تفشل صفقة لأن السعر تغير قبل أن يصل تنفيذ EVM إلى المعاملة.

قد تكون نتيجة المبادلة أسوأ عندما يسمح المستخدم بنطاق واسع للانزلاق السعري.

قد يعاد ترتيب معاملة مقارنة بمعاملات أخرى في الكتلة نفسها.

قد يؤثر هذا الترتيب في أسعار المجمعات ونتائج التصفية وتوفر التوكنات.

وقد تجعل رسوم الغاز المرتفعة إغلاق مركز على السلسلة أو تعديله مكلفًا أثناء ضغوط السوق.

قد يمتلك المتداول ضمانًا كافيًا من التوكنات، لكنه لا يملك ما يكفي من ETH، الأصل الأصلي للشبكة، لدفع تكلفة التنفيذ.

لذلك يُعد الاحتفاظ برصيد للغاز ومراجعة إعدادات المعاملات جزءًا من إدارة مخاطر التداول على السلسلة.

EVM والقيمة القصوى القابلة للاستخراج

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

تعالج EVM المعاملات وفق التسلسل الذي تحدده الكتلة.

إذا تفاعلت معاملتان مع مجمع السيولة نفسه، يمكن للمعاملة الأولى تغيير النتيجة التي تحصل عليها الثانية.

قد تستفيد أنظمة البحث وبناء الكتل من هذه الخاصية في المراجحة أو التصفية أو استراتيجيات أخرى.

تحسن بعض الاستراتيجيات مواءمة الأسعار، بينما قد تؤدي أخرى إلى تنفيذ أسوأ للمستخدمين.

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

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

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

EVM ومعايير التوكنات

تتيح EVM للمطورين تطبيق واجهات توكنات مشتركة عبر العقود الذكية.

يحدد ERC-20 واجهة مشتركة للتوكنات القابلة للاستبدال.

يدعم ERC-721 وERC-1155 هياكل شائعة للأصول الفريدة ومتعددة التوكنات.

تتيح المعايير المشتركة للمحافظ وواجهات التداول ومستكشفات البلوكشين والتطبيقات اللامركزية التفاعل مع توكنات عديدة عبر دوال مألوفة.

توضح الوثائق الرسمية لمعايير التوكنات في Ethereum كيف تحسن الواجهات المشتركة قابلية التشغيل البيني.

يحدد معيار التوكنات الدوال والأحداث المتوقعة، لكنه لا يضمن أن يكون كل عقد توكن آمنًا أو خاضعًا لإدارة نزيهة.

فقد تتضمن عقود التوكنات قواعد تحويل مخصصة أو رسومًا أو قوائم حظر أو صلاحيات سك أو صلاحيات ترقية.

EVM وشبكات Layer 2

توفر العديد من شبكات Ethereum Layer 2 بيئة تنفيذ متوافقة مع EVM أو مكافئة لها.

تعالج هذه الشبكات المعاملات خارج بيئة التنفيذ الرئيسية في Ethereum، وتستخدم Ethereum في جزء من التسوية أو إتاحة البيانات أو نموذج الأمان.

يمكن أن يقلل ذلك تكلفة المعاملات ويزيد معدل المعالجة.

توضح النظرة العامة الرسمية على Ethereum Layer 2 كيف تعالج حلول Rollup الأنشطة بعيدًا عن Ethereum Layer 1 مع استخدام Ethereum كأساس للتسوية.

قد تشغّل EVM في Layer 2 شيفرة عقود ذكية مشابهة، مع استخدام عمليات مختلفة لإنتاج الكتل وحساب الرسوم والسحب والنهائية.

ينبغي للمستخدمين فهم دور المُسلسِل والجسر ونظام الإثبات وطريقة نشر البيانات وضوابط الترقية في شبكة Layer 2 المعنية.

لا يلغي التشابه مع EVM المخاطر الإضافية التي تضيفها بنية Layer 2 التحتية.

فوائد EVM

توفر EVM بيئة موحدة لتطبيقات الكريبتو القابلة للبرمجة.

وتتيح للعقد المستقلة التحقق من نتائج العقود الذكية نفسها.

كما تدعم النشر المفتوح، إذ لا يحتاج المطورون عمومًا إلى إذن من مشغل مركزي لنشر عقد.

وتتيح قابلية التركيب لأن يتفاعل عقد ذكي مع عقد آخر.

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

كما توفر لشبكات البلوكشين الأخرى نموذج تنفيذ مشتركًا قد يقلل تكلفة انتقال المطورين.

وقد تجعل وفرة أدوات EVM ووثائقها ومعارف اختبارها وأبحاثها الأمنية تطوير التطبيقات أكثر سهولة.

قيود EVM

تكون الحسابات على EVM أعلى تكلفة من الحسابات العادية على خادم مركزي، لأن على عقد كثيرة التحقق من النتيجة.

كما أن التخزين الدائم مكلف لأنه يضيف إلى حالة البلوكشين التي تحتفظ بها عملاء التنفيذ.

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

تعالج EVM انتقالات الحالة المرتبة، ما قد يحد من معدل المعالجة عندما تصل معاملات كثيرة إلى الحالة نفسها.

لا يمكن تغيير العقود الذكية بسهولة بعد نشرها ما لم يُصمم نظام ترقية مسبقًا.

قد توفر قابلية الترقية مرونة، لكنها تضيف أيضًا مخاطر مرتبطة بالمسؤولين وتخطيط التخزين.

كذلك لا تستطيع EVM تحديد صحة المعلومات الخارجية من دون الاعتماد على بيانات مقدمة عبر Oracle أو عملية موثوقة أخرى.

مثال على مبادلة توكن عبر EVM

لنفترض أن مستخدمًا يريد مبادلة توكن ERC-20 بآخر عبر مجمع سيولة لامركزي.

تنشئ المحفظة بيانات معاملة تستدعي المجمع أو عقد توجيه المبادلات.

يوقّع المستخدم المعاملة ويرسلها إلى شبكة Ethereum.

بعد إدراج المعاملة في كتلة، تتحقق EVM من سماح المستخدم بإنفاق التوكنات وتستدعي العقود المطلوبة.

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

إذا استُوفيت المتطلبات، تحدّث EVM أرصدة التوكنات وبيانات مجمع السيولة.

كما تنشئ سجلات أحداث يمكن للتطبيقات الخارجية قراءتها.

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

وعمومًا يظل المستخدم مسؤولًا عن دفع الغاز المستهلك قبل التراجع.

يوضح هذا المثال كيف يربط تنفيذ EVM بين توقيعات المحافظ، وموافقات التوكنات، والعقود الذكية، والغاز، وتغييرات الحالة، وإيصالات المعاملات.

كيفية مراجعة معاملة EVM

أولًا، تأكد من الشبكة التي ستُنفذ عليها المعاملة.

ثانيًا، تحقق من عنوان الوجهة أو العقد الذكي.

ثالثًا، راجع الأصل والمبلغ المراد تحويله.

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

خامسًا، راجع تقدير الغاز وإعدادات الحد الأقصى للرسوم.

سادسًا، تحقق من المخرجات المتوقعة والحد الأدنى للمبلغ المستلَم والمهلة المحددة للتداول اللامركزي.

سابعًا، استخدم مستكشف بلوكشين موثوقًا أو أداة محاكاة لمراجعة المعاملة عند الاقتضاء.

ثامنًا، لا توقّع إذا لم تتمكن المحفظة من توضيح الإجراء أو كان مصدر المعاملة مجهولًا.

تاسعًا، احتفظ بكمية كافية من ETH للمعاملات المستقبلية، بما فيها الخروج الطارئ من مراكز على السلسلة.

عاشرًا، تذكر أن عكس معاملة EVM مؤكدة يكون صعبًا عمومًا أو مستحيلًا.

مفاهيم خاطئة شائعة عن EVM

من المفاهيم الخاطئة الشائعة أن EVM حاسوب مادي تملكه مؤسسة واحدة.

لكنها في الواقع نموذج تنفيذ مشترك تطبقه عملاء مستقلون كثيرون.

ومن المفاهيم الخاطئة أيضًا أن EVM تخزن كل العملات المشفرة داخل العقود الذكية.

تعالج EVM الحالة، بينما تُمثل الملكية عبر سجلات حسابات وعقود البلوكشين.

ومن المفاهيم الخاطئة الثالثة اعتبار EVM وEthereum الشيء نفسه.

EVM مكون مهم واحد ضمن بروتوكول Ethereum الأوسع.

ومن المفاهيم الخاطئة الرابعة أن تنفيذ EVM الصالح يضمن أمان المعاملة.

يمكن لـ EVM تنفيذ منطق عقد خبيث أو ضار اقتصاديًا على نحو صحيح.

ومن المفاهيم الخاطئة الخامسة أن كل شبكة EVM تتمتع بأمان Ethereum نفسه.

قد تختلف الشبكات الأخرى القائمة على EVM في مدققيها وجسورها وأنظمة الحوكمة وافتراضات الثقة فيها.

ومن المفاهيم الخاطئة السادسة أن المعاملة الفاشلة لا تكلف شيئًا.

عادةً ما يستهلك تنفيذ EVM الفاشل غازًا مقابل العمل المنجز بالفعل.

الأسئلة الشائعة

إلى ماذا يشير الاختصار EVM؟

يشير EVM إلى Ethereum Virtual Machine، أي آلة Ethereum الافتراضية.

ما هي EVM ببساطة؟

EVM هي بيئة حوسبة افتراضية تشغّل العقود الذكية في Ethereum وتحسب نتائج المعاملات على السلسلة.

هل EVM حاسوب حقيقي؟

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

هل EVM هي Ethereum نفسها؟

لا، EVM هي بيئة تنفيذ العقود الذكية في Ethereum، بينما تشمل Ethereum أيضًا الإجماع والشبكات والمدققين والكتل ومكونات بروتوكول أخرى.

ما لغات البرمجة المتوافقة مع EVM؟

تُستخدم Solidity وVyper على نطاق واسع لكتابة العقود الذكية، وتُترجم الشيفرة المكتوبة بهما إلى شيفرة EVM الثنائية.

ما هي شيفرة EVM الثنائية؟

شيفرة EVM الثنائية هي تسلسل تعليمات منخفض المستوى قابل للقراءة آليًا، تنفذه آلة Ethereum الافتراضية.

ما هي الرموز التشغيلية لـ EVM؟

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

لماذا تستخدم EVM الغاز؟

يقيس الغاز العمل الحسابي، ويحدد تكلفة موارد التنفيذ المحدودة، ويمنع البرامج من استهلاك قدرة معالجة غير محدودة.

ماذا يحدث عندما ينفد الغاز في معاملة EVM؟

تتراجع تغييرات الحالة المقصودة، لكن المرسل يدفع عمومًا مقابل الغاز المستهلك قبل توقف التنفيذ.

هل تستطيع EVM تنفيذ عقود خبيثة؟

نعم، تنفذ EVM الشيفرة الثنائية الصالحة تقنيًا حتى إذا احتوى العقد على منطق ضار أو مخادع أو غير آمن.

هل جميع سلاسل EVM متصلة بعضها ببعض؟

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

هل يعمل عنوان المحفظة نفسه على كل سلاسل EVM؟

يمكن للمفتاح الخاص نفسه عادةً إنشاء العنوان نفسه، لكن الأصول والأنشطة على ذلك العنوان تظل منفصلة على كل سلسلة.

هل يمكن عكس معاملات EVM؟

لا يمكن عمومًا عكس معاملة EVM مؤكدة، إلا إذا تضمن العقد المستلِم دالة صالحة يمكنها إنشاء معاملة تصحيحية جديدة.

لماذا قد تفشل معاملة EVM بعد نجاح محاكاتها في المحفظة؟

قد تتغير حالة البلوكشين أو ظروف الغاز أو الأسعار أو السيولة أو بيانات العقد قبل تنفيذ المعاملة فعليًا.

ما الفرق بين EVM وعميل التنفيذ؟

EVM هي الآلة الافتراضية ومجموعة القواعد الخاصة بحساب العقود الذكية، بينما عميل التنفيذ برنامج يطبق هذه القواعد ويدير بيانات التنفيذ في Ethereum.

هل تستخدم شبكات Layer 2 آلة EVM؟

تستخدم شبكات Layer 2 عديدة بيئات متوافقة مع EVM أو مكافئة لها لإعادة استخدام العقود الذكية والأدوات الخاصة بـ Ethereum.

الخاتمة

تُعد EVM، أو آلة Ethereum الافتراضية، بيئة التنفيذ القابلة للبرمجة في صميم نظام العقود الذكية في Ethereum.

تعالج تعليمات المعاملات، وتنفذ الشيفرة الثنائية، وتحسب استهلاك الغاز، وتحدّث حالة البلوكشين، وتنتج نتائج المعاملات.

تتيح EVM لـ Ethereum دعم التوكنات والتمويل اللامركزي وNFTs وأنظمة الحوكمة وألعاب البلوكشين والعديد من تطبيقات الكريبتو الأخرى.

وتسمح قواعدها الحتمية لعملاء التنفيذ المستقلين بالتحقق من النتيجة نفسها من دون الوثوق بحاسوب مركزي واحد.

تُكتب العقود الذكية بلغات مقروءة للبشر، ثم تُترجم إلى شيفرة EVM ثنائية مكونة من رموز تشغيلية منخفضة المستوى.

أثناء التنفيذ، تستخدم EVM المكدس والذاكرة وCalldata والتخزين الدائم واستدعاءات الرسائل والسجلات ومكونات أخرى لمعالجة منطق العقود.

يحد الغاز من العمل الحسابي ويُلزم المستخدمين بدفع تكلفة موارد الشبكة التي تستهلكها معاملاتهم.

تعمل EVM مع طبقة الإجماع في Ethereum، لكن التنفيذ والإجماع يؤديان وظيفتين مختلفتين.

يمكن للسلاسل المتوافقة مع EVM وشبكات Layer 2 إعادة استخدام تقنيات Ethereum، مع احتمال اختلاف أمانها ورسومها ونهائيتها وبنيتها التحتية.

يساعد فهم EVM مستخدمي الكريبتو على تقييم رسوم الغاز، وموافقات العقود الذكية، والمعاملات الفاشلة، ومعايير التوكنات، والتطبيقات اللامركزية، ومخاطر التداول على السلسلة.

تنبع قوة EVM من تنفيذها قواعد قابلة للبرمجة وشفافة، لكنها لا تحدد ما إذا كانت هذه القواعد آمنة أو مفيدة ماليًا.

لذلك يجب على المستخدمين والمطورين التحقق من العقود، وإدارة الصلاحيات، واختبار الشيفرات، ومراجعة اختلافات الشبكات، والتعامل مع كل معاملة موقعة باعتبارها تفويضًا مهمًا.
BTC ETFs See $679M in Outflows
BTC ETFs See $679M in OutflowsBTC ETFs See $679M in Outflows
Citi sees BTC at $113K. What do institutions see?