اگر اخیرا فعالیت خود در فضای بلاک چین را آغاز کرده باشید، بدون شک عبارت ماشین مجازی اتریوم (Ethereum Virtual Machine) یا به اختصار EVM را شنیدهاید. اتریوم یک محیط مجازی ایجاد کرده است تا به قراردادهای هوشمند اجازه دهد بایکدیگر تعامل داشته باشند؛ این محیط ماشین مجازی اتریوم نامیده میشود.
در حقیقت خالقان اتریوم از همان اول که پروتکل خود را منتشر کردند، قصد داشتند که به یک کامپیوتر جهانی یا یک اینترنت کامپیوتر تبدیل شوند. بخشی از پاسخ به سوالی که در ذهن ما درباره چگونه بودن این هدف نقش میبندد، در بطن مفهوم EVM یافت میشود.
ماشین مجازی اتریوم را میتوان به یک موج در اقیانوس کریپتو تشبیه کرد که موجودیتی واحد دارد و توسط هزاران رایانه متصل اجراکننده یک کلاینت اتریوم، نگهداری میشوند. در این مطلب از وبلاگ کیف پول من نگاهی دقیقتری به ماشین مجازی اتریوم همراه با ویژگیها، نحوه عملکرد، کاربردها و آینده آن میاندازیم؛ بنابراین در ادامه همراه ما باشید.
موضوع 📜 | بررسی مفهوم ماشین مجازی اتریوم |
مدت زمان مطالعه ⌛ | 9 دقیقه |
منتشر شده توسط 🙍♂️ | صرافی ارز دیجیتال کیف پول من |
تاریخ انتشار 📅 | 1401/9/13 | 12/4/2022 |
ماشین مجازی اتریوم (EVM) به زبانی ساده
ماشین مجازی اتریوم به عنوان یک ابر کامپیوتر جهانی شناخته میشود که مانند یک کامپیوتر غیرمتمرکز عمل کرده و چندین هزار پروژه قابل اجرا دارد. در حقیقت EVM یک فضای مجازی بسیار قدرتمند است که در گرههای کامل اتریوم تعبیه شده و وظیفه دارد تا کد قراردادهای هوشمند را اجرا کند. ماشین مجازی اتریوم به عنوان یک کامپیوتر مجازی بر روی بلاک چین در نظر گرفته میشود تا ایدههای افراد تبدیل به کد کرده و آن را در شبکه جهانی اتریوم اجرا کند.
قراردادها بهطور معمول با زبانهای برنامه نویسی خاصی مانند پایتون و سالیدیتی (Solidity) نوشته شده و سپس به کدهای ماشین مجازی اتریوم تبدیل میگردد. ماشین مجازی اتریوم یکی از موارد اصلی در ساختار شبکه اتریوم است و به عنوان بخش پیاده سازی و اجرا کننده اسمارت کانترکتها شناخته میشود. ماشین مجازی اتریوم هسته مرکزی بلاک چین اتریوم را شکل میدهد و باعث ادامه حیات اتریوم میشود.
آشنایی با تورینگ کامل (Turing-completeness)
ماشین مجازی اتریوم یک تورینگ کامل است. تورینک کامل به ماشینی اشاره میکند که با در اختیار داشتن زمان و حافظه کافی همراه با دستورالعملهای لازم، میتواند هر مشکل محاسباتی را صرف نظر از پیچیده بودن آن، حل کند. به عنوان مثال، ماشین تورینگ کامل میتواند 10 عدد را برداشته و آنها را با یکدیگر جمع کند.
اگر به هر دلیلی این ماشین نتواند برنامه را اجرا نماید و محاسبات را انجام دهد به آن ماشین تورینگ ناقص (Turing Incomplete) میگویند. زبانهای برنامه نویسی نوعی سیستم تورینگ هستند و از تورینگهای کامل میتوان به پایتون، جاوا، جاوا اسکریپت، سالدیتی و غیره اشاره کرد. شبکه اتریوم یک سیستم کامل تورینگ است و میتواند قراردادهای هوشمند را اجرا کند. این شبکه میتواند از منبع کدهای خود استفاده کرده و هرگونه وظیفه خود را انجام دهد.
نحوه عملکرد ماشین مجازی اتریوم
اتریوم مانند سایر بلاک چینها امکان تعامل بسیاری از گرههایی که برنامهها بر روی آنها اجرا میشوند را میدهد. EVM برای تفسیر برنامههای در حال اجرای خود در سالیدیتی، امکان استفاده از قراردادهای هوشمند را فراهم میکند. ماشین مجازی اتریوم تعدادی قابلیت اضافی در بلاک چین به کار میگیرد تا اطمینان حاصل شود که کاربران با مشکلات محدودی در دفتر کل توزیع شده میشوند.
مطلب پیشنهادی : رهگیری تراکنش در بلاک چین اتریوم
هر گره اتریوم بر روی ماشین مجازی اتریوم اجرا شده و اجماع در سراسر بلاک چین حفط میگردد. اتریوم دو نوع حساب دارد؛ حسابهای تحت مالکیت خارجی (EOA) و حساب قراردادی که هر دو بهصورت مساوی تحت نظر EVM رفتار مینمایند. اعتبارسنجی معاملات، امضاها و آدرسهای آنها، محاسبه هزینههای معامله و تحقق معاملات مختلف سه عملیات مهمی هستند که ماشین مجازی اتریوم برای توسعه قراردادهای هوشمند و dApps تضمین میکند.
کاربرد ماشین مجازی اتریوم
پروتکل اتریوم برای ایجاد اجماع سیستم به محیطی شبیه به محیط EVM نیاز دارد. همچنین اگر فردی قصد داشته باشد بدون آسیب رساندن به شبکه موجود وارد شود، میتواند کدهای مدنظر را در اکوسیستم خاصی از ماشین مجازی وارد و تست کند تا به درست نوشته شدن برنامه مطئمن شود. کنترل و مدیریت قراردادهای هوشمند یکی دیگر از کاربردهای EVM است.
ویژگیهای ماشین مجازی اتریوم
ماشین مجازی اتریوم از ویژگیهای زیر برخوردار است:
عملکرد قطعی ماشین مجازی اتریوم
اگر یک برنامه هربار که ورودی یکسان به آن داده میشود، خروجی یکسانی نیز داشته باشد، میتوان گفت برنامه قطعی است. اهمیت ندارد که این کد چندین بار اجرا شود؛ بلکه همواره نتایج یکسانی از اجرای این کد به دست میآید. این امر بسیار مهم است, چراکه امکان دارد برنامههای غیرمتمرکز در بستر اتریوم، تراکنشهای امور مالی را مدیریت میکنند که شامل مقادیر زیادی پول باشند.
ایزوله بودن ماشین مجازی اتریوم
ایزوله بودن به دلیل اینکه سیستمها بتوانند بحرانهای هک و باگهای موجود در قرارداد هوشمند را پوشش دهی کرده و جلوی اتفاقات ناگوار را بگیرند، اهمیت دارد. به دلیل اینکه طراحی قرارداد بر بستر محفظههای داکر از قابلیت قطعی بودن برخوردار نیست، اتریوم از ماشینهای مجازی برای فراهم سازی این قابلیت استفاده میکند.
پایان پذیر بودن ماشین مجازی اتریوم
EVM یک تورینگ کامل است و قراردادهای هوشمند در این بستر میتوانند هرگونه مشکلی را حداقل بهصورت فرضی حل کنند. البته هیچ راهی وجود ندارد تا اطمینان یابیم که عملیات مدنظر، در بازه زمانی معین به پایان میرسد یا نه؛ به همین دلیل باید مکانیزم نهایی سازی یا پایان دهندهای را برای ایجاد این محدودیتها مورد استفاده قرار دهیم.
ارتباط گس با روند اجرای ماشین اتریوم
هر اقدامی در بستر اتریوم، نشان دهنده یک تراکنش است. تراکنشها برای انجام شدن، به کارمزد نیاز دارند و در بستر اتریوم تمامی هزینههای مورد نیاز تحت عنوان گس (Gas) شناخته میشوند. زمانهایی که میزان فعالیت درون این شبکه بالا بوده و تراکنشهای زیادی در حال انجام باشند، میزان گس فی نیز افزایش پیدا میکند. جالب است بدانید بسیاری از افراد گس را به عنوان سوخت ماشین مجازی اتریوم میشناسند.
مزایای ماشین مجازی اتریوم
EVM به تمامی افراد اجازه میدهد تا برنامه غیرمتمرکز مدنظر خود را بسازند و این تکنولوژی به گروه خاصی از مردم یا افراد ثروتمند با روابط خاص محدود نمیشود. ماشین مجازی اتریوم مزایای زیادی دارد که میتوان به عنوان نمونهای از کاربردهای این کانترکتها، به توکنهای NFT اشاره کرد.
مطلب پیشنهادی : آموزش استخراج اتریوم
با کمک ماشین مجازی اتریوم میتوان وارد دنیای توکنهای غیرقابل تعویض (NFT) شده و با ایجاد آثار هنری، آنها را به فروش رساند. با استفاده از EVM میتوان اطلاعات وضعیت حسابهای اتریوم را در زمان فروش یا خرید اتریوم، بهصورت کنترل شده پیش برد.
معایب ماشین مجازی اتریوم
شبکه EVM بهطور کامل متمرکز نیست و اکثریت نودهای اتریوم بر روی سرورهای ابری متمرکز مانند آمازون و خدمات مبتی بر وب میزبانی میگردند. اگر صاحبان این خدمات به هر دلیلی به اتریوم علاقهای نشان ندهند، این نودها از کار میافتند و این امر منجر به آسیب دیدن و از بین رفتن شبکه میشود.
همچنین استفاده از این ماشین به دانش فنی نیاز دارد و افرادی که به زبان برنامه نویسی سالیدیتی آشنا نیستند، نمیتوانند از EVM بهره زیادی ببرند. هنگام ازدحام شبکه اتریوم، میزان گس فی تا میزان زیادی افزایش مییابد که این امر میتواند به عنوان نقطه ضعفی بزرگ برای کاربران این شبکه به حساب آید.
شبکههای سازگار با ماشین مجازی اتریوم
شبکههایی که در کیف پول متامسک اضافه میگردند و آدرس آنها با 0x آغاز میشود، با ماشین مجازی اتریوم سازگار هستند. پروژههای متعددی کاملا بر روی ماشین مجازی اتریوم راه اندازی شدهاند و بهصورت یک لایه فعالیت دارند. کدهای این بلاک چینهای فورکی از کدهای اتریوم است که از بهترین نمونههای آن میتوان به بایننس اسمارت چین اشاره کرد.
برخی دیگر از شبکههای سازگار با EVM بهصورت یک لایه فعالیت میکنند اما مانند تلوس (Telos) فورک اتریوم نیستند. شبکههای دو لایه نیز راهکارهایی برای افزایش مقیاس پذیری شبکه اتریوم نشان میدهند که میتوان به پالیگان اشاره کرد. برخی از این شبکهها با الگوریتم گواه اثبات سهام نیابتی (dpos) فعالیت میکنند و شبکههایی با الگوریتم اثبات سهام خود مختاری که به آن زنجیره باثبات هم میگویند، کار داشته و با ماشین مجازی اتریوم سازگار هستند.
بایننس اسمارت چین، کرونوس، فانتوم، آوالانچ، هکوچین، پالیگان، بوبا نتورک، آربیتروم وان، آپتیمیزم، آنتولوژی، توموچین، هارمونی و مون بیم برخی از معروفترین شبکههای سازگار با EVM صرف نظر از نوع الگوریتم اجماع و نحو کارکرد به حساب میآیند. تمامی شبکههای سازگار با ماشین مجازی اتریوم، کارمزد پایین و سرعت بیشتری در مقایسه با اتریوم دارند.
آینده ماشین مجازی اتریوم
ماشین مجازی اتریوم هنوز در ابتدای راه خود قرار دارد. با گذشت زمان پیچیدگی، سرعت و توانایی EVM افزایش پیدا میکند و مانند کامپیوترهایی که از ابتدای عصر PC سریعتر و قادر به انجام کارهای پیچیدهتری هستند، روزبهروز پیشرفتهتر میشوند. EVM توانسته تغییراتی انقلابی در بلاک چین ایجاد نماید و فناوری خود را برای خواندن و اجرای کدها بهبود ببخشد.
پس از عملیات ادغام این شبکه در سال 2022، هدف بعدی اتریوم تبدیل ماشین مجازی اتریوم به Ethereum WebAssembly است. Ewasm به گونهای طراحی شده که نسبت به پلتفرم بهصورت مستقل عمل میکند. البته این سوال که آیا Ewasm میتواند جایگزین ماشین مجازی اتریوم و به عنوان مورد اعتمادترین مکانیسم برای قراردادهای هوشمند به حساب بیاید هنوز بدون پاسخ است و با گذر زمان معلوم میشود. در این مطلب از وبلاگ کیف پول من به بررسی ماشین مجازی اتریوم پرداختیم. برای خرید و فروش اتریوم و بیش از 2000 ارز دیجیتال، میتوانید به کیف پول من مراجعه کنید.
برای دریافت فایل PDF این مقاله اینجا کلیک کنید