بازار ارزهای دیجیتال مملو از اصطلاحات مختلف است که همه افرادی که به عنوان سرمایه گذار و تریدر در این بازار فعالیت میکنند باید در رابطه با آنها اطلاعات کافی داشته باشند. EVM یکی از این اصطلاحات است که حتما با آن برخورد کردهاید. این واژه مخفف عبارت ethereum virtual machine به معنای ماشین مجازی اتریوم است.
در واقع اتریوم یک محیط مجازی را به وجود آورده که اجازه تعامل به قراردادهای هوشمند را میدهد. این محیط همان ماشین مجازی است که نام بردیم. این ویژگی این امکان را برای قراردادهای هوشمند ایجاد میکند تا بدون نیاز به پیچیده شدن بیش از حد بتوانند عملکرد بهتر و بیشتری داشته باشند. اگر شما هم میخواهید با این مفهوم بیشتر آشنا شوید تا انتهای مقاله با ما همراه باشید.
فهرست مطالب
تعریف کاملی از ماشین مجازی اتریوم یا evm
ethereum virtual machine را نوعی ابر کامپیوتر جهانی توصیف میکنند که عملکردی شبیه به یک کامپیوتر غیرمتمرکز دارد و پروژههای بسیاری را اجرا میکند. به عبارت دیگر EVM یک دستگاه مجازی است که همانند یک سیستم عامل برای اتریوم عمل میکند با این تفاوت که ویندوز در یک دستگاه اجرا میشود اما ماشین مجازی اتریوم قابلیت اجرا به طور همزمان روی هزاران دستگاه را دارد.
به واسطه این ماشین مجازی میتوان بدون در نظر گرفتن موقعیت جغرافیایی، منابع مشارکتکنندگان درون شبکه را مورد استفاده قرار داد. در واقع میتوان گفت قدرت محاسباتی خود را در دسترس توسعه دهندگان قرار داده و در مقابل آنها نیز از این منابع در جهت ساخت قراردادهای هوشمند و برنامههای غیر متمرکز یا DApp استفاده میکنند.
ماشین مجازی اجرا شده روی بلاک چین به چندین Smart Contract اجازه تعامل با یکدیگر را میدهد. در حقیقت قرارداد هوشمند را میتوان توافقنامهای دانست که به واسطه کدها نوشته میشود. برای اینکه اجرای Smart Contract روی بلاک چینهای مختلف انجام گیرد ماشینهای مجازی باید به اجرای قراردادهایی با یک زبان برنامه نویسی واحد بپردازند.
به طور کلی قراردادها با استفاده از زبانهای برنامه نویسی خاصی همچون پایتون و Solidity نوشته میشوند و در ادامه کدهای ماشین مجازی اتریوم را به وجود میآورند. این evm به عنوان بخش اجرا کننده اسمارت کانترکتها تعریف شده و به عنوان هسته مرکزی بلاک چین اتریوم ادامه حیات این رمزارز را ممکن میسازد.
هدف ماشین مجازی اتریوم چیست؟
اتریوم هم مانند هر شبکه دیگری که بر بلاک چین مبتنی است دارای یک ارز بومی (ETH) میباشد و برای پیگیری تراکنشها یک دفتر کل توزیع شده را مورد استفاده قرار میدهد. همچنین قوانین خاصی را برای نوع و نحوه تعامل کاربران با شبکه در نظر گرفته است.
از سوی دیگر وجود قابلیتهای مربوط به قرارداد هوشمند لایه عملکردی دیگری نیز به آن اضافه کرد. به طور کلی میتوان گفت اتریوم بیوقفه به اجرا و پیگیری تراکنشها با استفاده از دفتر کل، اعمال قوانین و همینطور اجرای Smart contract مشغول است.
آشنایی با تورینگ کامل (Turing-completeness)
تورینگ کامل در واقع ماشینی است که میتواند هر نوع مشکل محاسباتی را با در اختیار داشتن زمان و حافظه کافی به همراه دستورالعملهای لازم حل کند، حتی اگر آن محاسبات پیچیدگیهای بسیار زیادی داشته باشند. در صورت عدم توانایی در اجرای برنامه و محاسبات توسط ماشین به آن تورینگ ناقص Turing-incompleteness لقب داده میشود.
ماشین مجازی اتریوم نیز نوعی Turing-completeness است و توانایی اجرای قراردادهای هوشمند و انجام وظایف خود را با استفاده از منبع کدهای خود دارد.
نحوه عملکرد ماشین مجازی اتریوم
Evm امکان استفاده از قراردادهای هوشمند را برای تفسیر برنامههایی که در سالیدیتی درحال اجرا میباشند فراهم کرده است. هر گره اتریوم روی ماشین مجازی آن اجرا شده و اجماع آنها در سراسر بلاک چین حفظ میشود. حسابهای اتریوم در دو نوع حسابهای تحت مالکیت خارجی (EOA) و حسابهای قراردادی ارائه میشوند که هر دو به صورت یکسان تحت نظر EVM قرار دارند.
وظایف مهمی که ماشینهای مجازی اتریوم جهت توسعه Smart contract و DApp برعهده دارند شامل اعتبارسنجی معاملات، امضاها و نشانیهای آنها، محاسبه هزینههای معامله و تحقق معاملات مختلف است.
کاربرد ماشین مجازی اتریوم
پروتکل اتریوم برای اینکه بتواند سیستم را به اجماع برساند به evm نیاز دارد. به علاوه برای ورود به شبکه در صورتی که نخواهید به آن آسیبی وارد نمایید میتوانید کدهای مورد نظرتان را داخل اکوسیستم مخصوصی از ماشین مجازی اتریوم وارد کنید. با این کار میتوانید از درست نوشته شدن برنامه اطمینان حاصل فرمایید. از دیگر کاربردهای این ماشین مجازی کنترل و مدیریت قراردادهای هوشمندSmart contract را میتوان نام برد.
ویژگیهای ماشین مجازی اتریوم
این ماشین مجازی ویژگیهای خاصی دارد که در ادامه به آن میپردازیم.
- عملکرد قطعی: در ازای دادن ورودی یکسان به آن بدون در نظر گرفتن تعداد دفعات اجرا شدن، خروجی یکسانی دریافت میکنیم.
- ایزوله بودن: اتریوم از این ویژگی برای پوشش دهی باگهای قرارداد هوشمند و جلوگیری از هک شدن استفاده میکند.
- پایان پذیر بودن: از آنجا که EVM یک تورینگ کامل است، قراردادهای هوشمند در بستر آن هرگونه مشکلی را حداقل به صورت فرضی حل میکنند.
- ارتباط گس (Gas)با روند اجرای ماشین اتریوم: تمام تراکنشها برای انجام شدن نیاز به کارمزد دارند و تمام هزینههای مورد نیاز در این بستر به عنوان Gas شناخته میشوند. در واقع میتوان گفت که گس مانند سوخت برای ماشین مجازی اتریوم میباشد.
مزایای ماشین مجازی اتریوم
این ماشین امکان این قضیه را فراهم میکند که تمام افراد بتوانند برنامه غیرمتمرکز مدنظر خود را بسازند. این تکنولوژی تنها محدود به افراد خاصی نیست. مزایای بسیاری را میتوان برای ماشین مجازی اتریوم عنوان نمود. به عنوان نمونهای از کاربردهای این contract میتوان به توکنهای غیرقابل تعویض NFT اشاره کرد. با استفاده از این ماشین امکان ورود به دنیای توکنهای NFT فراهم میشود و با ایجاد و به فروش رساندن آثار هنری در آن میتوان درآمد خوبی کسب کرد. علاوه بر این EMV کمک میکند تا اطلاعات وضعیت حسابهای اتریوم را در زمان خرید و فروش بتوان کنترل کرد.
شبکههای سازگار با ماشین مجازی اتریوم
شبکههایی که آدرسشان با 0x شروع میشود با ماشین مجازی اتریوم سازگاری دارند. پروژههای بسیاری بر روی این ماشین مجازی به صورت یک لایه شروع به فعالیت کردهاند. کدهای این بلاک چینهای فورکی از کدهای اتریوم میباشد که از جمله آن میتوان به بایننس اسمارت چین اشاره کرد.
از دیگر شبکههای سازگار با این ماشین که به صورت یک لایه فعالیت دارند میتوان تلوس (Telos) را نام برد. با این تفاوت که تلوس برخلاف بایننس اسمارت چین، فورک اتریوم است. کرونوس، فانتوم، آوالانچ، پالیگان، بوبا نتورک، توموچین، هارمونی و مون بیم برخی از مشهورترین شبکههایی هستند که با EVM سازگاری دارند. تمامی این شبکهها نسبت به اتریوم سرعت بالاتر و کارمزد پایینتری دارند.
آینده ماشین مجازی اتریوم
از آنجا که ماشین مجازی اتریوم مسیری طولانی در پیش دارد با گذشت زمان پیشرفت چشمگیری خواهد داشت و از تمام جهات از جمله پیچیدگی، سرعت و توانایی قویتر میشود. این تکنولوژی تا امروز تغییرات بسیار مهمی را در بلاک چین به وجود آورده و توانسته است فناوری خود را جهت خواندن و اجرای کدها بهبود دهد.
در سال 2022 عملیات ادغام این شبکه انجام گردید و هدف بعدی اتریوم را میتوان تبدیل این ماشین به Ethereum WebAssembly دانست. عملکرد Ewasm به صورتی است که عملکرد مستقلی نسبت به پلتفرم دارد. البته هنوز نمیتوان گفت که آیا جای EVM را Ewasm میگیرد یا خیر و گذر زمان تعیین کننده این مسئله است.